摘要: Redis执行lua脚本,如果key不存在,则对应返回值为 false(boolean) Redis 到 Lua 的转换表。 Redis integer reply -> Lua number / Redis 整数转换成 Lua 数字 Redis bulk reply -> Lua string / 阅读全文
posted @ 2019-06-28 20:46 零柒夭夭 阅读(6089) 评论(0) 推荐(0) 编辑
摘要: 收集了来自 ActiveMQ,RabbitMQ,Kafka,RocketMQ的一些区别 阅读全文
posted @ 2019-06-19 21:31 零柒夭夭 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 1.第一范式(确保每列保持原子性)【属性不可分】 第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式。 第一范式的合理遵循需要根据系统的实际需求来定。比如某些数据库系统中需要用到“地址”这个属性,本来直接将“地址”属性设计成一个数据库表的字段就行。 阅读全文
posted @ 2019-06-16 21:01 零柒夭夭 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 同步(synchronous) IO、异步(asynchronous) IO、阻塞(blocking) IO、非阻塞(non-blocking)IO 1、阻塞IO(blocking IO) 系统调用(一般是IO接口)不返回调用结果并让当前线程一直阻塞,只有当该系统调用获得结果或者超时出错时才返回。 阅读全文
posted @ 2019-06-16 18:45 零柒夭夭 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 进程 进程是一个具有一定独立功能的程序。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。 占用系统独立的资源单元。 线程 进程内部的一个执行单元 系统独立调度和分配的基本单位 每个进程,都有一个主线程,由系统自动创建 1)超线程 利用硬件指令,把1个物 阅读全文
posted @ 2019-06-16 18:23 零柒夭夭 阅读(1766) 评论(0) 推荐(0) 编辑
摘要: 异步是目的,而多线程是实现这个目的的方法。 异步(目的):由系统决定何时,如何去执行,非阻塞的,执行后回调。 CPU可以从线程池中获取一个线程资源,执行操作,并在执行完成后,通知调用方。 也可以重新申请一个线程资源执行。 多线程(手段):多个线程资源,执行任务。 阅读全文
posted @ 2019-06-16 17:38 零柒夭夭 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 基础特性 为什么仅仅string结构 mc的设计目的是以服务的方式,而不是库的方式管理KV,其设计初衷并不是为了复杂数据结构和持久化。 mc的key过期方式 懒淘汰。 item不会主动淘汰,只有get时,发现过期,则进行淘汰。 假如内存用完了,要不要挤掉已有item 要。采用LRU淘汰机制。 常用的 阅读全文
posted @ 2019-06-16 16:31 零柒夭夭 阅读(211) 评论(0) 推荐(0) 编辑
摘要: Delegate protected delegate int ClassDelegate(int x, int y);//定义委托类型及参数 static void Main(string[] args) { ClassDelegate dele = new ClassDelegate(Add); 阅读全文
posted @ 2019-06-15 19:11 零柒夭夭 阅读(4473) 评论(0) 推荐(0) 编辑
摘要: 什么是GC Garbage Collector(垃圾收集器)以应用程序的root为基础,遍历应用程序在Heap上动态分配的所有对象,通过识别它们是否被引用来确定哪些对象是已经死亡的哪些仍需要被使用。已经不再被应用程序的root或者别的对象所引用的对象就是已经死亡的对象,即所谓的垃圾,需要被回收。这就 阅读全文
posted @ 2019-06-15 18:11 零柒夭夭 阅读(2576) 评论(0) 推荐(2) 编辑
摘要: 转自:http://www.cnblogs.com/liuhaorain/p/3747470.html 摘要 面向对象设计(OOD)有助于我们开发出高性能、易扩展以及易复用的程序。其中,OOD有一个重要的思想那就是依赖倒置原则(DIP),并由此引申出IoC、DI以及Ioc容器等概念。通过本文我们将一 阅读全文
posted @ 2019-05-19 22:14 零柒夭夭 阅读(195) 评论(0) 推荐(0) 编辑