摘要:
在使用mybatis框架开发项目编写SQL语句的时候,经常需要用到变量替换值,那么用来替换变量值的操作经常用到$和#这两个符号,同样在一些java面试中也经常被问到它们的区别。那么它们在使用上面有什么区别呢?下面根据使用情况分析总结,两者的区别。 1、#和$两者含义不同 #会把传入的数据都当成一个字 阅读全文
摘要:
B站链接 https://www.bilibili.com/video/BV19T4y1o7E7?spm_id_from=333.337.search-card.all.click 前言 最近在看spring事务源码,时不时回想起前几年面试YY的场景,面试官拿出下面的一道面试题问我,updateSt 阅读全文
摘要:
工作模式 发布 订阅模式(广播方式) 可以实现一条消息 多处消费,fanout模式 routeKey需要设置为"" 过期队列TTL 过期消息最有在队列头(最近的一条信息)才会判断消息是否过期,是否要被消费 死信队列条件 延时队列 用死信队列 + TTL做的延时队列,如果消息过期时间不同,有可能出现问 阅读全文
摘要:
【Redis】主从、哨兵、集群各自架构的优点和缺点对比 1. 单机模式 Redis 单副本,采用单个 Redis 节点部署架构,没有备用节点实时同步数据,不提供数据持久化和备份策略,适用于数据可靠性要求不高的纯缓存业务场景。 优点: 架构简单,部署方便。高性价比:缓存使用时无需备用节点(单实例可用性 阅读全文
摘要:
https://www.bilibili.com/video/BV1Ef4y1w78c?p=1 阅读全文
摘要:
应用程序升级面临最大挑战是新旧业务切换,将软件从测试的最后阶段带到生产环境,同时要保证系统不间断提供服务。 长期以来,业务升级渐渐形成了几个发布策略:蓝绿发布、灰度发布和滚动发布,目的是尽可能避免因发布导致的流量丢失或服务不可用问题。 一、 蓝绿发布项目逻辑上分为AB组,在项目系统时,首先把A组从负 阅读全文
摘要:
前言 我们在使用Netty进行服务端开发的时候,一般来说会定义两个NioEventLoopGroup线程池,一个"bossGroup"线程池去负责处理客户端连接,一个"workGroup"线程池去负责处理读写操作。那么,我们为什么要这么做呢?这样做的好处是什么呢?能不能只使用一个NioEventLo 阅读全文
摘要:
B站视频 https://www.bilibili.com/video/BV1KY411x7Jp?spm_id_from=333.851.header_right.history_list.click 三次握手 四次挥手 阅读全文
摘要:
数据库优化,是一种综合性的技术,不是通过某一种方式让数据库效率提高很多,而是通过各个方面的优化,来是数据库效率明显的稳步的提高。 主要包括以下: 1、库表的设计优化(三种范式) 2、库表添加合适的索引(普通索引+主键索引+唯一索引+全文索引) 3、分表技术-水平分割与垂直分割 4、读写分离(add/ 阅读全文
摘要:
MVCC(Mutil-Version Concurrency Control),就是多版本并发控制。MVCC 是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问。 在Mysql的InnoDB引擎中就是指在已提交读(READ COMMITTD)和可重复读(REPEATABLE REA 阅读全文