自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 资源 (3)
  • 收藏
  • 关注

原创 Memcache的分布式

memcached是不支持分布式的,要实现分布式的memcached是需要在客户端那边实现的。就是我运行多个memcached实例,在客户端那边注册多个memcached实例,key->value对具体保存在哪个memcached实例由客户端的哈希算法决定。对于固定的memcached实例,任何hash函数都可以比较好的定位到固定的memcached实例,但是现实中,memcached实例有可能由于

2016-12-26 16:41:52 781 2

原创 Memcache源码阅读(8)---多线程

我看的源码版本是1.2.4前面已经将memcached的主要内容讨论完了。这里来说说memcached怎么使用多线程的吧。memcached的线程分为两种,一个主线程,另外的是工作线程。一个主线程负责接收用户的请求,接收到请求后将这个请求递交给多个工作线程的其中一个。每个工作线程都有一个连接队列管理着主线程递交的连接。线程初始化还是从线程的初始化开始。初始化一些锁,然后初始化工作线程,在主线程和工作

2016-12-25 21:06:49 556

原创 Memcache源码阅读(7)---用户输入的处理

我看的源码版本是1.2.4前面我已经说了数据存储,哈希表的管理,内存的管理。还有第二章说到用户的请求时如何到达memcached的,从用户的输入到memcached如何接受到这些输入。那现在我们来分析一下接收到这些输入后,memcached是怎么操作的。要看这部分代码就需要知道memcached有多少个命令。 我从process_command()这个函数里看到的命令有:get,bget,add,

2016-12-25 20:22:26 596

原创 Memcache源码阅读(6)---数据存储

我看的源码版本是1.2.4前面第4篇讲到了memcached怎么去管理内存的,memcached将内存分为不同大小的chunk,不同大小的数据就放到能装下那个数据的最小chunk中。现在我来讲讲数据是以怎样的形式存储在内存中的。item的结构体#define ITEM_key(item) ((char*)&((item)->end[0])) //获得这个item的key#define ITEM_s

2016-12-21 20:02:08 925

原创 Memcache源码阅读(5)---哈希表管理

我看的源码版本是1.2.4memcached使用的哈希函数是用Dr Dobbs的Hash方法,哈希函数的原理我就不说了,它可以将一个k个字节的数据通过转换,变为一个32位的二进制数。它有那样的特性,这k个字节的二进制稍微有一点变动,得到的32为二进制数就会有很大区别。这也就是哈希函数的作用。虽然说他哈希之后是32位,也就是可以分为2^32这么多个哈希桶,如果我们不需要这么大的哈希桶,可以对得到这32

2016-12-18 22:09:18 643

原创 Memcache源码阅读(4)---内存管理

我看的源码版本是1.2.4memcached的存储memcached拥有一个内存池,内存池中的内存分成多种大小的chunk,chunk的大小有一个基础大小(最小的chunk大小,base chunk size),然后后面大小的是以settings.factor为因子不断的增大。比如说base chunk size为64byte, setting.factor = 1.5,那么memcached拥有的

2016-12-18 15:06:35 888

原创 Memcache源码阅读(3)---处理用户输入

我看的源码版本是1.2.4从main函数开始,看看作者怎么初始化,然后再看作者怎么监听连接,怎么接受用户的输入,怎么处理用户的输入。主程序main函数里的一些操作自定义中断处理函数从命令行中获取用户打开memcached的指令值设置core文件初始化资源,统计资源,分配内存屏蔽SIGPIPE信号,因为SIGPIPE的默认处理是中断程序,客户端断开连接后,memcached再往客户端写数据就

2016-12-17 15:45:10 528

原创 Memcache源码阅读(2)---命令行使用

我看的源码版本是1.2.4使用方法编译安装,运行memcached➜ memcached-1.2.4 ./memcachedtelnet 到memcached监听的端口,通过命令行访问memcache➜ ~ telnet 127.0.0.1 11211Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.1

2016-12-17 15:44:21 662

原创 Memcache源码阅读(1)---看源码的心得

心得我这是第一次看源码。说不上什么心得,不过也总结一下~我觉得阅读一个项目的源码,应该是先知道这个项目具体怎么用之后,先估计一下作者的实现,然后再看源码来验证自己的想法。我这次阅读源码是在没有用过这个项目的前提下阅读的,一开始的时候不知道从何读起,于是就去网上找别人的博客,跟着别人的博文一篇一篇的看,然后自己对着源码看。慢慢的自己就开始知道要看什么了,就不再跟着别人的博文的步骤来,自己想知道那个功能

2016-12-17 15:43:18 1270

AR face database 图片+mat文件

AR人脸数据库的JPG和MAT格式,可以用作人脸识别。

2015-03-23

机器学习-Logistic回归数据

机器学习-Logistic回归数据,只是为了我的博客提供链接下载。

2014-07-01

机器学习-线性回归数据

机器学习-线性回归的测试数据,只是为了我那个博客提供数据而已。

2014-07-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除