Redis - misc
redis其他值得一提的小功能。 runtime config slowlog monitor runtime config 可以用 CONFIG SET <key> <value>进行runtime配置。 也可以 CONFIG GET <key>。 slowlog redis和mysql一样,也有慢查询日志。 在redis.co...
redis其他值得一提的小功能。 runtime config slowlog monitor runtime config 可以用 CONFIG SET <key> <value>进行runtime配置。 也可以 CONFIG GET <key>。 slowlog redis和mysql一样,也有慢查询日志。 在redis.co...
一台机器的内存是有限的,在上面部署的redis能存储的内容自然也是有限的。如果内容过多,只能使用分布式数据库,将内容分摊到一堆redis里,这就是redis集群。 Sentinel也是一堆redis,但那是为了高可用搞的主备,不同的redis保存的内容是相同的。和分布式集群不是一个东西。 node 节点模式 节点启动 节点连接 ...
Sentinel要解决的问题是高可用性(Highly Availability,HA),即:一个redis倒下去,千万个redis站起来,不至于系统没有redis可用了。也就是常说的主备。当master宕机的时候,要有slave站出来扛起大旗。 Sentinel本质上是一个redis,不过它不执行redis的db功能(所以它启动的时候也不需要载入AOF或者RDB文件),而是作为一个监...
之前总结了server的模型架构,采取nio进行IO多路复用,主要用一个主线程不断进行loop来完成所有的请求处理。那么处理client和server是如何交互的? client在server中的数据表示 文件描述符 client在server中的数据表示 每个与server连接的client,server都为其创建一个对象,保存在redisS...
上篇写的redis DB是redis server的主要功能。本文梳理一下redis server的架构、事件处理逻辑。 事件驱动程序 file event - 单线程的魅力 单线程的好处 单线程的不足 Redis 6 timer event 总结 事件驱动程序 redis server的主进程就是一个大lo...
Redis的数据库功能,和数据库的持久化。 DB db number dict 增删改查 过期时间 过期键删除 持久化 RDB 配置BGSAVE RDB结构 AOF ...
redis存储的kv都是object。object有五种,k永远都是string,v是string/list/set/zset/hash,其实就是string和list、set、map再加个sorted set。 数据结构 sds 字符 vs. 字节 list dict ...
关于NIO,之前也不是没有总结过,但是老忘,每一次忘记之后再次拿起,可能会有些新的感悟,直到发现忘记的根本原因是没掌握准它和Blocking IO的真正区别。NIO能解决掉BIO存在的问题,才是NIO存在的真正意义。 NIO的意义所在 BIO的瓶颈 NIO事件模型 Java NIO组件 SelectableCha...
之前也不是没总结过Java IO的内容,主要受限于水平,写的总是有限。很多很多年前,Java 字节流 字符流 转换流写得就比较寒碜,第一次接触java io,想把自己看到的东西赶紧记下来,实在是囿于初学这水平,现在都不忍直视。(说实话Java IO这一套封装对于初学者来说是有点儿晕……)后来这一篇Java IO的实现倒是好了不少,介绍了一下Java IO里的包装流,也就是装饰器模式,但是说实...
一个应用想要受欢迎,除了强大的功能,还要有用户友好的可管理方式。这里介绍Tomcat的两种管理方式: manager:用户界面; JMX:程序接口; manager web app ContainerServlet JMX MBeanServer ObjectName ...