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

哪里可以接做ppt的网站浙江百度代理公司

哪里可以接做ppt的网站,浙江百度代理公司,wordpress安装数据库连接错误,中国工程建设网官方网站一、读写分离在高可用架构中的核心作用 1.读写分离与高可用的协同价值 在MySQL高可用架构中,读写分离不仅是性能优化的手段,更是提升系统容错能力的关键策略。通过将写操作(INSERT、UPDATE、DELETE) 集中到主节点,读…

一、读写分离在高可用架构中的核心作用

1.读写分离与高可用的协同价值

在MySQL高可用架构中,读写分离不仅是性能优化的手段,更是提升系统容错能力的关键策略。通过将写操作(INSERT、UPDATE、DELETE) 集中到主节点,读操作(SELECT) 分散到多个从节点或双主节点,系统可实现以下目标:

  • 负载均衡:避免单一节点因高并发读请求导致的性能瓶颈。
  • 故障隔离:主节点故障时,读操作仍可由从节点继续处理,降低业务中断风险。
  • 资源优化:充分利用从节点的计算资源,提升整体吞吐量。

2.读写分离在双主架构的实现特点

文档中的案例采用 MySQL双主复制(Master1 ↔ Master2) 架构,两节点互为主从,均支持读写操作。结合HAProxy的负载均衡能力,可通过以下方式实现读写分离:

  • 静态分离:手动指定写操作路由到某一主节点,读操作均衡到双主节点。
  • 动态分离:基于SQL类型自动路由请求(需HAProxy配置ACL规则)。

二、HAProxy在读写分离中的核心配置

1.HAProxy的负载均衡机制

HAProxy作为反向代理,通过监听客户端请求并将其分发至后端MySQL节点,支持多种负载均衡算法(如轮询、最少连接数)。在读写分离场景中,需通过配置区分写请求与读请求的路由逻辑

listen mysqlbind 0.0.0.0:3306mode tcpbalance leastconnserver mysql1 192.168.10.101:3306 check port 3306 maxconn 300server mysql2 192.168.10.102:3306 check port 3306 maxconn 300
  • 当前配置的局限性:

默认将所有请求(包括读写)均衡分发到双主节点,未显式区分读写操作。

  • 改进方向:

需通过ACL规则识别SQL类型,将写请求定向到指定主节点,读请求分发到所有节点。

2.实现读写分离的进阶配置

步骤1:定义前端规则区分读写请求

frontend mysql_frontendbind *:3306mode tcp# 定义ACL规则识别写请求(如包含INSERT/UPDATE/DELETE关键字)acl is_write payload(0,7) -m bin 494e53455254 555044415445 44454c455445# 路由写请求至主节点组use_backend master_group if is_write# 默认路由读请求至从节点组default_backend slave_group

步骤2:定义后端服务器组

backend master_groupmode tcpserver master1 192.168.10.101:3306 checkserver master2 192.168.10.102:3306 check backup  # 主节点故障时切换backend slave_groupmode tcpbalance roundrobinserver slave1 192.168.10.101:3306 checkserver slave2 192.168.10.102:3306 check
  • 关键参数说明:
    • acl is_write:通过二进制匹配SQL语句前7字节,识别常见写操作关键字(如INSERT的十六进制为494e53455254)。
    • use_backend:根据ACL条件选择后端组。
    • backup:标记备用节点,仅在主节点不可用时启用。

步骤3:启用HAProxy的日志与健康检查

globallog /dev/log local0log-tag HAProxy-MySQLdefaultslog globaloption tcplogtimeout client 30stimeout server 30stimeout connect 5s

三、双主架构下的数据一致性保障

1.双主复制的同步机制

双主架构中,数据同步依赖MySQL的二进制日志(Binlog)与GTID(全局事务标识),确保事务在双节点间有序执行:

  • 基于行的复制:记录数据行的变更,避免因函数或随机值导致的主从不一致。
  • 并行复制:从库的SQL线程多线程重放事件,减少同步延迟。

配置优化建议

# 在my.cnf中配置
binlog_format = ROW           # 使用行级复制
gtid_mode = ON                # 启用GTID
enforce_gtid_consistency = ON # 强制GTID一致性
slave_parallel_workers = 4    # 并行复制线程数

2.冲突检测与解决策略

双主架构可能因同时写入相同数据引发冲突,需通过以下方式规避:

  • 业务层分片:按业务维度划分数据写入范围(如用户ID取模)。
  • 自增ID偏移:设置不同的自增步长(如Master1自增ID为奇数,Master2为偶数)。
# Master1配置
auto_increment_increment = 2
auto_increment_offset = 1# Master2配置
auto_increment_increment = 2
auto_increment_offset = 2

四、Keepalived与HAProxy的高可用协同

1.keepalived的VIP漂移机制

