摘要: 集群最佳实践 集群完整性问题 在redis的默认配置中,如果发现任意一个插槽不可用,则整个集群都会停止对外服务: 为了保证高可用特性,这里建议蒋cluster-require-full-coverage配置为false 集群带宽问题 集群节点之间会不断的互相ping来确定集群中其他节点的状态。每次p 阅读全文
posted @ 2024-06-24 15:49 蓝海的bug本 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 持久化配置 Redis的持久化虽然可以保证数据安全,但也会带来很多额外的开销,因此持久化请遵循下列建议: ① 用来做缓存的redis实例尽量不要开启持久化功能 ② 建议关闭RDB持久化功能,使用AOF持久化(RDB的数据安全性一直是有问题的,两次RDB的时间比较长,又不能频繁的RDB,因为耗时久而且 阅读全文
posted @ 2024-06-21 14:54 蓝海的bug本 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 大量数据的导入的方式 Redis提供的批处理方案 M操作比Pipeline快,因为M操作是内部操作,原子操作,而Pipeline不是。 集群下的批处理 如MSET或Pipeline这样的批处理需要在一次请求中携带多条命令,而此时如果redis是一个集群,那批处理命令的多个key必须落在一个插槽中,否 阅读全文
posted @ 2024-06-13 14:20 蓝海的bug本 阅读(1) 评论(0) 推荐(0) 编辑
摘要: Redis键值设计 优雅的key结构 Redis的Key虽然可以自定义,到但是最好遵循下面的几个最佳实践约定: l 遵循基本格式:[业务名称]:[数据名]:[id] l 长度不超过44字节(长度越小,占用的内存越少) l 不包含特殊字符 优点: ① 可读性强 ② 避免key冲突 ③ 方便管理 ④ 更 阅读全文
posted @ 2024-06-11 13:49 蓝海的bug本 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 整个多级缓存的架构 阅读全文
posted @ 2024-06-03 16:52 蓝海的bug本 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 就是把注释全都删了 这里指的是OpenResty的Nginx配置文件 请求参数处理 先修改Nginx配置文件 修改lua文件,然后重启nginx 查询Tomcat 写lua文件做工具类 那么如何根据商品id对tomcat集群负载均衡呢? 反向代理要进行修改 接下来的问题是,进程缓存之间是不会共享的, 阅读全文
posted @ 2024-05-24 16:33 蓝海的bug本 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 接下来要实现Nginx的本地缓存,而Nginx是用Lua语言来开发,下面简单理解一下Lua 初识Lua Lua是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放,其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 安装,centOS自带Lua语言了,不需要安装,其他系 阅读全文
posted @ 2024-05-08 14:32 蓝海的bug本 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 前置数据库的表规划:数据库的表尽量做分离,是因为一个商品的数据事实上是非常多的,需要对商品的数据进行解耦,字段太多查询的效率会比较低;另一方面,系统需要给数据加缓存,如果都在一张表里,那么作为缓存的话,就只有一整条数据作为缓存,一旦一条数据里的任意一个字段做了修改,整个商品的缓存就全都失效了,这样缓 阅读全文
posted @ 2024-05-06 14:17 蓝海的bug本 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 传统缓存的问题 传统的缓存策略一般是请求到达Tomcat后,先查询redis,如果未命中则查询数据库,存在下面的问题: l 请求要经过tomcat处理,tomcat的性能成为整个系统的瓶颈 l Redis缓存失效时,会对数据库产生冲击 多级缓存方案 多级缓存就是充分利用请求处理的每个环节,分别添加缓 阅读全文
posted @ 2024-04-22 15:25 蓝海的bug本 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2024-04-19 14:53 蓝海的bug本 阅读(1) 评论(0) 推荐(0) 编辑