一篇文全面读懂缓存与队列

摘要: 作者介绍 索宁,擅长Python开发、MySQL、前端等众多技术领域,曾负责众多企业安全架构解决方案 ,涉猎行业有媒体、出版社、航空运输、医疗、军队、政府、教育等。   本文主题: Memcached  Redis RabbitMQ   一、Memcached   1、简介、安装、使用   Memcached 是一个高性能的分布式内存对象缓存系统,用于动态 Web 应用以减轻数据库负载压力。

作者介绍

索宁,擅长Python开发、MySQL、前端等众多技术领域,曾负责众多企业安全架构解决方案 ,涉猎行业有媒体、出版社、航空运输、医疗、军队、政府、教育等。

 

本文主题:

 

一、Memcached

 

1、简介、安装、使用

 

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态 Web 应用以减轻数据库负载压力。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached 基于一个存储键/值对的 hashmap。其守护进程(daemon )是用 C写的,但是客户端可以用任何语言来编写,并通过 memcached 协议与守护进程通信。

 

Memcached 内存管理机制:

 

Menceched 通过预分配指定的内存空间来存取数据,所有的数据都保存在 memcached 内置的内存中。

 

利用 Slab Allocation 机制来分配和管理内存。按照预先规定的大小,将分配的内存分割成特定长度的内存块,再把尺寸相同的内存块分成组,这些内存块不会释放,可以重复利用。

 

当存入的数据占满内存空间时,Memcached 使用 LRU 算法自动删除不是用的缓存数据,即重用过期数据的内存空间。Memcached 是为缓存系统设计的,因此没有考虑数据的容灾问题,和机器的内存一样,重启机器将会丢失,如果希望服务重启数据依然能保留,那么就需要 sina 网开发的 Memcachedb 持久性内存缓冲系统,当然还有常见的 NoSQL 服务如 Redis。

 

默认监听端口:11211

 

Memcached 安装

 

20161215101506330.png

 

 

20161215101958103.jpg

​​​​​​​

原文链接

猜你喜欢

转载自3554661963.iteye.com/blog/2383870