热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysqlproxy0.8版本读写分离测试总结

虽说,mysql-proxy0.8版本出来的时候,标榜自己解决了哪些问题,但是根据我实际测试的情况,测试过程中还有重启的记录

虽说,mysql-proxy0.8版本出来的时候,标榜自己解决了哪些问题,但是根据我实际测试的情况,测试过程中还有重启的记录,

测试环境3台64位centos5.4虚拟机:

192.168.0.26 mysql-proxy

192.168.0.24 mysql-master

192.168.0.10 mysql-slave

#!/bin/sh

/root/mysql-proxy-0.8.0-linux-glibc2.3-x86-64bit/bin/mysql-proxy \
--daemon \
--keepalive \
--admin-address=:4041 \
--admin-username=root \
--admin-password=123456 \
--admin-lua-script=/root/mysql-proxy-0.8.0-linux-glibc2.3-x86-64bit/share/doc/mysql-proxy/admin-sql.lua \
--log-level=debug \
--log-file=/var/log/mysql-proxy.log \
--proxy-address=:6666 \
--proxy-backend-addresses=192.168.0.24:3306 \
--proxy-read-only-backend-addresses=192.168.0.10:3306 \
--proxy-pool-no-change-user=disabled \
--proxy-lua-script=/root/mysql-proxy-0.8.0-linux-glibc2.3-x86-64bit/share/doc/mysql-proxy/rw-splitting.lua 2>&1

启动debug模式,修改后的rw-splitting.lua,在终端我们会看到以下提示信息:

简单的通过命令行,测试一下,

mysql -h 192.168.0.26 -P6666 -u root -p'123456'

通过终端可以显示

代码

[root@sunss-26 ~]# sh mysql-proxy.sh
[root@sunss-26 ~]#
[connect_server] 192.168.0.26:46062
[
1].connected_clients = 0
[
1].pool.cur_idle = 0
[
1].pool.max_idle = 8
[
1].pool.min_idle = 4
[
1].type = 1
[
1].state = 0
[
1] idle-conns below min-idle
[read_query]
192.168.0.26:46062
current backend
= 0
client
default db =
client username
= root
query
= select @@version_comment limit 1
sending to backend :
192.168.0.24:3306
is_slave :
false
server
default db:
server username : root
in_trans :
false
in_calc_found :
false
COM_QUERY :
true

[connect_server]
192.168.0.26:46064
[
1].connected_clients = 0
[
1].pool.cur_idle = 0
[
1].pool.max_idle = 8
[
1].pool.min_idle = 4
[
1].type = 1
[
1].state = 1
[
1] idle-conns below min-idle
[read_query]
192.168.0.26:46064
current backend
= 0
client
default db =
client username
= root
query
= select @@version_comment limit 1
sending to backend :
192.168.0.24:3306
is_slave :
false
server
default db:
server username : root
in_trans :
false
in_calc_found :
false
COM_QUERY :
true

出现的问题是:

1.在命令端,输入命令后无响应,查看日志,显示:

代码

2010-10-28 23:29:24: (critical) network-mysqld.c:510: received packet-id 0, but expected 3 ... out of sync.
2010-10-28 23:29:24: (critical) network-mysqld.c.1254: network_mysqld_read(CON_STATE_READ_QUERY) returned an error

2.使用压力测试工具测试,跟踪表明mysql-proxy创建的子进程无法退出,导致进程挂起,别连接要么连接失败,要么连接没响应,如果连接越来越过,这些堆积的子进程也会越来越多,资源无法释放(kill,或者CTRL+C除外)

3.读写分离倒是可以做到的,但是目前mysql-proxy目前还不支持预编译语句(prepare statement)

       最后总结下吧,mysql-proxy还是不够稳定,大家遇到这种情况是怎么处理的,不妨说出来,呵呵

转:https://www.cnblogs.com/sunss/archive/2010/10/28/1863659.html



推荐阅读
  • 整整的花了一个下午的时候,才在lua中调用了动态链接库。比起其他脚本语言,lua的调用方式算是比较繁琐的,但是lua的编程思想非常的统一& ... [详细]
  • baresip android编译、运行教程1语音通话
    本文介绍了如何在安卓平台上编译和运行baresip android,包括下载相关的sdk和ndk,修改ndk路径和输出目录,以及创建一个c++的安卓工程并将目录考到cpp下。详细步骤可参考给出的链接和文档。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 本文介绍了如何在Azure应用服务实例上获取.NetCore 3.0+的支持。作者分享了自己在将代码升级为使用.NET Core 3.0时遇到的问题,并提供了解决方法。文章还介绍了在部署过程中使用Kudu构建的方法,并指出了可能出现的错误。此外,还介绍了开发者应用服务计划和免费产品应用服务计划在不同地区的运行情况。最后,文章指出了当前的.NET SDK不支持目标为.NET Core 3.0的问题,并提供了解决方案。 ... [详细]
  • PG12新增的VACUUM命令的SKIP_LOCKED选项
    PG12版本的VACUUM命令新增了SKIP_LOCKED选项,该选项使得vacuum命令在遇到被lock住的table时可以跳过并被视为成功执行。之前的版本中,vacuum命令会一直处于等待状态。本文还提到了PostgreSQL 12.1版本的相关信息。 ... [详细]
  • 本文概述了JNI的原理以及常用方法。JNI提供了一种Java字节码调用C/C++的解决方案,但引用类型不能直接在Native层使用,需要进行类型转化。多维数组(包括二维数组)都是引用类型,需要使用jobjectArray类型来存取其值。此外,由于Java支持函数重载,根据函数名无法找到对应的JNI函数,因此介绍了JNI函数签名信息的解决方案。 ... [详细]
  • 如何优化Webpack打包后的代码分割
    本文介绍了如何通过优化Webpack的代码分割来减小打包后的文件大小。主要包括拆分业务逻辑代码和引入第三方包的代码、配置Webpack插件、异步代码的处理、代码分割重命名、配置vendors和cacheGroups等方面的内容。通过合理配置和优化,可以有效减小打包后的文件大小,提高应用的加载速度。 ... [详细]
  • tcpdump 4.5.1 crash 深入分析
    tcpdump 4.5.1 crash 深入分析 ... [详细]
  • 正则表达式及其范例
    为什么80%的码农都做不了架构师?一、前言部分控制台输入的字符串,编译成java字符串之后才送进内存,比如控制台打\, ... [详细]
  • 三、查看Linux版本查看系统版本信息的命令:lsb_release-a[root@localhost~]#lsb_release-aLSBVersion::co ... [详细]
  • Thisissuewasoriginallyopenedbyashashicorp/terraform#5664.Itwasmigratedhe ... [详细]
  • Doesamemoryleakin64bittakelongertocauseanOutOfMemor ... [详细]
  • 第2讲 Android Camera Native Framework 初识cameraserver进程
    本讲是AndroidCameraNativeFramework专题的第2讲,我们初识CameraServer,包括如下内容:Camera ... [详细]
author-avatar
汽车一族coolboy_518
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有