0

0

Amoeba For MySQL 功能测试让人满意

php中文网

php中文网

发布时间:2016-06-07 16:31:50

|

1378人浏览过

|

来源于php中文网

原创

同事 struct chen 的 amoeba for mysql 项目已经 出来不短时间了,可一直没有时间好好体验,最近一直在做一些软件和硬件的功能以及性能相关的测试工作,amoeba for mysql自然也将被列入计划之内。 对 Amoeba For MySQL 的测试到目前位置主要还是功能方面的测

同事 struct chen 的 amoeba for mysql 项目已经 出来不短时间了,可一直没有时间好好体验,最近一直在做一些软件和硬件的功能以及性能相关的测试工作,amoeba for mysql自然也将被列入计划之内。

对 Amoeba For MySQL 的测试到目前位置主要还是功能方面的测试,配置了一套四台机器的环境:

Server A: Amoeba Server

Server B: MySQL Master

Server C: MySQL Slave1

Server D: MySQL Slave2

软件环境:RHEL5.2 (X86_64),JAVA 1.5.0_16, Amoeba For MySQL 0.31

测试功能:

绘蛙-创意文生图
绘蛙-创意文生图

绘蛙平台新推出的AI商品图生成工具

下载

1、读写分离
2、数据垂直切分
3、数据水平切分

amoeba.xml配置如下:

?xmlversion="1.0"encoding="gbk"?>
!DOCTYPEamoeba:configurationSYSTEM"amoeba.dtd">
amoeba:configurationxmlns:amoeba="http://amoeba.meidusa.com/">
    
server>
        
propertyname="port">8066property>
        
propertyname="ipAddress">10.0.38.21property>
        

        
propertyname="readThreadPoolSize">500property>
        

        
propertyname="clientSideThreadPoolSize">500property>
        

        
propertyname="serverSideThreadPoolSize">500property>
        

        
propertyname="netBufferSize">200property>
        

        
propertyname="tcpNoDelay">trueproperty>
        
propertyname="user">userproperty>
        
propertyname="password">passwordproperty>
    
server>
    
    
connectionmanagerlist>
        
connectionmanagername="defaultManager">
            
classname>com.meidusa.amoeba.net.AuthingableConnectionManagerclassname>
        
connectionmanager>
    
connectionmanagerlist>
    
    
dbserverlist>
 
        
dbservername="master">
            
factoryconfig>
                
classname>com.meidusa.amoeba.mysql.net.MysqlServerConnectionFactoryclassname>
                
propertyname="manager">defaultManagerproperty>
                
propertyname="port">3306property>
                
propertyname="ipAddress">10.0.38.37property>
                
propertyname="schema">testproperty>
                
propertyname="user">rootproperty>
                
propertyname="password">passwordproperty>               
            
factoryconfig>
 
            
poolconfig>
                
classname>com.meidusa.amoeba.net.poolable.PoolableObjectPoolclassname>
                
propertyname="maxActive">500property>
                
propertyname="maxIdle">200property>
                
propertyname="minIdle">10property>
                
propertyname="minEvictableIdleTimeMillis">600000property>
                
propertyname="timeBetweenEvictionRunsMillis">600000property>
                
propertyname="testOnBorrow">trueproperty>
                
propertyname="testWhileIdle">trueproperty>
            
poolconfig>
        
dbserver>
 
        
dbservername="slave1">
            
factoryconfig>
                
classname>com.meidusa.amoeba.mysql.net.MysqlServerConnectionFactoryclassname>
                
propertyname="manager">defaultManagerproperty>
                
propertyname="port">3306property>
                
propertyname="ipAddress">10.0.38.22property>
                
propertyname="schema">testproperty>
                
propertyname="user">rootproperty>
                
propertyname="password">passwordproperty>               
            
factoryconfig>
 
            
poolconfig>
                
classname>com.meidusa.amoeba.net.poolable.PoolableObjectPoolclassname>
                
propertyname="maxActive">500property>
                
propertyname="maxIdle">200property>
                
propertyname="minIdle">10property>
                
propertyname="minEvictableIdleTimeMillis">600000property>
                
propertyname="timeBetweenEvictionRunsMillis">600000property>
                
propertyname="testOnBorrow">trueproperty>
                
propertyname="testWhileIdle">trueproperty>
            
poolconfig>
        
dbserver>
 
        
dbservername="slave2">
            
factoryconfig>
                ... ...           
            
factoryconfig>
 
            
poolconfig>
                ... ...
            
poolconfig>
        
dbserver>
        
 
        
dbservername="virtualSlave"virtual="true">
            
poolconfig>
                
classname>com.meidusa.amoeba.server.MultipleServerPoolclassname>
                

                
propertyname="loadbalance">1property>
                
propertyname="poolNames">slave1,slave2property>
            
poolconfig>
        
dbserver>
        
    
dbserverlist>
    
    
queryrouter>
        
classname>com.meidusa.amoeba.mysql.parser.MysqlQueryRouterclassname>
        
propertyname="ruleConfig">${amoeba.home}/conf/rule.xmlproperty>
        
propertyname="functionConfig">${amoeba.home}/conf/functionMap.xmlproperty>
        
propertyname="ruleFunctionConfig">${amoeba.home}/conf/ruleFunctionMap.xmlproperty>
        
propertyname="LRUMapSize">1500property>
        
propertyname="defaultPool">masterproperty>
        
        
propertyname="writePool">masterproperty>
        
