- 博客(9)
- 收藏
- 关注
原创 redis源代码学习-哈希表的实现
在redis中有专门的文件定义自己的数据结构,这篇我学习的时其中的哈希列表的实现,包括insert/delete/find/replace/get-random-element等操作。dict结构的主要目的是解决Redis中的数据查找问题。它利用哈希函数确定key值的位置,并且拥有两张数据表,在数据容量不够时自动实现扩容,并对当前哈希表中的数据rehash,但这个rehash操作不是一次完成的,而
2017-04-27 22:38:59
1257
转载 谈谈互联网后端基础设施(转载)
看到一篇写的非常好的文章,对于以后的学习有很大的启发。原文地址:http://www.rowkey.me/blog/2016/08/27/server-basic-tech-stack/#Api%E7%BD%91%E5%85%B3对于一个互联网企业,后端服务是必不可少的一个组成部分。抛开业务应用来说,往下的基础服务设施做到哪些才能够保证业务的稳定可靠、易维护、高可用呢?纵观整个互联
2017-04-17 21:47:44
875
转载 缓存更新的套路
文章原地址:http://coolshell.cn/articles/17416.html 看到好些人在写更新缓存数据代码时,先删除缓存,然后再更新数据库,而后续的操作会把数据再装载的缓存中。然而,这个是逻辑是错误的。试想,两个并发操作,一个是更新操作,另一个是查询操作,更新操作删除缓存后,查询操作没有命中缓存,先把老数据读出来后放到缓存中,然后更新操作更新了数据库。于是,
2017-04-16 09:46:02
451
原创 C中的内联汇编学习
C语言简洁易读,容易组织规模较大的代码,而汇编效率高,gcc编译器提供了一种扩展语法可以在C代码中使用内联汇编(Inline Assembly)。其用__asm__来表示汇编指令。
2017-04-15 23:37:20
862
原创 1MB内存空间处理超过1000万数据的排序
注:此问题来自《编程珠玑》第一章问题描述:最多1000万个正整数的文件,每个数7位正整数,没有任何重复,不与其他数关联 输出:升序排列的输出文件约束:1MB的内存空间,最短的运行时间1000万数据需要使用800万位(1MB)来表示,只使用一次读入读出文件。可考虑使用位图来解决。分3步:初始化:所有位置0;for(i=0;i bit[i]=0;从文件读
2015-12-24 16:19:57
2406
转载 linux segmentation fault原因
最近进行LINUX环境吓开发时总是遇到Segmentation fault这个问题,很是头疼。原文参见http://www.cnblogs.com/no7dw/archive/2013/02/20/2918372.html1.什么是“Segmentation fault in Linux”?(参见http://www.cnblogs.com/no7dw/archive/2013/02/
2015-10-12 21:25:25
1405
原创 LTE中解系统消息的流程(MIB,SIB)
1.LTE中解MIB流程。 系统信息分成MasterInformationBlock(MIB)和多个SystemInformationBlocks (SIBs)。MIB包括有限个最重要、最常用的传输参数,其需要从该小区中获得其它的信息,同时其在P BCH上进行传输。MIB在PBCH 信道上传输,其周期为40ms,也就是4帧长度,其中第一次传输为SFN%4==0,剩下三帧数据为重发此次MIB
2015-10-12 21:02:18
16579
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人