07 2023 档案

摘要:Nacos实现配置的动态刷新,主要是靠客户端的长轮询去请求服务端获取更新的配置,在通过Spring的ApplicationContext.publishEvent() 发布事件的方式去刷新容器。 其实主要是靠Nacos—config包下的NacosContextRefresher、NacosConf 阅读全文
posted @ 2023-07-21 13:58 huigui_mint 阅读(698) 评论(0) 推荐(0) 编辑
摘要:项目内部配置文件spring boot 启动会扫描一下位置application.properties或者application.yml 文件作为springboot的默认配置文件 1、file:./config/ 2、file:./ 3、classpath:/config/ 4、classpath 阅读全文
posted @ 2023-07-21 13:31 huigui_mint 阅读(133) 评论(0) 推荐(0) 编辑
摘要:1、Redis的使用规范 1.1、 key的规范要点 我们设计Redis的key的时候,要注意以下这几个点: 以业务名为key前缀,用冒号隔开,以防止key冲突覆盖。如,live:rank:1 确保key的语义清晰的情况下,key的长度尽量小于30个字符。 key禁止包含特殊字符,如空格、换行、单双 阅读全文
posted @ 2023-07-14 03:25 huigui_mint 阅读(165) 评论(0) 推荐(0) 编辑
摘要:Redis 的 KEYS 命令用于获取与指定模式匹配的所有键。然而,需要注意的是,KEYS 命令在性能方面存在一些限制,特别是在处理大型数据库时。 1.时间复杂度 KEYS 命令的时间复杂度为 O(N),其中 N 是数据库中键的数量。这是因为 Redis 需要遍历整个数据库来查找匹配指定模式的键。当 阅读全文
posted @ 2023-07-14 03:10 huigui_mint 阅读(249) 评论(0) 推荐(0) 编辑
摘要:B-树内部节点是保存数据的;而B+树内部节点是不保存数据的,只作索引作用,它的叶子节点才保存数据。 B+树相邻的叶子节点之间是通过链表指针连起来的,B-树却不是。 查找过程中,B-树在找到具体的数值以后就结束,而B+树则需要通过索引找到叶子结点中的数据才结束 B-树中任何一个关键字出现且只出现在一个 阅读全文
posted @ 2023-07-14 03:04 huigui_mint 阅读(357) 评论(0) 推荐(0) 编辑
摘要:Hash哈希,只适合等值查询,不适合范围查询。 一般二叉树,可能会特殊化为一个链表,相当于全表扫描。 红黑树,是一种特化的平衡二叉树,MySQL 数据量很大的时候,索引的体积也会很大,内存放不下的而从磁盘读取,树的层次太高的话,读取磁盘的次数就多了。 B-Tree,叶子节点和非叶子节点都保存数据,相 阅读全文
posted @ 2023-07-14 03:00 huigui_mint 阅读(49) 评论(0) 推荐(0) 编辑
摘要:InnoDB的页结构 在InnoDB中,索引默认使用的数据结构为B+树,而B+树里的每个节点都是一个页,默认的页大小为16KB。 非叶子节点存的是索引值以及页的偏移量,而叶子节点上存放的则是完整的每行记录 在计算机中,磁盘存储数据最小单元是扇区,一个扇区的大小是512字节。文件系统中,最小单位是块, 阅读全文
posted @ 2023-07-14 02:55 huigui_mint 阅读(105) 评论(0) 推荐(0) 编辑
摘要:一、消息队列常用的场景 1、削峰 例如我们做得考试系统中,用户通过人脸识别登录系统,考虑到考试系统的特殊性,三万名考生参加考试,需要记录人脸识别登录照片。从考试完结果上看,用户最大并发数在4000,于是我们采用rocketMq来进行异步消费用户人脸识别图片,当时统计rocketMq每秒1000消费消 阅读全文
posted @ 2023-07-14 02:49 huigui_mint 阅读(159) 评论(0) 推荐(0) 编辑
摘要:最左前缀匹配原则:在MySQL建立联合索引时会遵守最左前缀匹配原则,即最左优先,在检索数据时从联合索引的最左边开始匹配。 要想理解联合索引的最左匹配原则,先来理解下索引的底层原理。索引的底层是一颗B+树,那么联合索引的底层也就是一颗B+树,只不过联合索引的B+树节点中存储的是键值。由于构建一棵B+树 阅读全文
posted @ 2023-07-14 02:35 huigui_mint 阅读(1431) 评论(0) 推荐(1) 编辑
摘要:一、Ribbon与Nginx的区别 我们知道负载均衡有硬件负载均衡与软件的负载均衡方案 硬件负载均衡:比如 F5、深信服、Array 等; 软件负载均衡:比如 Nginx、LVS、HAProxy 等; 硬件负载均衡或是软件负载均衡,他们都会维护一个可用的服务端清单,通过心跳检测来剔除故障的服务端节点 阅读全文
posted @ 2023-07-13 23:31 huigui_mint 阅读(274) 评论(0) 推荐(0) 编辑
摘要:Redis是什么? Redis是一个键值数据库,以“快”著称 Redis是为什么这么快? 我们都知道Redis很快,它在接收到一个键值对数据后,能以微妙级别的速度找到数据并快速完成操作。数据库这么多,为啥 Redis 能有这么突出的表现呢? 一方面,这是因为它是内存数据库,所有操作都在内存上完成,内 阅读全文
posted @ 2023-07-13 23:30 huigui_mint 阅读(59) 评论(0) 推荐(0) 编辑
摘要:一、概述 消息队列已经逐渐成为企业IT系统内部通信的核心手段,主要用来提升性能、系统解耦、流量消峰。 它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里 阅读全文
posted @ 2023-07-11 00:58 huigui_mint 阅读(1468) 评论(0) 推荐(0) 编辑
摘要:工作原理图 Eureka Nacos 相同点 都支持服务注册和服务拉取。 都支持服务提供者心跳方式做健康检测。 区别 Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式 临时实例心跳不正常会被剔除,非临时实例则不会被剔除 Nacos支持服务列表变更的消息推送模式 阅读全文
posted @ 2023-07-10 18:55 huigui_mint 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2023-07-10 18:24 huigui_mint 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2023-07-05 18:33 huigui_mint 阅读(11) 评论(0) 推荐(0) 编辑
摘要:https://zhuanlan.zhihu.com/p/608120345?utm_id=0 阅读全文
posted @ 2023-07-05 18:23 huigui_mint 阅读(8) 评论(0) 推荐(0) 编辑
摘要:Hibernate 和 MyBatis 都是目前业界中主流的对象关系映射(ORM)框架,它们的主要区别如下。 1)sql 优化方面 Hibernate 使用 HQL(Hibernate Query Language)语句,独立于数据库。不需要编写大量的 SQL,就可以完全映射,但会多消耗性能,且开发 阅读全文
posted @ 2023-07-04 19:14 huigui_mint 阅读(66) 评论(0) 推荐(0) 编辑
摘要:MyBatis是一个持久层框架,它的工作原理是: 1. 首先,MyBatis从XML映射文件中读取SQL语句,将其解析成SQL语句对象,并将SQL语句对象存储在内存中。 2. 然后,MyBatis将SQL语句对象与用户提供的参数绑定,生成完整的SQL语句。 3. 接着,MyBatis将SQL语句发送 阅读全文
posted @ 2023-07-04 19:13 huigui_mint 阅读(90) 评论(0) 推荐(0) 编辑
摘要:1、自动装配是什么及作用 springboot的自动装配实际上就是为了从spring.factories文件中获取到对应的需要进行自动装配的类,并生成相应的Bean对象,然后将它们交给spring容器来帮我们进行管理 2、spring自动装配的原理 2.1、启动类上注解的作用 @SpringBoot 阅读全文
posted @ 2023-07-03 11:11 huigui_mint 阅读(636) 评论(0) 推荐(0) 编辑

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