摘要: 分布式系统中常用的缓存方案有哪些? 客户端缓存:页面和浏览器缓存,APP缓存,H5缓存,localStorage和sessionStorage CDN缓存: 内存存储:数据的缓存 内容分发:负载均衡 nginx缓存:本地缓存,外部缓存 数据库缓存:持久层缓存(mybatis,hibernate多级缓 阅读全文
posted @ 2021-04-05 15:17 pangqianjin 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 为什么使用缓存? 高性能: 就是说对于一些需要复杂操作耗时查出来的结果,且确定后面不怎么变化,但是有很多读请求,那么直接将查询出来的结果放在缓存中,后面直接读缓存就好 高可用(高并发场景): 缓存是走内存的,内存天然就支撑高并发。 缓存功能简单,说白了就是 key-value 式操作,单机支撑的并发 阅读全文
posted @ 2021-04-05 15:11 pangqianjin 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 海量数据下,如何快速查找一条数据? 使用布隆过滤器,快速过滤不存在的记录。 使用Redis的bitmap结构来实现布隆过滤器。 在Redis中建立数据缓存。 以普通字符串的形式来存储(userId → user.json) 以一个hash来存储一条记录 以一个整的hash来存储所有的数据 存在的问题 阅读全文
posted @ 2021-04-05 15:03 pangqianjin 阅读(744) 评论(0) 推荐(0) 编辑
摘要: 这里我们尝试将Protobuf和RPC结合在一起使用,通过 Protobuf来最终保证RPC的接口规范和安全。 Protobuf中最基本的数据单元是message,是类似Go语言中结构体的存在。在message中可以嵌套message或其他基础数据类型的成员。 首先创建hello.proto文件,其 阅读全文
posted @ 2021-04-05 14:39 pangqianjin 阅读(257) 评论(0) 推荐(0) 编辑