会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
百世之无变足以为道贯
80后程序员的开发进击之路 目前有向全栈发展的趋势
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
···
9
下一页
2019年11月26日
主流消息队列组件的消息模型比较
摘要: 其实,消息队列中队列二字带有误导性,现代消息队列组件的所能提供的功能已远远超出了数据结构中 队列 所能代表的范围。 消息队列的演进 队列模型 传统的队列功能,先进先出, 严格有序 。如果有多个消费者,则需要竞争消息,每份消息只能消费一次。 发布 订阅模型 发布者:消息的发送主 订阅者:消息的接收方
阅读全文
posted @ 2019-11-26 16:13 james_cai
阅读(1282)
评论(0)
推荐(0)
2019年11月18日
通过喝水清晰简单了解I/O五大模型
摘要: 一般单次I/O请求会分为两个阶段,每个阶段对于I/O的处理方式是不同的 I/O会经历一个等待资源的阶段 阻塞,指的是在数据不可用时,I/O请求会一直阻塞,直到数据返回 数据不可用时,立即返回,直到被通知资源可用为止 使用资源阶段 同步:读取或者写入数据时会阻塞,直到读取或写入完成 在读取或者写入数据
阅读全文
posted @ 2019-11-18 15:17 james_cai
阅读(229)
评论(0)
推荐(0)
CAP拾遗
摘要: 概念 在一个分布式系统(指互相连接并共享数据的节点的集合)中,当涉及读写操作时,只能保证一致性、可用性、分区容错性三者中的两个,另外一个必须被牺牲 Consistency 对某个指定的客户端来说,读操作保证能够返回最新的写操作结果 Availaility 非故障的节点在合理的时间内返回合理的响应(不
阅读全文
posted @ 2019-11-18 12:20 james_cai
阅读(153)
评论(0)
推荐(0)
多路复用相关资料
摘要: 同步非阻塞 (1)和(2)分别是数据是收和发运作,只有收到才能发送,所以是同步的。 但即使因为网络原因没有收到或者发送不出,也不会阻塞干等着,而是做个“记号”,把等待的这段CPU时间用来处理其他请求 单个处理流程是阻塞的,但整个程序却是非阻塞的 单个请求处理来看是分散的、阻塞的,但因为都 复用 了一
阅读全文
posted @ 2019-11-18 10:08 james_cai
阅读(133)
评论(0)
推荐(0)
2019年11月15日
Redis常见面试问题及答案
摘要: 大量key在同一时间过期,注意什么? 如果过期时间过于集中,会导致Redis可能会出现短暂的卡顿现象。严重的话会出现缓存雪崩,一般需要在时间上加一个随机值, 使用过期时间分散一些。 Redis分布式锁的实现原理 setnx命令设置唯一的key,只有不存在时才返回成功,这就相当于争抢锁。再使用expi
阅读全文
posted @ 2019-11-15 15:40 james_cai
阅读(1362)
评论(0)
推荐(0)
2019年11月11日
补码讲解
摘要: 补码两种定义: 正数的补码等于他的原码;负数的补码等于反码+1 负数的补码等于他的原码自低位向高位,尾数的第一个‘1’及其右边的‘0’保持不变,左边的各位按位取反,符号位不变。 其实上面那两段话,都只是补码的求法,而不是补码的定义。很多人以为求补码就要先求反码,其实并不是。 0其实归到正数了, 所以
阅读全文
posted @ 2019-11-11 16:50 james_cai
阅读(908)
评论(0)
推荐(0)
2019年11月7日
从收发消息能力来理解TCP建立连接时的三次握手
摘要: TCP是一个全双工协议,意味着在Client和Server都可以接收和发送数据。 所以,从另一个角度理解建立连接的目的就是要确保双方都要知道对端的收发消息的能力是正常的
阅读全文
posted @ 2019-11-07 10:42 james_cai
阅读(149)
评论(0)
推荐(0)
2019年11月5日
Redis常用数据类型底层数据结构分析
摘要: Redis是一种键值(key Value)数据库,相对于关系型数据库,它也被叫作非关系型数据库 Redis中,键的数据类型是字符串,但是为了非富数据存储方式,方便开发者使用,值的数据类型有很多 字符串 (string) 这种数据类型非常简单,对应到数据结构里面,就是 字符串 列表 (list) 支持
阅读全文
posted @ 2019-11-05 10:54 james_cai
阅读(376)
评论(0)
推荐(0)
2019年10月29日
高并发系统设计(三)缓存 未完
摘要: 广义上讲,凡是位于速度相差较大的两种硬件之间,用于协调两者数据传输速度差异的结构,均可称之为 缓存 是一种常见的空间换时间的性能优化手段 常见案例 Linux MMU 使用LTB来缓存最近虚拟地址和物理地址的映射。 刷视频预缓存下一个视频 HTTP协议 ETag 缓存与缓冲区 缓存区是用于弥补高速设
阅读全文
posted @ 2019-10-29 17:54 james_cai
阅读(293)
评论(0)
推荐(0)
分布式设计(二)协调与同步
摘要: 分布式互斥 对排他性的资源访问方式,称为分布式互斥。而这种被互斥访问的排他性资源,就叫做临界资源 如何访问 霸道总载:集中式算法 优点:直观、简单,信息交互量少、易于实现 问题:协调者会成为系统性能瓶颈;单点故障 增加主备备分,应用比较广泛 民主协商:分布式算法 先到先得、投票全票通过机制 适合节点
阅读全文
posted @ 2019-10-29 11:31 james_cai
阅读(855)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
···
9
下一页
公告