摘要: 不好的方案 1. 先写 MySQL,再写 Redis 图解说明: 这是一副时序图,描述请求的先后调用顺序; 橘黄色的线是请求 A,黑色的线是请求 B; 橘黄色的文字,是 MySQL 和 Redis 最终不一致的数据; 数据是从 10 更新为 11; 后面所有的图,都是这个含义,不再赘述。 请求 A、 阅读全文
posted @ 2023-04-23 16:23 傅小灰 阅读(130) 评论(1) 推荐(1) 编辑
摘要: JDK自带的延时队列 把订单插入DelayQueue中,以超时时间作为排序条件,将订单按照超时时间从小到大排序。 起一个线程不停轮询队列的头部,如果订单的超时时间到了,就出队进行超时处理,并更新订单状态到数据库中。 为了防止机器重启导致内存中的DelayQueue数据丢失,每次机器启动的时候,需要从 阅读全文
posted @ 2023-04-23 16:23 傅小灰 阅读(224) 评论(0) 推荐(1) 编辑
摘要: 索引介绍 MySQL默认的存储引擎是InnoDB,它采用B+树作为索引的数据结构。 InnoDB和MyISAM存储引擎都支持B+树索引,但是它们的数据存储结构实现方式不同。 InnoDB:B+树索引的叶子节点保存全部数据 MyISAM:B+树索引的叶子节点保存数据的物理地址 在创建表的时候,Inno 阅读全文
posted @ 2023-04-23 16:22 傅小灰 阅读(125) 评论(0) 推荐(0) 编辑
摘要: Websocket、SSE(Server-Sent Events)和长轮询(Long Polling)都是用于网页和服务端通信的技术。 Websocket是一种全双工通信协议,能够实现客户端和服务端之间的实时通信。它基于TCP协议,并且允许服务器主动向客户端推送数据,同时也允许客户端向服务器发送数据 阅读全文
posted @ 2023-04-23 16:22 傅小灰 阅读(5321) 评论(10) 推荐(33) 编辑