viccyhty's repositories
alibaba-mom
2015 ali中间件比赛项目,1. 通信模块: 涉及到了消息架构设计,每一个主题分配1-2个队列,这个是可以横向增加,考虑到了一个主题有多个消费者订阅,而且还有过滤条件,为了负载均衡,对应的队列投递消息是根据随机数对队列数取膜完成的。以上是内存队列。 2. 持久化系统:因为考虑到机器坏掉,broker不可用等等原因导致的消息丢失,就需要每次收到的消息必须及时落盘,这个就是比赛优化的重中之重。为此设计了一个小型的文件系统,借鉴阿里的rocketmq. 用一个大的日志文件,一般1G大小每个,和内存队列的结构映射到实体队列。整个日志文件是顺序文件,每条消息固定大小,里面有对应的队列号,消息号,还有长度等等。这个方便恢复消息到实体队列用的。 同步刷盘,异步刷盘,持久化必须可靠,所以一般是同步刷盘到日志文件,日志文件定时异步刷盘到实体队列,实体队列里面是索引,消息的本体在日志文件里面。为了加快大面积的写入速度,用了内存映射:内存映射文件首先将外存上的文件映射到内存中的一块连续区域,被当成一个字节数组进行处理,读写操作直接对内存进行操作,而后再将内存区域重新映射到外存文件,这就节省了中间频繁的对外存进行读写的时间,大大降低了读写时间
ccn-lite
CCN-lite, a lightweight implementation of the CCNx protocol and its variations
contiki
The official git repository for Contiki, the open source OS for the Internet of Things
DVWA
Damn Vulnerable Web Application (DVWA)
first_one
just a repository
funny-community
Node.js 图片分享社区论坛
IEEE1451-Rapsberry
IEEE 1451 Smart Transducers standard for IoT and RapsberryPi
nfq-xor
simple xor encrption with netfilter-queue
nlp_course
YSDA course in Natural Language Processing
p0f
p0f unofficial git repo
SmartAppContiki
Contiki fork for real cross-platform support