摘要: 1.第一范式(确保每列保持原子性)【属性不可分】 第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式。 第一范式的合理遵循需要根据系统的实际需求来定。比如某些数据库系统中需要用到“地址”这个属性,本来直接将“地址”属性设计成一个数据库表的字段就行。 阅读全文
posted @ 2019-06-16 21:01 零柒夭夭 阅读(160) 评论(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 零柒夭夭 阅读(1765) 评论(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) 编辑