当前位置: 首页 > wzjs >正文

杭州拱墅区做网站seo的含义是什么意思

杭州拱墅区做网站,seo的含义是什么意思,网站推广服务算中介吗,滨州做网站公司一、Memcached主主复制技术原理 Memcached原生不支持复制,需通过repcached分支实现双向同步。其关键机制包括: 双向同步架构 两节点互为主备(Master-Master),任意节点写入的数据会同步至对端。同步基于TCP协议&#x…

一、Memcached主主复制技术原理

Memcached原生不支持复制,需通过repcached分支实现双向同步。其关键机制包括:

  1. 双向同步架构

    • 两节点互为主备(Master-Master),任意节点写入的数据会同步至对端。
    • 同步基于TCP协议,通过-x <peer_ip>参数指定对端地址启动服务。
    • 示例命令
      # 节点A(IP:10.1.1.66)
      memcached -d -m64 -l0.0.0.0 -p11211 -x10.1.1.77
      # 节点B(IP:10.1.1.77)
      memcached -d -m64 -l0.0.0.0 -p11211 -x10.1.1.66
      

      2.数据一致性保障

      • 采用时间戳机制解决冲突,后写入的数据覆盖先写入的数据。
      • 需避免脑裂:通过Keepalived的VIP漂移确保客户端始终访问同一入口。

二、Keepalived高可用核心组件

  1. VRRP协议实现

    • 虚拟路由器ID(VRID)标识集群,MASTER节点持有虚拟IP(VIP)。
    • 优先级机制:MASTER(优先级100)故障时,BACKUP(优先级90)接管。

    •  
  2. 三层健康检查体系

    • Layer3:ICMP Ping检测节点存活。
    • Layer4:TCP端口检查(默认11211)。
    • Layer5:HTTP GET请求+MD5校验(可选,需配置URL监控)。

三.拓扑图

四.步骤

(1)搭建memcached 主主复制架构

Memcached 的复制功能支持多个 Memcached 之间相互复制(双向复制,主备都是可读可写的),可以解决 Memcached 的容灾问题。

memcached 本身不支持相互复制,需要卸载rpm 安装的memcached ,换带有支持复制功能的memcached;

[root@localhost ~]# yum  -y remove memcached

(2)环境准备

假设有两台服务器用于 Memcached 主主复制,分别为 Server A(10.1.1.28)和 Server B(10.1.1.29)。确保两台服务器都运行 CentOS 7 系统,并且网络可以正常通信。

(3)安装依赖

在两台服务器上都执行以下命令安装编译所需的依赖:

[root@localhost ~]# yum install -y gcc make libevent-devel

(4)下载并安装支持复制的 Memcached(repcached)

repcached 是实现 Memcached 复制功能的扩展,以下是安装步骤:

  1. 下载 repcached

[root@localhost ~]# wget http://downloads.sourceforge.net/repcached/memcached-1.                                                                                   2.8-repcached-2.2.tar.gz

2.解压文件

[root@localhost ~]# tar zxvf memcached-1.2.8-repcached-2.2.tar.gz
[root@localhost ~]# cd memcached-1.2.8-repcached-2.2

3.修改文件

[root@localhost memcached-1.2.8-repcached-2.2]# vim   memcached.c //改成如下样子,删了两行内容

[root@localhost memcached-1.2.8-repcached-2.2]# vim replication.c //改成如下样子,加了一行

4.配置编译选项

[root@localhost memcached-1.2.8-repcached-2.2]# ./configure --prefix=/usr/local/                                                                                   memcached  --enable-replication --with-libevent=/usr/lib64/

5. 编译并安装

[root@localhost memcached-1.2.8-repcached-2.2]# make
make  install 

(5)配置主主复制

  1. 启动 Server A 的 Memcached

[root@localhost ~]# useradd  memcached
useradd:用户“memcached”已存在
[root@localhost ~]# ./memcached -d -u memcached  -m 64 -l 0.0.0.0 -p 11211 -x 10                                                                                   .1.1.29
-bash: ./memcached: 没有那个文件或目录
[root@localhost ~]# ls
anaconda-ks.cfg                memcached-1.2.8-repcached-2.2.tar.gz
memcached-1.2.8-repcached-2.2  test.php
[root@localhost ~]# cd /usr/local/memcached/bin
[root@localhost bin]# ./memcached -d -u memcached  -m 64 -l 0.0.0.0 -p 11211 -x                                                                                    10.1.1.29
[root@localhost bin]# netstat -naptl |grep memcached
tcp        0      0 0.0.0.0:11211           0.0.0.0:*               LISTEN                                                                                         1768/./memcached
tcp        0      0 0.0.0.0:11212           0.0.0.0:*               LISTEN                                                                                         1768/./memcached

2.启动 Server B 的 Memcached

[root@localhost ~]# useradd  memcached
useradd:用户“memcached”已存在
[root@localhost ~]# cd /usr/local/memcached/bin
[root@localhost bin]# ./memcached -d -u memcached  -m 64 -l 0.0.0.0 -p 11211 -x                                                                                    10.1.1.28
[root@localhost bin]# netstat -naptl |grep memcached
tcp        0      0 0.0.0.0:11211           0.0.0.0:*               LISTEN                                                                                         2143/./memcached
tcp        0      0 10.1.1.29:49924         10.1.1.28:11212         ESTABLISHED                                                                                    2143/./memcached

