一、CacheKit是什么?

CacheKit是一款分布式缓存系统,它的初衷是:教人从零开始,一步一步地构建属于自己的开源项目。不仅提升了你的编码内功,还产出了自我作品,让简历更出彩。

二、CacheKit诞生背景

作者每年都会阅读大量的书,从书上学到了很多东西。但是书读的越多,反而内心越空虚,毕竟纸上得来终觉浅。

三、CacheKit面向的用户人群

(1)平时的工作内容是简单重复的,难以提升技术,想迅速提升技术能力的人群。CacheKit项目包含系统化学习主线[见下文六:学习指导],并且囊括了线程池、高级数据结构、JUC、服务发现、Socket/IO编程,分布式一致性协议,Paxos理论等各种Java高级知识。

(2)想成为架构师的人。熟悉CacheKit项目,就意味着拥有了独立开发中型框架的开发经验,对提供系统设计能力非常有帮助。

(3)想拥有自己的开源作品,让简历有说服力的。万事洞明皆学问,并不是随便搞个东西就是有价值的作品。

(4)从Web到大数据的过渡。Web以增删改查为主,而大数据以分布式和存储计算为主,CacheKit是个不错的过渡项目。

四、CacheKit所用到的技术要点是什么?

(1)组件式架构设计。cachekit中的kit意为"组件",整个系统分为:内存组件,磁盘组件,线性组件,Paxos组件等多个模块。

(2)设计精巧的序列化机制,利用内存索引实现磁盘数据的快速查找,与大数据方面的存储类型的框架(kafka,hbase等)有异曲同工之妙。

(3)消息队列机制,实现异步数据存储;线程池机制,实现多任务并发设计理念。

(4)服务注册、服务发现,让分布式可扩展变得异常灵活。

(5)面向消息开发思想,面向接口编程思想,让编程不在局限于面向对象开发思想。

五、项目暂停

即日起,CacheKit项目将暂停,进行内部升级,谢谢大家的关注!