通信协议 Redis是单进程单线程的。 应用系统和Redis通过Redis协议(RESP)进行交互。 请求响应模式 Redis协议位于TCP层之上,即客户端和Redis实例保持双工的连接。 串行的请求响应模式(ping-pong) 串行化是最简单模式,客户端与服务器端建立长连接 连接通过心跳机制检测 ...
分类:
其他好文 时间:
2021-07-12 18:19:20
阅读次数:
0
1. 如何顺序控制goroutine 如何保证在一个 goroutine 中看到在另一个 goroutine 修改的变量的值,如果程序中修改数据时有其他 goroutine 同时读取,那么必须将读取串行化。为了串行化访问,请使用 channel 或其他同步原语,例如 sync 和 sync/atom ...
分类:
其他好文 时间:
2021-05-23 23:08:09
阅读次数:
0
数据库的隔离级别有哪些? 未提交读:一个事务在提交前,它的修改对其他事务也是可见的。 提交读:一个事务提交之后,它的修改才能被其他事务看到。 可重复读:在同一个事务中多次读取到的数据是一致的。 串行化:需要加锁实现,会强制事务串行执行。 数据库的隔离级别分别可以解决数据库的脏读、不可重复读、幻读等问 ...
分类:
数据库 时间:
2021-01-07 12:32:47
阅读次数:
0
前言Java的核心库java.io提供了全面的IO接口。包括:文件读写、标准设备输出等。Java中IO是以流为基础进行输入输出的,所有数据被串行化写入输出流,或者从输入流读入。由于后面需要使用Linux,所以相对来说,IO流还是很重要的。通过多篇博文,将Java中的IO的方方面面过了一遍,对我来说是一个学习和提高的过程,也为Java中的IO系列博文能给后来的学习者带来便利。知识点都过了一遍,要总结
分类:
其他好文 时间:
2020-12-25 13:18:21
阅读次数:
0
线程间通信的方式: 临界区:通过多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问; 互斥量Synchronized/Lock:采用互斥对象机制,只有拥有互斥对象的线程才有访问公共资源的权限。因为互斥对象只有一个,所以可以保证公共资源不会被多个线程同时访问 信号量Semphare:为控 ...
分类:
编程语言 时间:
2020-12-22 11:57:26
阅读次数:
0
多个线程开启各自事务操作数据库中数据时,数据库系统要负责隔离操作,以保证各个线程在获取数据时的准确性。 数据库共定义了四种隔离级别: Serializable:可避免脏读、不可重复读、虚读情况的发生。(串行化) Repeatable read:可避免脏读、不可重复读情况的发生。(可重复读) Read ...
分类:
数据库 时间:
2020-11-21 12:08:08
阅读次数:
12
应网友要求,写一写连接池实现细节。一、如何通过连接访问下游工程架构中有很多访问下游的需求,下游包括但不限于服务/数据库/缓存,其通讯步骤是为:(1)与下游建立一个连接(2)通过这个连接,收发请求(3)交互结束,关闭连接,释放资源这个连接是什么呢,通过连接怎么调用下游接口?服务/数据库/缓存,官方会提供不同语言的Driver、Document、DemoCode来教使用方建立连接与调用接口,以Mong
分类:
其他好文 时间:
2020-11-18 13:05:10
阅读次数:
12
《“ID串行化”保证群消息顺序性》提到,可以通过连接池的改造,实现ID串行化,本篇讲讲连接池的原理,以及实现细节。通常如何通过连接访问下游?工程架构中有很多访问下游的需求,下游包括但不限于服务/数据库/缓存,其通讯步骤是为:(1)与下游建立一个连接;(2)通过这个连接,收发请求;(3)交互结束,关闭连接,释放资源;不管是服务/数据库/缓存,官方会提供不同语言的Driver、Document、Dem
分类:
其他好文 时间:
2020-11-16 13:57:11
阅读次数:
7
在《消息顺序性为何这么难?》中,介绍了一种为了保证“所有群友展示的群消息时序都是一致的”所使用的“ID串行化”的方法:让同一个群gid的所有消息落在同一台服务器上处理。ID串行化是如何实现的呢?互联网高可用常见分层架构客户端,反向代理层,接入层,服务层,存储层,这是互联网常见的高可用分层架构。画外音:这个图用过好多次。这里的“服务层”至关重要,ID串行化保证的是,同一个群gid的消息落在同一个服务
分类:
其他好文 时间:
2020-11-16 13:56:56
阅读次数:
7
Redis 事务的本质是一组命令的集合。事务支持一次性执行多个命令,一个事务中所有命令都会被序列化。在事务执行过程,会按照顺序串行化执行队列中的命令,其他客户端提交的命令请求不会插入到事务执行命令序列中。Redis支持简单的事务 队列 set set set 队列 总结说:redis事务就是一次性、 ...
分类:
其他好文 时间:
2020-11-11 15:59:13
阅读次数:
9