Keepalived通过VRRP协议管理虚拟IP(VIP),监控HAProxy进程状态,实现故障自动转移:

  • 健康检查脚本:定期检测HAProxy进程存活状态。
  • 优化级策略:节点优先级决定VIP归属,主节点故障时备用节点接管。

文档中的Keepalived配置解析

vrrp_instance VI_1 {state BACKUPinterface ens33virtual_router_id 51priority 100  # Keepalived1优先级高于Keepalived2(99)virtual_ipaddress {192.168.10.100}track_script {chk_haproxy}
}
  • nopreempt:禁止优先级高的节点恢复后抢占VIP,避免频繁切换。
  • notify_backup/notify_fault:状态变更时触发HAProxy重启或停止,确保服务连贯性

2.读写分离与VIP的结合优化

  • 写请求的VIP绑定:应用层通过VIP连接数据库,写请求自动路由至当前主节点。
  • 读请求的负载均衡:HAProxy根据后端节点健康状态动态调整流量分配。

五、读写分离的验证与性能测试

1.功能性验证

步骤1:写入数据验证

-- 通过VIP执行写操作
INSERT INTO orders (user_id, amount) VALUES (1001, 150.00);
  • 验证点:数据应同步至双主节点,通过SHOW SLAVE STATUS确认复制状态。

步骤2:读请求分发验证

-- 多次执行读操作
SELECT * FROM orders WHERE user_id = 1001;
  • 验证点:通过HAProxy日志或SHOW PROCESSLIST确认请求分发至不同节点。

2.性能压测工具与指标

  • 工具选择:
    • ​​​​​​​SysBench:模拟OLTP读写混合场景。
    • JMeter:定制化SQL请求压测。
  • 关键指标:
    • ​​​​​​​吞吐量(TPS):单位时间处理的读写请求数。
    • 平时延迟(Latency):请求从发起到响应的平均耗时。
    • 错误率:失败请求占比,反映系统稳定性。
# SysBench读写混合测试
sysbench oltp_read_write \
--mysql-host=192.168.10.100 \
--mysql-port=3306 \
--mysql-user=test \
--mysql-password=123456 \
--mysql-db=test \
--tables=10 \
--table-size=100000 \
--threads=32 \
--time=300 \
--report-interval=10 \
run

六、常见问题与解决方案

1.主从延迟导致读脏数据

  • 问题现象:读请求获取到未同步的数据。
  • 解决方案:
    • ​​​​​​​半同步复制:确保至少一个从库确认接收Binlog后主库才提交事务。
    • 读请求路由策略:将一致性要求高的读操作定向到主库。

2.HAProxy单点故障

  • 问题现象:HAProxy节点宕机导致服务不可用。
  • 解决方案:
    • ​​​​​​​HAProxy集群:部署多HAProxy节点,结合Keepalived实现VIP漂移。
    • DNS负载均衡:使用Round Robin DNS将请求分发至多个HAProxy实例。

3.负载均衡策略不均衡

  • 问题现象:部分节点负载过高,其他节点闲置。
  • 解决方案:
    • ​​​​​​​动态权重调整:根据节点CPU、连接数等指标动态分配流量。
    • 一致性哈希算法:相同请求始终路由到同一节点,减少缓存穿透。
http://www.dtcms.com/wzjs/139888.html

相关文章:

  • vs2015做简单网站谷歌搜索引擎营销
  • 怎么做租号网站ip域名查询网
  • 做网站的那些高清图上哪里找专业排名优化工具
  • 87网站一起做怎么免费建公司网站
  • 用哪个网站做首页比较好pc端网页设计公司
  • 门户网站 字体广州网络推广策划公司
  • 怎么做网站大图片滚动零基础学seo要多久
  • 做赌石网站客服的经验电商网站建设制作
  • 建设工程学部研究生培养网站seo优化技术招聘
  • 学做网站论坛熊掌谷歌推广费用多少
  • 做移动网站优化首企业培训机构排名前十
  • 如何做制作头像的网站seo网站优化方案案例
  • 做美妆批发的网站有哪些北京网站提升排名
  • 网站正在建设中中文模板百度网站怎么优化排名靠前
  • 微梦网站建设今日热点新闻事件摘抄
  • 网站建设的指标宁波如何做抖音seo搜索优化
  • 建设企业网站官方登录站内推广
  • 番禺建设网站公司外贸营销网站怎么建站
  • 搜网站内容线上培训平台
  • 织梦免费购物网站短视频营销
  • 网站服务器供应商腾讯广告
  • 品牌网站建设的要点个人网站制作源代码
  • 建设视频网站费用吗seo知识培训
  • 如何做网站站长扬中网站制作
  • 租房网站开发需求文档网络营销论文3000字
  • 个人主页模板psdseo排名推广
  • 深圳市住房和建设网站优化建站
  • 龙口建网站公司哪家好搜索关键词优化
  • 昆明网站关键字优化怎么在网上做推广
  • 上海 网站建设业务营销方法搜索引擎bing