propertyname="readPool">virtualSlaveproperty>
        
propertyname="needParse">trueproperty>
    
queryrouter>
amoeba>

rule.xml配置:

?xmlversion="1.0"encoding="gbk"?>
!DOCTYPEamoeba:ruleSYSTEM"rule.dtd">
amoeba:rulexmlns:amoeba="http://amoeba.meidusa.com/">
    
tablerulename="test_horiz"schema="test"defaultPools="master">
        
rulename="rule1">
            
parameters>IDparameters>
            
expression> ![CDATA[ ID 100000000]]>expression>
            
defaultpools>masterdefaultpools>
            
readpools>slave1readpools>
            
writepools>masterwritepools>
        
rule>
        
        
rulename="rule2">
            
parameters>IDparameters>
            
expression> ![CDATA[ IDbetween100000001and200000000 ]]>expression>
            
defaultpools>masterdefaultpools>
            
writepools>master2writepools>
            
readpools>slave2readpools>
        
rule>
        
        
rulename="rule3">
            
parameters>IDparameters>
            
expression> ![CDATA[ ID> 200000000 ]]>expression>
            
defaultpools>masterdefaultpools>
        
rule>
 
    
tablerule>
    
tablerulename="master"schema="test"defaultPools="master"/>
    
tablerulename="slave1"schema="test"defaultPools="slave1"/>
    
tablerulename="slave2"schema="test"defaultPools="slave2"/>
    
tablerulename="master"schema="t"defaultPools="master"/>
amoeba>

由于第一步主要还只是测试读写分离与数据的垂直切分,所以水平切分的规则设置的很简单,仅仅是按照ID的范围设置简单的规则。而设置一些更为复杂的规则。

总体测试效果还是比较满意的,预期的功能都全部正常,当然所用于测试的SQL语句也大都比较简单,主要还是根据当前工作中遇到的一些SQL。

这次测试没有进行性能测试,等后面再找时间测试一下,不知道有没有哪位朋友已经做过了相应的性能测试没?性能测试之后就要开始规划应用到某些应用上面去了

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

705

2026.02.13

微博网页版主页入口与登录指南_官方网页端快速访问方法
微博网页版主页入口与登录指南_官方网页端快速访问方法

本专题系统整理微博网页版官方入口及网页端登录方式,涵盖首页直达地址、账号登录流程与常见访问问题说明,帮助用户快速找到微博官网主页,实现便捷、安全的网页端登录与内容浏览体验。

233

2026.02.13

Flutter跨平台开发与状态管理实战
Flutter跨平台开发与状态管理实战

本专题围绕Flutter框架展开,系统讲解跨平台UI构建原理与状态管理方案。内容涵盖Widget生命周期、路由管理、Provider与Bloc状态管理模式、网络请求封装及性能优化技巧。通过实战项目演示,帮助开发者构建流畅、可维护的跨平台移动应用。

117

2026.02.13

TypeScript工程化开发与Vite构建优化实践
TypeScript工程化开发与Vite构建优化实践

本专题面向前端开发者,深入讲解 TypeScript 类型系统与大型项目结构设计方法,并结合 Vite 构建工具优化前端工程化流程。内容包括模块化设计、类型声明管理、代码分割、热更新原理以及构建性能调优。通过完整项目示例,帮助开发者提升代码可维护性与开发效率。

22

2026.02.13

Redis高可用架构与分布式缓存实战
Redis高可用架构与分布式缓存实战

本专题围绕 Redis 在高并发系统中的应用展开,系统讲解主从复制、哨兵机制、Cluster 集群模式及数据分片原理。内容涵盖缓存穿透与雪崩解决方案、分布式锁实现、热点数据优化及持久化策略。通过真实业务场景演示,帮助开发者构建高可用、可扩展的分布式缓存系统。

61

2026.02.13

c语言 数据类型
c语言 数据类型

本专题整合了c语言数据类型相关内容,阅读专题下面的文章了解更多详细内容。

30

2026.02.12

雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法
雨课堂网页版登录入口与使用指南_官方在线教学平台访问方法

本专题系统整理雨课堂网页版官方入口及在线登录方式,涵盖账号登录流程、官方直连入口及平台访问方法说明,帮助师生用户快速进入雨课堂在线教学平台,实现便捷、高效的课程学习与教学管理体验。

15

2026.02.12

豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法
豆包AI网页版入口与智能创作指南_官方在线写作与图片生成使用方法

本专题汇总豆包AI官方网页版入口及在线使用方式,涵盖智能写作工具、图片生成体验入口和官网登录方法,帮助用户快速直达豆包AI平台,高效完成文本创作与AI生图任务,实现便捷智能创作体验。

669

2026.02.12

PostgreSQL性能优化与索引调优实战
PostgreSQL性能优化与索引调优实战

本专题面向后端开发与数据库工程师,深入讲解 PostgreSQL 查询优化原理与索引机制。内容包括执行计划分析、常见索引类型对比、慢查询优化策略、事务隔离级别以及高并发场景下的性能调优技巧。通过实战案例解析,帮助开发者提升数据库响应速度与系统稳定性。

58

2026.02.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP基础入门课程
PHP基础入门课程

共33课时 | 2.2万人学习

前端系列快速入门课程
前端系列快速入门课程

共4课时 | 0.4万人学习

MySQL 教程
MySQL 教程

共48课时 | 2.3万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号