`
movenut
  • 浏览: 126942 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论
阅读更多

通常我们通过memcached 缓存业务数据减轻数据库的压力实现系统的高性能,但是,在高并发的情况下如果memcached不可用的话,相应的请求都会压到后端的数据库上。大量的请求压到数据库上,使数据库响应变慢,导致服务阻塞,最终可能产生雪崩效应导致整个系统不可用,如何防止这样的问题?搭建高可用的memcached集群是防止此问题的一个途径。

 

下面描述了如和通过使用memcached replication 版本以及keepalived 实现高可用集群

 

软件准备

 

1:install memcached replication 版本

      wget http://sourceforge.net/projects/repcached/files/latest/download?source=files

 

       ./configure --enable-replication && make && make install 


 

2:install keepalived

       如果遇到问题可以参考

 

软件配置

 

   通过keepalived 向客户端提供VIP地址、实现Failover。

   keepalived 配置如下:

   【backup】

vrrp_instance VI_MEM_USER {

        virtual_router_id 51

        track_interface {

                eth0

        }

        priority 100

        advert_int 1

        interface eth0

        virtual_ipaddress {

                192.168.56.200/24

        }

}

 【master】

vrrp_instance VI_MEM_USER {

        virtual_router_id 51

        track_interface {

                eth0

        }

        priority 150

        nopreempt

        advert_int 1

        interface eth0

        virtual_ipaddress {

                192.168.56.200/24

        }

}

 


   【注意】

   通过在master上配置 非抢占nopreempt 防止 master --backup 之间的频繁切换。master,backup同过priority区分,在此可以不配 state。

 

 

使用

      1:启动 memcahed   ,memcached -vv -x ip1 -d ; memcached -vv -x ip2 -d, 实现双向复制

      2  : 客户端可以通过VIP 192.168.56.200 来访问 集群

 

缺点

     集群中只可以有两个memcached实例

 

 

 

 

分享到:
评论

相关推荐

    集群好书《高性能Linux服务器构建实战》 试读章节下载

    14.1 MySQL高可用集群概述 14.2 heartbeat + DRBD高可用性方案的实现原理 14.3 部署MySQL高可用高扩展集群 14.3.1 配置之前的准备 14.3.2 DRBD的部署 14.3.3 DRBD的配置 14.3.4 DRBD的维护和管理 ...

    网站架构技术

    高可用的网站架构 高可用的应用 高可用的服务 高可用的数据 CAP原理 数据备份 失效转移 高可用网站的软件质量保证 网站发布 自动化测试 预发布验证 代码控制 自动化发布 灰度发布 网站运行...

    《跟老男孩学Linux运维 Web集群实战》高清完整带详细书签

    着重讲解了Web集群后端的MySQL数据库、Web集群共享存储NFS、Nginx反向代理负载均衡、Keepalived高可用、Memcached缓存及session共享、Nagios企业级监控等技术实战,最后为读者规划了一个中等规模的网站集群架构解决...

    跟老男孩学linux运维:Web集群实战

    着重讲解了Web集群后端MySQL数据库、Web集群共享存储NFS、Nginx反向代理负载均衡、Keepalived高可用、Memcached缓存及session共享、Nagios企业级监控等技术实战,最后为读者规划了一个中等规模的网站集群架构解决...

    新浪首席DBA主讲 Mysql高级DBA实战

    杨海朝老师介绍 新浪首席DBA ,在大规模高并发、海量访问特别是大规模数据库运维方面有丰富的管理和维护经验。热衷于数据库设计、性能优化、分布式部署方案和高可用性方面的研究。...第14章:MySQL集群与高可用实战

    跟老男孩学Linux运维 Web集群实战.pdf

    着重讲解了Web集群后端的MySQL数据库、Web集群共享存储NFS、Nginx反向代理负载均衡、Keepalived高可用、Memcached缓存及session共享、Nagios企业级监控等技术实战,最后为读者规划了一个中等规模的网站集群架构解决...

    跟老男孩学Linux运维:集群实战

    着重讲解了Web集群后端的MySQL数据库、Web集群共享存储NFS、Nginx反向代理负载均衡、Keepalived高可用、Memcached缓存及session共享、Nagios企业级监控等技术实战,最后为读者规划了一个中等规模的网站集群架构解决...

    决战Nginx: 系统卷 - 高性能Web服务器详解与运维.z01

     陶利军,互联网行业高端低调人士,专注于Linux平台下开源产品的研究和推广,运维构架(服务搭建、集群及高可用),网络安全评估,分布式存储等。 编辑推荐:  《决战Nginx系统卷:高性能Web服务器详解与运维》...

    决战Nginx: 系统卷 - 高性能Web服务器详解与运维.zip

     陶利军,互联网行业高端低调人士,专注于Linux平台下开源产品的研究和推广,运维构架(服务搭建、集群及高可用),网络安全评估,分布式存储等。 编辑推荐:  《决战Nginx系统卷:高性能Web服务器详解与运维》...

    老男孩Mysql高级DBA 实战新浪首席DBA 老男孩教育杨海朝老师全程主讲 老男孩Mysql视频.txt

    ├─L001-oldboy-mysql-dba-lesson01 │ 101_rec.mp4 │ 102_rec.mp4 │ 103_rec.mp4 │ 104_rec.mp4 │ 105_rec.mp4 │ 106_rec.mp4 │ 107_rec.mp4 │ MySQL-day1课件.rar ... 1405-MySQL集群与高可用实战_rec.mp4

    discoh:当且仅当系统的所有组件在任何时候都对每个键的最新全局写入值具有一致的视图时,才能说分布式系统是一致的

    discoh可以与包含任何缓存集群(例如memcached或Redis或您喜欢的缓存集群)的现有基础结构快速集成。 我该如何开始? 更改客户端代码以包括以下rpc调用:每当执行读取操作时,将v'= discoh_read(k)与av = get(k...

    java开源包1

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包11

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包2

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包3

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包6

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包5

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包10

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包4

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

    java开源包8

    Flume 是一个分布式、可靠和高可用的服务,用于收集、聚合以及移动大量日志数据,使用一个简单灵活的架构,就流数据模型。这是一个可靠、容错的服务。 彩信发送开发包 apimms apimms 提供了各种语言用来发送彩信...

Global site tag (gtag.js) - Google Analytics