实战首选缓存策略,保证 Redis 和 MySQL 的一致性 (这里说的“首选”,是一般而言。根据具体情况,可能有更合适的方案。) 1 关于缓存的共识 想使用缓存,首先要达成以下共识: 缓存必须要有过期时间; 保证数据库跟缓存的最终一致性即可,不必追求强一致性。 尤其是第二点,这是一个 TradeOff。如果非得要求强一致性,就不要用缓存。 本文讨论的策略,只是保证最终一致性。 2 实战首选:旁路缓存策略(Cache-Aside) 进入正题。我在实际工作中, 后端笔记 桩白墨 2022-07-13 130 热度 0评论
Java 对象序列化踩坑经验 0 背景 有一个集群相关的 bug,在我名下挂了两三个月,今天终于解决掉了,居然跟对象序列化有关。问题简化之后的现象是:一个 Java 对象,存入 redis 后再取出来,丢失了 id 字段。 1 结论 对于需要序列化的类,一定要在继承层次的最顶层实现 Serializable 接口,否则父类的私有字段无法序列化。 2 实验研究 2.1 准备工作 我们创建两个类,一个是 Animal,另一个是 D Java 桩白墨 2019-05-16 148 热度 0评论
Python 练习册 => 0003 将 0001 题生成的 200 个激活码保存到 Redis 非关系型数据库中 心得 安装redis-py:pip install redis redis 模块的 api 文档 #!/usr/bin/env python3 # -*- coding: utf-8 -*- import redis import uuid import pprint def main(): r = redis.StrictRedis(host='localhost', port=6379, db Python 桩白墨 2017-11-22 139 热度 0评论
Redis 基本操作 Redis 简介 图形化管理工具:Redis Desktop Manager 用途:数据库、缓存和消息中间件 主要类型: 字符串(strings) 列表(lists) 集合(sets) "散列(hashes) 有序集合(sorted sets) (本文整理自慕课网教程,涵盖 redis 常用操作) Redis 安装和启动 brew install redis安装 redis。 安装完毕后: red Redis 桩白墨 2017-11-22 175 热度 0评论