一,服务端的装置及设置
1) 解压缩文件到c:\memcached(也可以挑选恣意位置)
2) 敕令行输入 'c:\memcached\memcached.exe -d install'
3) 敕令行输入 'c:\memcached\memcached.exe -d start' ,该敕令启动 Memcached ,默许监听端口为 11211
4) 经由过程 memcached.exe -h 可以检察其协助
二,客户端的装置及援用
关于客户端操纵服务端,我们有多种可选体式格局,在这里,我们挑选运用dll.因为dll的体式格局生成较快,而且防备了烦琐的设置文件中的设置,比较轻易。关于telnet敕令等等,我们可以在服务端运用来搜检数据,检察cache的命中率等。
1.关于Dll的援用
下载完Dll以后,在项目中增加如图援用
2,可以涌现题目
我在引入log4net跟Memcached.ClientLibray的时刻,涌现引入了,类文件内里也加入了using,然则以生造诣报错,厥后发明是.net framework版本的题目,将版本从下图版本改成.net framework 4以后生造诣ok了。
三,Memcached机制深切相识
1,基于C/S架构,协定简朴
1) C/S架构,此时memcached为服务端,我们可以运用种种客户端顺序衔接memcached服务器。
2) Memcached的服务器客户端通讯不运用XML等花样,而运用简朴的基于文本行的协定,因而,经由过程telnet也能在memcached上保留数据,获得数据。
2,基于libevent的事宜处置惩罚
1) Libevent是一套跨平台的事宜处置惩罚接口的封装,可以兼容包含这些操纵系统:Windows/Linux/BSD/Solaris等操纵系统的事宜处置惩罚。
2) Memcached运用libevent来举行收集并发衔接的处置惩罚,可以坚持在很大的并发状况下,依旧可以坚持疾速相应的才能。
3,内置内存存储体式格局
为了进步机能,memcached中保留的数据都存储在memcahced内置的内存存储空间中。因为数据仅存在于内存中,因而重启memcached,重启操纵系统会致使悉数数据消逝。别的,内容容量到达指定值以后,就基于LRU(Least Recently Used)算法自动删除不运用的缓存。Memcached自身是为缓存而设想的服务器,隐蔽并没有过量斟酌数据的永远性题目。
4,基于客户端的分布式
Memcached只管是“分布式”缓存服务器,但服务端并没有分布式功用更。各个memcached不会互相通讯以同享信息。那末,如何举行分布式,这完全取决于客户端的完成,有兴致的可以百度下hash算法。
代码体味:
四,memcached与session
1) 生命周期差别
2) 要处理的题目重点差别
五,memcached与Cache
cache作为。Net中状况治理的东东,以为也相称壮大:1,缓存依靠:可以依靠或文件,数据库,组合的依靠,而且供应了数据逾期的关照机制,轻易在我们在逾期的时刻及时更新数据。2,关照机制的运用:之前比较早的时刻,关于数据过不逾期,运用的照样轮询机制,类似轮回检察数据有无被更新,假如被更新了,则此时更新cache。然则总以为轮询机制很怪怪的,比方,我在家烧一壶水,不该该是我总去看水开没开,而是要水开了然后有个啥声响告诉我水开了。关照机制就是这个意义,至于关照机制的道理,可以去查一下observer形式,在23中设想形式中,这个用的照样蛮多的。
当初运用memcached的时刻,因为cache的缘由,就天然想到了这个关照机制,查了一下,貌似memcached是没有这个的,要想本身做一个逾期更新,也只能运用轮询机制。然则从memcached的运用场景去思索,我们会发明其实有逾期时候就足够了。
六,memcached的实用场景
1) 变化频仍,具有不稳定性的数据,不需要及时入库(比方用户在线状况,在线人数)
2) 流派网站的音讯的等,以为页面静态化仍不能满足要求,可以放入到memcached中(合营jquery的ajax要求)
……
七,memcached的平安性题目
因为memcached没有内置身份验证机制,造成了运用telnet接见ip+端口就可以登录的状况,然后内里的数据就成了待宰的羔羊。为了防备防备被黑掉,我们可以在memcached服务器上对外封闭掉接见端口,只允许本机顺序接见。
八,类似手艺的比较
1,Redis
1) 支撑更多value范例
2) 可耐久化:redis会周期性的把更新的数据写入磁盘或许把修正操纵写入追加的纪录文件,而且在此基础上完成了master-slave(主从)同步
3) 支撑主从同步:数据可以从主服务器向恣意数目的从服务器上同步,从服务器可所以关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据举行写操纵。因为完全完成了宣布/定阅机制,使得从数据库在任何地方同步树时,可定阅一个频道并吸收主服务器完全的音讯宣布纪录。同步对读取操纵的可扩大性和数据冗余很有协助。
2,EhCache
1) 纯Java的历程内缓存框架,具有疾速、精干等特性,是Hibernate中默许的CacheProvider。
2) 开源Java分布式缓存: 重要面向通用缓存,Java EE和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩大,缓存非常处置惩罚顺序,一个gzip缓存servlet过滤器,支撑REST和SOAP api等特性。
。。。。。。。。。
以上就是Memcached在.net中的运用的内容,更多相关内容请关注ki4网(www.ki4.cn)!