中间件
文章平均质量分 95
嗨森bao
越努力越幸运
展开
-
【Redis】分布式场景下Redis高可用部署方案
深入学习Redis面试题你的Redis怎么做持久化的?在介绍Redis高可用之前,先说明一下在Redis的语境中高可用的含义。我们知道,在web服务器中,高可用是指服务器可以正常访问的时间,衡量的标准是在多长时间内可以提供正常服务(99.9%、99.99%、99.999%等等)。但是在Redis语境中,高可用的含义似乎要宽泛一些,除了保证提供正常服务(如主从分离、快速容灾技术),还需要考虑数据容量的扩展、数据安全不会丢失等。在Redis中,实现高可用的技术主要包括持久化、复制、哨兵和集群持久化。...原创 2022-07-15 17:53:29 · 785 阅读 · 0 评论 -
【Netty】Netty 对 Java NIO 空轮询问题的处理
文章内容1. Java NIO 在 Linux 平台的空轮询问题1.1 空轮询问题的介绍1.1.1 空轮询的现象1.1.2 空轮询的原因1.2 空轮询的处理思路1.2.1 JDK 层面1.2.2 应用程序层面2. Netty 的应对措施1. Java NIO 在 Linux 平台的空轮询问题1.1 空轮询问题的介绍1.1.1 空轮询的现象Linux 下使用 IO 复用一般默认就是 epoll,Java NIO 在 Linux 平台默认使用的也是 epoll 机制。但是 JDK 中对接底层 epoll原创 2022-05-25 18:20:52 · 271 阅读 · 0 评论 -
【Netty】Netty教程——优化及源码(四)
文章内容1. 优化1.1 扩展序列化算法1.2 参数调优1)CONNECT_TIMEOUT_MILLIS2)SO_BACKLOG3)ulimit -n4)TCP_NODELAY5)SO_SNDBUF & SO_RCVBUF6)ALLOCATOR7)RCVBUF_ALLOCATOR1.3 RPC 框架1)准备工作2)服务器 handler3)客户端代码第一版4)客户端 handler 第一版5)客户端代码 第二版6)客户端 handler 第二版2. 源码分析2.1 启动剖析2.2 NioEventL原创 2021-12-08 13:59:13 · 186 阅读 · 0 评论 -
【Netty】Netty教程——netty进阶(三)
文章内容1. 粘包与半包1.1 粘包现象1.2 半包现象1.3 现象分析1.4 解决方案方法1,短链接方法2,固定长度方法3,固定分隔符方法4,预设长度2. 协议设计与解析2.1 为什么需要协议?2.2 redis 协议举例2.3 http 协议举例2.4 自定义协议要素编解码器???? 什么时候可以加 @Sharable3. 聊天室案例3.1 聊天室业务介绍3.2 聊天室业务-登录3.3 聊天室业务-单聊3.4 聊天室业务-群聊3.5 聊天室业务-退出3.6 聊天室业务-空闲检测连接假死1. 粘包与半包原创 2021-12-06 17:27:24 · 390 阅读 · 0 评论 -
【Netty】Netty教程——netty入门(二)
前段时间刷了下黑马的netty教学视频,记录一下学习过程中踩过的坑,有问题欢迎大家下方留言哈~1、原创 2021-12-06 14:42:03 · 551 阅读 · 0 评论 -
【Netty】Netty教程——nio基础(一)
nio基础教程原创 2021-12-06 17:08:31 · 313 阅读 · 0 评论 -
【MQ】如何确保RabbitMQ消息可靠性传递?
正在学RabbitMQ,特此记录一下,这里就不讲RabbitMQ基础了,直接进入主题。TODO:记录下具体的springboot中具体如何配置mq:消息中间件(一)MQ详解及四大MQ比较我们都知道,消息从生产端到消费端消费要经过3个步骤:生产端发送消息到RabbitMQ;RabbitMQ发送消息到消费端;消费端消费这条消息;这3个步骤中的每一步都有可能导致消息丢失,消息丢失不可怕,可怕的是丢失了我们还不知道,所以要有一些措施来保证系统的可靠性。这里的可靠并不是一定就100%不丢失了,磁盘转载 2021-08-05 22:22:13 · 2401 阅读 · 0 评论 -
【MQ】消息中间件(一)MQ详解及四大MQ比较
一、消息中间件相关知识1、概述消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发RocketMQ等。2、消息中间件的组成Broker:消息服务器,作为server提供消息核心服务Producer:消息生产者,业务的发起方,负责生产消息传输给broker,Consumer:消息消费者,业务原创 2021-08-03 21:40:33 · 1935 阅读 · 0 评论 -
【MongoDB】BSON的介绍及BSON与JSON的区别
说明公司在用MongoDB,由于使用MongoDB时其中有一个很重要的类Document,翻看源码时发现他实现了BSON,本人之前对其不了解,故而有了这篇文章。概念参考百科说明:BSON( Binary Serialized Document Format) 是一种二进制形式的存储格式,采用了类似于 C 语言结构体的名称、对表示方法,支持内嵌的文档对象和数组对象,具有轻量性、可遍历性、高效性的特点,可以有效描述非结构化数据和结构化数据。BSON是一种类json的一种二进制形式的存储格式,简称Bina转载 2021-06-10 16:27:09 · 355 阅读 · 0 评论 -
【Redis】Redis 常见面试问题
一、场景在我们日常的开发中,无不都是使用数据库来进行数据的存储,由于一般的系统任务中通常不会存在高并发的情况,所以这样看起来并没有什么问题,可是一旦涉及大数据量的需求,比如一些商品抢购的情景,或者是主页访问量瞬间较大的时候,单一使用数据库来保存数据的系统会因为面向磁盘,磁盘读/写速度比较慢的问题而存在严重的性能弊端,一瞬间成千上万的请求到来,需要系统在极短的时间内完成成千上万次的读/写操作,这个时候往往不是数据库能够承受的,极其容易造成数据库系统瘫痪,最终导致服务宕机的严重生产问题。为了克服上述的问题,转载 2021-07-08 12:27:01 · 536 阅读 · 0 评论