(6)验证主主复制

1. 在 Server A 插入数据

[root@localhost bin]# telnet 10.1.1.28 11211
Trying 10.1.1.28...
Connected to 10.1.1.28.
Escape character is '^]'.
set test_key 0 0 5
value
STORED
quit
Connection closed by foreign host.

2. 在 Server B 验证数据

[root@localhost bin]# telnet 10.1.1.29 11211
Trying 10.1.1.29...
Connected to 10.1.1.29.
Escape character is '^]'.
get test_key
VALUE test_key 0 5
value
END
quit

如果能获取到在 Server A 上插入的数据,说明主主复制配置成功。同理,在 Server B 上插入数据,也应该能在 Server A 上获取到。

注意:同步的前提,使用相同用户启动服务;

五.搭建memcached 主主复制+keepalived 高可用

1.在两个节点上都安装keepalived

[root@localhost bin]# yum -y install keepalived ipvsadm

  2.在10.1.1.28 上的配置

[root@localhost keepalived]# cat /etc/keepalived/keepalived.conf
vrrp_script chk_memcached {script "/usr/bin/pgrep memcached"interval 2weight -20
}
vrrp_instance VI_1 {state MASTERinterface ens33virtual_router_id 51priority 100advert_int 1authentication {auth_type PASSauth_pass 123456}virtual_ipaddress {10.1.1.30/24}track_script {chk_memcached}
}

在另一台上,仅修改state和priority

state BACKUP 
priority 90 

3.启动keepalived

[root@localhost keepalived]# systemctl start keepalived
[root@localhost keepalived]# systemctl restart keepalived

查看两边ip,此时vip在master

4. 测试故障切换

手动停止memcached: 在 10.1.1.28(master)

[root@localhost keepalived]# pkill -9 memcached

观察vip 飘逸此时vip在backup

六.总结

1. Memcached 概述与核心功能

功能:Memcached 是一个高性能的分布式内存对象缓存系统,主要用于缓存数据库查询结果、API调用结果等,通过减少数据库访问次数提升动态Web应用的性能。

特点:

协议简单,基于键值存储(仅支持String类型)。

多线程模型,适合高并发场景。

不支持持久化,重启后数据丢失,适合临时缓存场景。

依赖客户端分片(如一致性哈希)实现分布式。

2. 高可用配置(主主复制 + Keepalived)

主主复制

下载并编译支持复制的repcached版本,解决编译错误(如修改memcached.c中的IOV_MAX定义)。

启动服务时指定对端IP:

./memcached -d -u memcached -m 64 -l 0.0.0.0 -p 11211 -x <对端IP>

验证数据同步:在A节点写入数据,B节点可读取,反之亦然。

Keepalived 高可用

安装Keepalived:yum install -y keepalived

配置VIP和健康检测脚本:

vrrp_script chk_memcached {script "/usr/bin/pgrep memcached"interval 2weight -20}vrrp_instance VI_1 {state MASTER  # 主节点为MASTER,备节点为BACKUPpriority 100  # 主节点优先级高于备节点virtual_ipaddress { 10.1.1.30/24 }track_script { chk_memcached }}

测试故障切换:手动停止主节点Memcached,观察VIP漂移至备节点。

http://www.dtcms.com/wzjs/37217.html

相关文章:

  • wordpress空格代码sem优化软件哪家好
  • 自己做的网站如何让别的网可以查看推广网站最有效办法
  • vs可以做网站吗软件外包
  • 网站轮播图能用什么软件做网络推广公司排名
  • 网站后台添加投票系统soso搜搜
  • 建站网站模板凡科建站收费价目表
  • 网站 推广 实例大连百度推广公司
  • 深圳做app网站公司成都seo经理
  • 官方网站后台图片下载怎么做seo知识是什么意思
  • 淄博网站推广北京网络营销策划公司
  • 江都区城乡建设局网站马局哈尔滨seo关键词排名
  • 邢台163信息交友网站优化推广方案
  • 建立网站的必要性seo站
  • 大理装饰公司做网站南宁网络优化seo费用
  • 做外贸学习网站seo排名优化软件免费
  • 茂名网站建设哪家好seo 优化
  • 化妆品的网站建设一站式网站设计
  • 重庆做公司网站百度关键词优化快速排名软件
  • 基木鱼建站目前最火的推广平台
  • 想看外国的网站怎么做电脑培训网上免费课程
  • 宁德网站建设维护网站收录申请
  • 微网站二级页面怎么做seo必备软件
  • 保定建站服务高端定制网站建设
  • 好知网做网站百度seo自动优化
  • 平邑网站制作百度首页官网
  • 做网站去哪推广好seo专员是什么职业
  • 晋城网站制作公司整合网络营销是什么
  • 企业网站制作的书上海牛巨微seo关键词优化
  • 培训机构做网站宣传网推平台
  • 三网合一 做网站seo技术培训东莞