08 2022 档案

摘要:public AnnotationConfigApplicationContext(Class<?>... annotatedClasses) { this(); //调用构造方法 // 获取创世纪的类,顶层类 register(annotatedClasses); // 注册配置类 refresh 阅读全文
posted @ 2022-08-21 12:38 a菜搬砖 阅读(10) 评论(0) 推荐(0) 编辑
摘要:1.为什么使用springboot springboot容易上手,做了jar包的版本控制,不用考虑maven依赖,方便敏捷开发,内置tomcat减少开发配置,由于SPI提供对外的starter扩展。 2.springboot的自动装备原理: @SpringBootApplication @Enabl 阅读全文
posted @ 2022-08-21 12:32 a菜搬砖 阅读(44) 评论(0) 推荐(0) 编辑
摘要:1.dubbo: Java之间内部调用,使用 私有序列化二进制协议 1.去中心化,客户端直连服务端 2.动态注册和发现服务 3.高效稳定的网络传输 4.高效可容错的序列化 2.弊端: 不支持跨语言。 序列化: Dubbo序列化支持java、compactedjava、nativejava、fastj 阅读全文
posted @ 2022-08-20 12:59 a菜搬砖 阅读(210) 评论(0) 推荐(0) 编辑
摘要:1.zk的主要作用: 1.zk+dubbo 注册数据的时候 生产者和消费者节点下url 为临时节点。 其余如配置文件等节点都是持久节点。 2.作为分布式锁中间件。 3.分布式job,主节点运行job 2.zk 节点: 1.持久化节点 一旦创建,永久存在,哪怕客户端跟zk断开,除非手动删除 2.持久化 阅读全文
posted @ 2022-08-20 12:08 a菜搬砖 阅读(49) 评论(0) 推荐(0) 编辑
摘要:1.list 有序 可重复 可为null ArrayList(非同步 动态数组 随机访问) 基于数组 线程不安全 多并发情况,出现elementData数组越界 LinkedList(非同步 双向链表 移除) 基于链表 线程不安全 Vector(同步 动态数组 线程安全) 线程安全 Stack(继承 阅读全文
posted @ 2022-08-20 11:56 a菜搬砖 阅读(12) 评论(0) 推荐(0) 编辑
摘要:1.AQS具备的特性: 阻塞等待队列 共享/独占 公平/非公平 可重入 允许中断 2.Aqs的抽象模型: 2.1.ReentrantLock juc lock接口实现,实现是基于AQS,需要手动加锁跟解锁 ReentrantLock lock(),unlock() 悲观锁 独占 AQS 1.vola 阅读全文
posted @ 2022-08-20 11:45 a菜搬砖 阅读(24) 评论(0) 推荐(0) 编辑
摘要:1.synchronized 锁的升级过程: 由于并发量不同,争抢的激烈程度不同出现锁的升级。 锁升级不可逆。 2.为什么要使用锁。 对共有资源的操作,因为对同一资源涉及多数据的复制,使用,回写等不能保证资源的原子性。 即围绕共有资源的原子性和有序性,可见性。 cup处理数据需要遵循 2.1JMM模 阅读全文
posted @ 2022-08-20 11:36 a菜搬砖 阅读(28) 评论(0) 推荐(0) 编辑
摘要:1.jvm的简单抽象模型: 2.类加载机制 双亲委派模型是为了防止jdk核心类库被篡改,如果需要打破可以重写Classloader.loadClass方法。r 双亲委派模型: 一个类加载器收到一个类的加载请求,他会先判断自身是否已存在该类,如果不存在上抛给上一级类加载器ClassLoader.loa 阅读全文
posted @ 2022-08-19 23:24 a菜搬砖 阅读(36) 评论(0) 推荐(0) 编辑
摘要:1.kafka 保证消息的顺序性: 1.一个topic 只对应一个分区 2.发送消息的时候指定 key/partition 2.如何保障kafka数据不丢失: kafka 消息不丢失: 生产端: 1.发送一条消息,调用send方法,会出现回调。如果失败可以重试; 2.参数ack设置,可试着为all, 阅读全文
posted @ 2022-08-19 23:13 a菜搬砖 阅读(149) 评论(0) 推荐(0) 编辑
摘要:1.kafka 存储再文件系统上 顺序写磁盘 效率比随机写内存还要高,这是kafka高吞吐率的一个重要的保证。 缓存页 pageCache 数据传输的零拷贝 读写数据的批量batch处理以及压缩传输 零拷贝: 消除cpu拷贝,减少上下文切换。 Kafka 在这里采用的方案是通过 NIO 的 tran 阅读全文
posted @ 2022-08-19 23:01 a菜搬砖 阅读(41) 评论(0) 推荐(0) 编辑
摘要:1.概念: Producer 生产者 Consumer 消费者 Broker 代理 Topic 主题 Partition 分区 Consumer Group 消费者组 controlle Kafka核心总控制器 broker 代理会去zk上创建 /controlle 临时节点,成功者的为 集群的总控 阅读全文
posted @ 2022-08-19 22:56 a菜搬砖 阅读(19) 评论(0) 推荐(0) 编辑
摘要:1.redis 过期策略: 1.定时过期 2.惰性过期 3.定期过期 2.redis内存淘汰策略: 全局的键空间选择性移除 noeviction:当内存不足以容纳新写入数据时,新写入操作会报错。 allkeys-lru:当内存不足以容纳新写入数据时,在键空间中,移除最近最少使用的key。(这个是最常 阅读全文
posted @ 2022-08-19 22:48 a菜搬砖 阅读(16) 评论(0) 推荐(0) 编辑
摘要:redis的简单抽象模型: 文件事件处理器 >保证redis单线程 多个socket >>>service socket 请求 >> >>>io多路复用程序 >>>队列 >>>文件处理分派器 >>>各种事件处理器: 1.事件请求处理器 2.事件应答处理器 3.事件回复处理器 6.0版本后,队列中的 阅读全文
posted @ 2022-08-19 22:39 a菜搬砖 阅读(15) 评论(0) 推荐(0) 编辑
摘要:1.string 结构: 动态字符串。 1.1 字符串 1.2 数值 计数器 1.3 bitmap 偏移量 0101 运动 权重计算 2.list 结构:压缩列表、双向循环链表 双向链表 压栈 放入倒序 有序 同向指令: 实现栈 异向指令: 队列 数组: LTRIM ltrim 保留数据 例如:文章 阅读全文
posted @ 2022-08-19 22:34 a菜搬砖 阅读(97) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示