上一页 1 2 3 4 5 6 7 ··· 11 下一页
摘要: 1.前言 本节记录一下redis的一些功能上的实现,包括发布订阅、事务、Lua脚本、排序、二进制位数组、慢查询日志和监视器。 2.发布订阅 上一章介绍sentinel的时候说到了sentinel会订阅主从服务器的hello频道,每个sentinel通过往这个频道中传递各自的状态,让其它sentine 阅读全文
posted @ 2018-07-03 09:10 dark_saber 阅读(379) 评论(0) 推荐(0) 编辑
摘要: 1.前言 本章介绍redis的三种多服务实现方式,尽可能简单明了总结一下。 2.复制 复制也可以称为主从模式。假设有两个redis服务,一个在127.0.0.1:6379,一个在127.0.0.1:12345。我们登陆12345端口的redis,输入命令slaveof 127.0.0.1:6379就 阅读全文
posted @ 2018-07-02 08:56 dark_saber 阅读(1473) 评论(0) 推荐(0) 编辑
摘要: 1.前言 上节总结了一下redis的数据结构和对象构成,本章介绍redis数据库一个基本面貌,是如何设计的。 2.数据库 服务器结构redisServer: redisDb *db: 一个数组,保存服务器中所有的数据库 dbnum: 服务器的数据库数量,默认16个 saveparam *savepa 阅读全文
posted @ 2018-07-01 15:57 dark_saber 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 1.前言 此系列博客记录redis设计与实现一书的笔记,提取书本中的知识点,省略相关说明,方便查阅。 2.基本数据结构 2.1 简单动态字符串SDS(simple dynamic string) 结构体定义: len: buf数组中已使用字节的数量,使用len判断实际内容长度,而不是'\0'字符 f 阅读全文
posted @ 2018-06-30 18:45 dark_saber 阅读(335) 评论(0) 推荐(0) 编辑
摘要: 1.前言 这几天使用mongo的时候遇到了一个异常:Invalid BSON field name $gte,该问题可能会有很多小伙伴会遇到,因此记录一下解决过程。起因是用JAVA翻译一个其他语言写的程序,需要在mongo中保存某次的查询条件,以便下次使用。但是保存的时候抛出了这个异常,原程序却没有 阅读全文
posted @ 2018-06-28 22:36 dark_saber 阅读(1827) 评论(0) 推荐(0) 编辑
摘要: 1.前言 之前的章节已经将启动demo中能看见的内容都分析完了,Netty的一个整体样貌都在第8节线程模型最后给的图画出来了。这些内容解释了Netty为什么是一个异步事件驱动的程序,也解释了Netty的线程模型的高效,但是并没有涉及到的一个方面就是Handler的解析过程。通过前面的知识点我们都应该 阅读全文
posted @ 2018-05-07 21:42 dark_saber 阅读(3869) 评论(0) 推荐(0) 编辑
摘要: 1.前言 第7节讲解JAVA的线程模型中就说到了Future,并解释了为什么可以主线程可以获得线程池任务的执行后结果,变成一种同步状态。秘密就在于Java将所有的runnable和callable任务,统一变成了callable,最终包装成了FutureTask对象,该类实现了Runnable接口和 阅读全文
posted @ 2018-05-04 22:18 dark_saber 阅读(2439) 评论(0) 推荐(0) 编辑
摘要: 1.前言 第7节初步学习了一下Java原本的线程池是如何工作的,以及Future的为什么能够达到其效果,这些知识对于理解本章有很大的帮助,不了解的可以先看上一节。 Netty为什么会高效?回答就是良好的线程模型,和内存管理。在Java的NIO例子中就我将客户端的操作单独放在一个线程中处理了,这么做的 阅读全文
posted @ 2018-05-03 22:03 dark_saber 阅读(11220) 评论(1) 推荐(1) 编辑
摘要: 1.前言 本章本来要讲解Netty的线程模型的,但是由于其是基于Java线程池设计而封装的,所以我们先详细学习一下Java中的线程池的设计。之前也说过Netty5被放弃的原因之一就是forkjoin结构比较复杂,forkjoin也是JDK提供的一个基本线程模型,这里就不进行介绍。本节涉及知识点很多, 阅读全文
posted @ 2018-05-02 21:30 dark_saber 阅读(3764) 评论(0) 推荐(1) 编辑
摘要: 1.前言 本节介绍Netty中第三个重要的概念——Handler,这个在前两节都提到了,尤其是Channel和Handler联系紧密。handler本身的设计非常简单,但是所起到的作用却很大,Netty中对于handler的实现非常多(handler是控制socket io的各个生命周期的业务实现, 阅读全文
posted @ 2018-04-28 21:26 dark_saber 阅读(2914) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 11 下一页