平民软件OneProxy的强大

  使用MySQL时,随着时间、业务的需求、用户量以及数据量的逐渐增加,相对的,数据库的的操作更是剧增,最终将会使MySQL达到某个瓶颈,那么MySQL的性能将会大大降低,更严重的话将会影响整个系统架构的正常运行,相信看过《太空旅客》这部电影的小伙伴们都知道,飞船的系统有一处瘫痪了,其他的系统想帮忙减轻负重,但是这个工作量太大了分担不过来,接着其他的系统也瘫痪了。

    那么如何跨过这个瓶颈,提高MySQL的并发量呢有很多,比如说分布式数据库、读写分离、高可用负载均衡、增加缓存服务器等等。

    但今天的主角主要是接下来要介绍的 OneProxy 数据库中间件。

 http://blog.51cto.com/13444271/2130227

   OneProxy   

    OneProxy可以让不同应用复用到后端数据库的连接,降低数据库的并发连接数;可以即时发现和踢除不可用的后端节点,将应用请求转发到其他可用节点实现高效故障隔离, 可配合Galera Cluster或MySQL Group Replication实现快速切换; 内置的守护进程模式和HA VIP机制,可以轻松实现Proxy的单机及多机高可用,确保业务服务的稳定性;可以透明地将查询语句分发到多个MySQL备库执行, 用读写分离方案支持上千万的并发访问;也可以根据SQL语句中的值进行分库分表路由, 将写操作均匀分散到多个MySQL主库上,以构建每秒百万TPS的MySQL集群; 跨多分片的结果集合并, 极大地简化了应用程序的开发工作量;在分片的情况下可根据分片并行执行SQL,解决了MySQL在大数据量下的汇总统计性能问题。

    还可以实时透明地分析流量,包括SQL语句和结果集,实时统计SQL和事务的运行时间,分析事务的SQL结构,得到各种不同维度的实时性能 告, 并可通过内置Web服务器方便直观地查看实时性能数据,弥补上层应用和MySQL实时性能监控方面的不足。使用C&C++开发,充分利用高性能的异步 络事件编程框架, 使单个OneProxy实例可支持高达40W的QPS/TPS;并可充分利用和管理内存,无Java类语言的内存回收问题,确保7×24的稳定性;内置的守护进程模式和HA VIP机制,可以轻松实现Proxy的多机高可用; 

 

系统架构 

 

    架构可以有很多种,比如两台OneProxy做一个Keeplive的架构,但这里搭建OneProxy+MySQL主从复制,用简单的架构说明OneProxy实现的过程,一台OneProxy做中间件,实现后端的MySQL负载,同时后端的两台MySQL使用mysqlreplicate做一个非常简单的主从复制;

 

 

  用mysqlreplicate做主从复制   

      1  安装mysql-utilities 

 

 

      2  开通主库访问权限 

 

 

      3  配置主从 

 

     选项解析:

     –master        连接主数据库的信息   格式:用户:密码@IP地址:端口

     –slave           连接从数据库的信息   格式:用户:密码@IP地址:端口

     –rpl-user      设定同步的用户名和密码   格式:用户:密码                  

     -b                  设定从记录在第一个事件开始复制                                

 

      4  查看主从状态 

 

 

    注:主从复制不一定要用mysqlreplicate工具搭建,此工具只是方便快捷,还是需要了解主从复制的具体配置可以移步到下面链接的博客

    http://blog.51cto.com/13444271/2114277

 

    OneProxy实现读写分离与负载均衡   

     1  下载OneProxy的源码包 

 

 

 

   

     2  OneProxy的配置文件 

 

     文件说明:

     conf                               配置文件        

     oneproxy.service           启动脚本        

     log                                 日志文件        

     demo.sh                        初次启动脚本 

 

     3  修改demo.sh脚本的OneProxy家目录 

 

 

     4  修改启动脚本的OneProxy家目录 

 

 

     5  将密文密码加密 

 

 

     6  配置OneProxy 

 

 

     7  启动OneProxy 

 

 

     8  查看服务监听状态 

 

 

     9  访问OneProxy的Web页面 

    Url:http://IP地址:8080

 

 

    最后   

    OneProxy功能强大,这里如果要一一说明的话恐怕要上个一千零一夜,读者可以自行摸索摸索,这里列出几个方向OneProxy的分表分库可以帮程序猿剩下很多代码和工作量,同时借着Web的图形界面分析使用的情况,更能有效的提前发现问题,解决问题,提高效率,后续等我研究绝对透彻了,再跟大家继续探究,如果这篇文章有什么不对的地方欢迎大家指出,同时,如果在那个地方有问题欢迎在下面的评论中提出,我也非常高兴能和大家虚心探讨!

相关资源:信用卡管理卡民信用卡管理软件v3.2.5-其它代码类资源-CSDN文库

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年1月9日
下一篇 2019年1月9日

相关推荐