本人在工作中一般喜欢把MySQL、Redis、Memcached、MongoDB等数据库按照实例的方式对外提供服务。一般都是一台高配的服务器上开启多个实例给每个业务使用。而监控是重中之重,我自己也尝试了多种监控方式,但对我来说感觉最简单最快的就是使用zabbix了,灵活定义key。
由于我是多实例,所以就需要用到zabbix的自动发现功能(LLD)。基本处理……继续阅读 »
彭东稳
1年前 (2017-02-15) 4600浏览 2评论
0个赞
MemcacheQ介绍
队列(Queue)是一种常用的数据结构。在队列这种数据结构中,最先插入的元素将会最先被取出;反之最后插入的元素将会最后被取出,因此队列又称为“先进先出”(FIFO:First In First Out)的线性表。
加入元素的一端叫“队尾”,取出元素的一端叫“队头”。利用消息队列可以很好地异步处理数据的传送和存储,当遇到频繁且密集地向后……继续阅读 »
彭东稳
1年前 (2016-11-07) 4659浏览 0评论
0个赞
这里收集了经常被问到的关于memcached的问题
* memcached是怎么工作的?
* memcached最大的优势是什么?
* memcached和MySQL的query cache相比,有什么优缺点?
* memcached和服务器的local cache(比如PHP的APC、mmap文件等)相比,有什么优缺点?
* memcached的cache……继续阅读 »
彭东稳
2年前 (2016-06-15) 3692浏览 0评论
0个赞
分享一个memcached丢失数据后的解决办法
在看这篇文章之前,最起码要知道memcached系列前三篇的知识,最重要的就是memcached的命令以及memcached内存管理策略,这是理解memcached为什么会丢数据的基础。
01-Memcached缓存数据库介绍
02-Memcached安装使用详解
03-Memcached内存分配策略
04-M……继续阅读 »
彭东稳
2年前 (2016-06-01) 3363浏览 0评论
5个赞
Consistent hashing算法早在1997年就在论文Consistent hashing and random trees中被提出,目前在cache系统中应用越来越广泛。
一、 基本场景
比如你有N个cache 服务器(后面简称cache ),那么如何将一个对象 object 映射到N个cache上呢,你很可能会采用类似下面的通用方法计算objec……继续阅读 »
彭东稳
2年前 (2016-01-21) 2953浏览 1评论
0个赞
Memcached的分布式
Memcached虽然称为“分布式”缓存服务器,但服务器端并没有“分布式”功能。服务器端仅包括内存存储功能,至于memcached的分布式,则是完全由客户端程序库实现的。这种分布式是memcached的最大特点。
那么memcached的分布式是什么意思呢?
下面假设memcached服务器有node1、node2、node3三……继续阅读 »
彭东稳
2年前 (2016-01-21) 3945浏览 0评论
0个赞
安装PHP的memcache扩展之前,要先编译安装一套LA/NMP,且下面这一步/usr/local/php/bin/phpize要使用编译安装的PHP的phpize程序,用来生成configure文件。
一、安装PHP的memcache扩展功能
1)安装PHP的memcache扩展
[root@localhost ~]# ta……继续阅读 »
彭东稳
2年前 (2016-01-21) 3613浏览 0评论
0个赞
在说Memcached内存分配之前,先说一下Linux内存管理中用到的两个避免内存碎片的机制。
Buddy system:伙伴系统避免内存外碎片。Linux内核分配内存的方式是按照页框(默认4k大小)进行的。由于页框大小是4k,而很信息打开时需要用到几个页框,外碎片就是指当内核想找一个大页框用来存储某些信息时都无法找到,而buddy system就是会自动将……继续阅读 »
彭东稳
2年前 (2016-01-21) 4417浏览 0评论
1个赞
安装memcached
Memcached依赖于libevent API(Reahat系统中也安装有libevent1.4版本),因此如果要想使用更高版本可以自行编译安装但是不要覆盖系统自带的libevent版本其它软件需要依赖,libevent项目主页:http://libevent.org/
[root@localhost ……继续阅读 »
彭东稳
2年前 (2016-01-21) 3581浏览 0评论
0个赞
Memcache介绍
首先说一下,Memcache是项目名称,Memcached是服务器端程序,有时候Memcache也是客户端名称。
Memcached是一款开源、高性能、分布式内存对象缓存系统,可应用各种需要缓存的场景,其主要目的是通过降低对Database的访问来加速web应用程序。它是一个基于内存的“键值对”存储,用于存储数据库调用、API调用或页面……继续阅读 »
彭东稳
2年前 (2016-01-21) 3857浏览 0评论
0个赞