Java系列
文章平均质量分 86
Java系列
楚楚ccc
这个作者很懒,什么都没留下…
展开
-
rocketmq
参考资料:https://blog.csdn.net/m0_59849460/article/details/124115627。原创 2024-09-25 18:16:11 · 580 阅读 · 0 评论 -
netty
NioEventLoop本身是一个单线程的Executor,必然拥有一个execute(Runnable commond)的实现方法,而NioEventLoop的execute()实现方法是在其父类SingleThreadEventExecutor中,Netty为每个Channel分配了一个EventLoop,用户处理用户连接需求,对用户的请求的处理等所有事件.EventLoop本身只是一个线程驱动,在其生命周期内只会绑定一个线程,让该线程处理一个channel的所有IO事件。原创 2024-09-24 18:08:41 · 397 阅读 · 0 评论 -
zookeeper
然后获取lock下所有的子节点,客户端获取到所有的子节点后,发现如果自己创建的子节点序号最小,那么便认为客户端获取到了锁,使用完锁后,将节点删除。如果发现比自己小的子节点被删除,则客户端的watcher会收到通知,此时再次判断自己创建的子节点是否是序号最小的,如果是则获取锁,这些目录节点和普通的目录节点一样,可新建、删除、修改。简介:是一个开放源码的分布式协调服务,主要为了解决分布式架构下数据一致性问题,是集群的管理者,监视着集群中各个节点的状态,根据节点的反馈进行下一步合理操作。原创 2024-09-23 18:05:36 · 925 阅读 · 0 评论 -
zookeeper
定义:zookeeper是分布式协调服务框架,开源,为分布式系统提供一致性服务使用了zookeeper的开源项目:kafka:zookeeper为kafka提供broker和topic的注册以及多个partition的负载均衡功能Hbase:ZooKeeper 为 Hbase 提供确保整个集群只有一个 Master 以及保存和提供 regionserver 状态信息(是否在线)等功能Hadoop : ZooKeeper 为 Namenode 提供高可用支持。原创 2024-09-20 17:59:07 · 1350 阅读 · 0 评论 -
zookeeper
定义:分布式服务框架,是Apache Hadoop的子项目,主要用来解决到分布式应用中常遇到的一些数据管理问题,如果:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。简单来说就是文件系统+监听通知机制。文件系统:zookeeper是维护一个类似文件系统的数据结构,每个子目录都被称为znode(目录节点),和文件系统一样,可随意增加、删除znode,在一个znode下新建、删除znode,唯一不同在于znode是可以存储数据的。原创 2024-09-18 18:10:08 · 746 阅读 · 0 评论 -
kafka
kafka消费模式:主要有2种,分别是一对一的消费和一对多的消费。一对一消费:点对点通信,一个发送,一个接收。消息发送者将消息发送至队列中,通知消费者从队列中拉去数据进行消费,消费完毕后,队列中消息删除。1条消息只能被1个消费者消费一对多消费:也成为发布/订阅模式,利用topic存储消息,消息生产者将消息发布到topic中,多个消费者监听此topic,多个消费者从topic中消费信息。消费者消费数据之后,数据不会被删除。kafka会默认保留一段时间,然后再删除。原创 2024-09-13 18:06:54 · 1125 阅读 · 0 评论 -
ElasticSearch
4.1 Analysis和AnalyzerAnalysis:文本分析是将全文本转换为一系列单词的过程,也叫分词。Analysis是通过Analyzer来实现的。分词就是将文档Analyzer分成一个个的Term(关键词查询),每一个Term都指向包含这个Term的文档Analyzer组成:StandAnalyzer标准分词器(ES默认分词器),中文进行单字分词,英文根据单词分词。原创 2024-09-12 18:13:55 · 1406 阅读 · 0 评论 -
rabbitmq
消息服务概述:大多数应用中,可通过消息服务中间件来提升系统异步通信,扩展解耦能力两个重要概念:消息代理(message broker)和目的地(destination)。当消息发送者者发出消息后,将由消息代理接管,消息代理保证将消息传递至目的地两种形式的目的地:队列(queue):点对点的消息通信(point-to-point)主题(topic):发布(publish)/订阅(subscribe)的消息通信。原创 2024-09-11 11:58:04 · 1298 阅读 · 0 评论 -
spring security、shiro
spring security介绍定义:为基于spring 的企业应用系统提供声明式的安全访问控制解决方案的安全框架,实现了认证和授权,提供了基于账号和密码的认证,通过安全配置实现请求拦截、授权。但不仅仅是这些认证spring security默认提供认证界面,无需额外开发安全配置:spring security提供了用户名密码登录、退出、会话认证等功能,只需配置即可。自定义类继承WebSecurityConfigurerAdapter,使用@EnableWebSecurity注解修饰。原创 2024-09-09 11:45:29 · 1376 阅读 · 0 评论 -
Redis及其他缓存
NOSQL概述:(NOT ONLY SQL-不仅仅是SQL),泛指非关系型数据库,为解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用问题常见nosql:redis,hbase。和关系型数据的对比区别:数据之间没有关联关系,数据存储在内存中,操作数据相对较快。关系型数据库数据之间存在关联关系,数据存储在磁盘中,操作数据非常耗时。优点:成本低、查询速度快、支持多种数据格式(基本数据类型、集合、对象、图片、文档等格式)、扩展性相对关系型数据库较好。原创 2024-09-06 18:02:59 · 1385 阅读 · 0 评论 -
Spring Coud & Spring Clou Alibaba
单一应用架构-垂直应用框架-分布式服务架(RPC)构-面向服务(SAO)架构(代表是流动计算架构和微服务架构,最佳实现分别是dubbo和spring cloud.流动计算架构的优势在于增加一个调度中心基于访问压力实时管理集群容量,提高集群利用率;微服务架构除了具备流动计算架构的优势外,其中的微服务可以独立部署,独立发展)简介:阿里巴巴基于自身微服务实现而开源的一套微服务解决方案,是spring cloud生态的子项目,2018.10.31正式入驻spring cloud 官方孵化器主要功能:服务流量降级。原创 2024-09-02 18:08:15 · 1804 阅读 · 0 评论 -
SpringBoot
4.1 springboot日志配置日志框架市面上日志框架:JUL、JCL、Jboss-logging、logback、log4j、log4j2、slf4j日志门面:JCL、slf4j、Jboss-logging日志实现:log4j2、JUL、logback实现是选一个门面和一个实现。springboot用的是SLF4J和logbackSLF4J使用使用org.slf4j.LogFactory对象,调用日志抽象层方法。原创 2024-08-29 18:12:25 · 1314 阅读 · 0 评论 -
Spring-MVC
MVC思想MVC概念:模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范,将业务逻辑、数据、显示分离的方式来组织代码MVC作用:降低视图和业务逻辑之间的双向耦合MVC是架构模式概念细分:模型:数据模型,提供展示的数据;视图:显示数据模型;控制器:接受用户请求,委托给模型处理,并将模型响应的结果返回给视图,由视图进行展示。典型的MVC:servlet+jsp+javabean前端控制器(中心控制器)原创 2024-08-29 18:11:04 · 1403 阅读 · 0 评论 -
Spring
Spring概念:分层的Java SE/EE应用full stack轻量级框架,以IOC(控制反转)和AOP(面向切面)为内核,提供了展现层和持久层以及业务层事务管理等众多的企业应用技术,还可以整合其他第三方框架和类库。轻量级指的是Spting框架的非侵入性,即对象可不必依赖Spring的API类。Spring核心容器:spring-core,spring-beans,spring-context,spring-expression等spring-core:基本组成,包括IOC和DI等功能。原创 2024-08-29 18:09:49 · 1208 阅读 · 0 评论 -
Mybatis&JPA
mybatis是持久层框架,支持定制化sql、存储过程、高级映射,几乎避免了所有的JDBC代码和手动设置参数及获取结果集,使用XML或注解来配置映射。ORM(Object-Relation-Mapping)表示对象关系映射,在面向对象软件开发中,通过ORM可以将对象映射到关系数据库中。简而言之,ORM就是建立实体类和数据库表之间的关系,从而达到操作实体类就是操作数据库表的目的。使用ORM的原因:大大减少重复性的数据库访问层代码。原创 2024-08-29 18:07:42 · 1143 阅读 · 0 评论 -
JavaWeb
概述:js框架,本质上是js代码使用:三大版本。只有1.x兼容ie678,因此使用最广泛,普通项目足够使用。项目中创建js目录,下载jquery的js文件,copy到js目录下,在html文件的head标签中进行引入 <script src="js/jquery-xxx.js"></script>JQuery对象和js对象区别与转换:jquery对象操作更加方便,但是jquery和js对象不通用,需要两者相互转换jquery转js:jq对象[索引]或者jq对象.get(索引)原创 2024-08-28 18:23:12 · 678 阅读 · 0 评论 -
5.3 MySql实战
mysqlbinlog --no-defaults --base64-output=decode-rows -v /拷贝路径/二进制文件所处路径/二进制文件。示例:cp /usr/local/mysql/data/mysql-bin.000004 /opt/mysql_all_$库水平拆分:例如会员库拆分,拆分会员1库,会员2库.以userId拆分,尾号是0-5的为1号库,尾号是6-9的为2号库等。逻辑备份方法:对数据库逻辑组件(如:数据库表对象),即以SQL语句形式,将库、表结构、表数据保存下来。原创 2024-08-27 18:04:58 · 1316 阅读 · 0 评论 -
5.2 MySql高级特性
存在则查询数据库,不存在则直接返回空。XA是数据库的分布式事务,强一致性,整个过程中,数据都处于被锁定的状态,即从prepare到commit、rollback的整个过程中,TM一直拥有参与分布式事务RM对应数据库的锁,如果有其他人要修改数据库,必修等待锁的释放。定义:通常情况下,同一张表的数据在物理层面都是放在一起的,随着表数据量过大,会带来管理上的不便,分区特性可将一张表从物理层面根据一定的规则将数据划分为多个分区,多个分区可以单独管理,甚至放在不同的磁盘/文件系统上,从而提升效率。原创 2024-08-26 19:18:08 · 708 阅读 · 0 评论 -
JVM知识点记录
参考资料:https://blog.csdn.net/qq_41701956/article/details/81664921。程序计数器、JVM栈、本地方法栈、堆、方法区、运行时常量池、直接内存。原创 2024-08-26 09:01:42 · 535 阅读 · 0 评论 -
5.1 MySql基础
BIGINT可以存储范围在-9,223,372,036,854,775,808到9,223,372,036,854,775,807之间的整数。Read View就是事务进行快照读操作时产生的读视图,是数据库系统当前的一个快照,记录并维护系统当前活跃事务的ID(每个事务开启时,都会分配一个ID,这个ID是递增的,事务越新,ID越大)示例:t_role有id为1,2,3,4,6,7,8的数据,如果此时执行 update t_role set code = 'x' where id >1 and id原创 2024-08-26 09:00:04 · 444 阅读 · 0 评论 -
java特性
Thread类位于java.lang包下,JDK1.0引入,在hotspot虚拟机中,线程使用的是基于操作系统的1:1内核实现模型来创建线程,线程的创建、调度、执行、销毁由内核进行控制,调度过程通过抢占策略进行控制。原创 2024-08-23 18:07:20 · 704 阅读 · 0 评论 -
3.2 java高级特性
BIO:同步阻塞IO。此网络编程基本模型是C/S模型,即两进程之间的通信。此模型最大问题是缺乏弹性伸缩能力,客户端访问量激增后,服务端线程和客户端呈1:1的正比关系,随着访问量持续增大,其他接入的消息,只能一直等待,甚至系统会死掉。NIO:非阻塞IO。支持阻塞和非阻塞两种形式。NIO提供了与传统BIO模型中的Socket和ServerSocket相对应的SocketChannel和ServerSocketChannel两种不同的套接字通道实现。相对高负载、高并发的网络应用,更适合非阻塞IO来开发。原创 2024-08-19 18:14:09 · 952 阅读 · 0 评论 -
Spring Cloud Finchley学习记录
在Controller调用的Service接口类上添加注解@FeignClient(value = "",fallback = A.class),同时A.class需要实现@FignClient注解的接口,并注入到容器中,同时需要重写接口中的方法。创建service-hi工程,引入spring-cloud-starter-zipkin依赖,配置文件中添加spring.zipkin.base-url的配置,对外暴露接口并调用service-mima的接口。配置文件中指定服务注册中心地址;原创 2024-08-15 18:06:00 · 606 阅读 · 0 评论 -
JVM学习记录
对象头:包含两部分,第一部分用于存储对象自身的运行时数据,如哈希码、GC分代年龄、锁状态标志、线程持有的锁、偏向线程ID、偏向时间戳等,32位虚拟机占32bit,64位虚拟机占64bit。java要求对于主内存和工作内存之间的8个操作都是原子性的,但是对于64位的数据而言,有条宽松规定:允许虚拟机将没有被volatile修饰的64位的数据的读写操作分成2次32位的操作来进行,即允许虚拟机实现选择可以不保证64位数据类型的read,load,store,write操作的原子性。线程私有,生命周期和线程一致。原创 2024-08-15 18:07:25 · 308 阅读 · 0 评论 -
数据结构和算法
树是n(n>=0)个节点的有限集,n=0,即为空树。树也是一种递归的实现,树的定义中还用到树的概念。原创 2024-07-31 08:49:50 · 241 阅读 · 0 评论 -
1. 计算机体系结构和C语言
cnblogs较老基础知识汇总:https://www.cnblogs.com/xdp-gacl/tag/java知识体系总结:https://blog.csdn.net/ThinkWon/article/details/103592572todo。原创 2024-07-30 08:43:26 · 306 阅读 · 0 评论