`

mysql水平扩展DAL(数据访问层)压力测试

 
阅读更多

针对mysql的水平切分,项目开发的数据访问层(DAL)实现了应用对数据访问的路由和对数据库操作的支持,下面是从测试报告中摘取的部分测试情况,仅供参考。

 

 

测试环境:


web(1台):
2c Intel(R) Xeon(R) CPU E5606  @ 2.13GHz
8G
280G硬盘


mysql proxy(2台):
1台 master
1台 slave

 

4C Intel(R) Xeon(R) CPU           X5650  @ 2.67GHz

16G

 


数据库:
两台master 负责写    4C Intel(R) Xeon(R) CPU X5650  @ 2.67GHz  32G
两台slave 负责读  4C Intel(R) Xeon(R) CPU X5650  @ 2.67GHz  32G

 

 

测试用例:

1.单表增删查改

数据量:用户表部署在2个节点,共切分为10张用户表,每张表数据10W左右

 

2.连接查询:三张表的关联查询,每张表100W数据

 

3.集合查询(跨节点汇总) 用户表同1

 

 

 

测试结果数据:

 

单表:

单用户持续5分钟
单条更新测试 (保留一个索引)([Average]: 0.243  [90 Percent]:0.287  [Maximum]: 1.074)
单条插入测试 ([Average]: 0.226  [90 Percent]:0.319  [Maximum]: 0.889)
单条删除测试 ([Average]: 0.193  [90 Percent]:0.27  [Maximum]: 0.778)

 

500并发更新测试(保留一个索引)([Average]: 0.189  [90 Percent]:0.282
500并发查询测试([Average]: 0.122  [90 Percent]:0.338)
500并发删除测试([Average]: 0.129  [90 Percent]:0.334)
500并发插入测试([Average]: 0.156  [90 Percent]:0.368)

 

连接查询:

待补充

 

 

测试结论:

该DAL对mysql的水平扩展的支持是功能基本稳定,同时具备了较好的并发访问的支持能力。

 

 

0
2
分享到:
评论

相关推荐

    一个经典的数据库访问层实现

    数据库访问层(Database Access Layer,通常简称为DAL)是软件架构中的一个重要组成部分,它负责处理应用程序与数据库之间的交互。在本案例中,我们讨论的是一个经典的数据库访问层实现,这通常涉及到面向对象的设计...

    酒店系统java源码-dal:CtripDatabaseAccessLayer.CtripDAL是携程框架部开发的数据库访问框架,支持代码生成

    DAL是携程框架部开发的数据库访问框架,支持代码生成和水平扩展。其由携程技术中心框架部DAL团队开发,历经3年不断打磨,并在长期的实际使用中基于大量的用户反馈不断优化。 开源范围包括代码生成器,Java客户端和C#...

    ASP.net三层架构网上书店

    三层架构是一种常见的软件设计模式,它将应用程序分为三个主要部分:表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。这种分层设计有助于降低各组件之间的耦合度,使得每个层次都可以独立地进行修改和扩展。 ...

    分表分库的新思路——服务层Sharding框架

    不同于传统的数据访问层(DAL)实现,服务层Sharding框架将分片逻辑集成到业务服务层,使得业务代码与分片规则更紧密地结合,降低了数据访问层的复杂性。 该框架支持全SQL,这意味着开发者可以使用标准SQL进行查询...

    架构+接口开发的类文件

    在“架构+接口开发的类文件”中,可能采用了分层架构,将应用分为表现层(Presentation Layer)、业务逻辑层(Business Logic Layer)、数据访问层(DAL)等层次,每个层负责不同的职责,如表现层处理用户交互,业务...

    大规模网站架构介绍.pptx

    读写分离有多种实现方式,包括独立的DAL(数据访问层)代理服务器,如Amoeba(用于MySQL)和PL/Proxy(用于PostgreSQL),或者通过DAL API集成到应用程序中,如Java的Hibernate Shard、Ibatis Shard和HiveDB,以及...

    News数据库

    3. **数据访问层(DAL)**:使用ADO.NET或Entity Framework创建数据访问层,处理与数据库的交互。ADO.NET提供了连接池、数据适配器、数据集等组件,方便数据操作;Entity Framework则提供了对象关系映射(ORM),...

    大规模网站架构.ppt

    8. 数据访问层(DAL):为了实现数据库的透明化管理和扩展,可以使用DAL Proxy或者DAL API。DAL Proxy通常作为独立服务器存在,如MySQL的Amoeba或PostgreSQL的PL/Proxy,而DAL API则集成到应用程序中,如Java的...

    C#成绩管理信息系统

    C#成绩管理信息系统通常采用三层架构,包括表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。表现层负责用户交互,业务逻辑层处理业务规则和计算,数据访问层则与数据库进行通信,实现数据的读取、更新和删除...

    c#仓库管理系统(源码+数据库备份文档).rar

    C#仓库管理系统可能采用三层架构:表现层(用户界面)、业务逻辑层(BLL)和数据访问层(DAL)。表现层负责用户交互,BLL处理业务规则和逻辑,而DAL则封装数据库操作,实现了数据的增删改查。这种架构使得系统具有...

    C#电影院售票系统(简单)

    C#电影院售票系统通常采用三层架构设计,包括表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。表现层负责与用户交互,业务逻辑层处理业务规则和数据验证,而数据访问层则负责与数据库的交互,实现数据的存储...

    基于c#的4s店的毕业论文设计

    本项目可能采用三层架构,包括表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。表示层负责用户交互,业务逻辑层处理业务规则和流程,数据访问层则处理与数据库的交互。这种架构模式有利于代码复用,提高系统的...

    酒店系统java源码-ctripcorp-dal:携程

    DAL是携程框架部开发的数据库访问框架,支持代码生成和水平扩展。其由携程技术中心框架部DAL团队开发,历经3年不断打磨,并在长期的实际使用中基于大量的用户反馈不断优化。 开源范围包括代码生成器,Java客户端和C#...

    smbms.zip_smbms_超市账单管理系统 账单 供应商 用户

    SMBMS通常采用三层架构设计,包括表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。表现层负责用户交互,业务逻辑层处理业务规则,数据访问层则用于与数据库进行交互。这样的设计使得系统模块化,易于维护和...

    c#餐饮管理系统

    C#餐饮管理系统通常采用三层架构设计,包括表现层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。表现层负责用户交互,展示系统界面;业务逻辑层处理各种业务规则和操作;数据访问层则用于与数据库交互,进行数据的...

    经典大规模网站架构.ppt

    最后,数据访问层(DAL)的实现对于应用透明地使用数据库的分区至关重要。DAL Proxy可以作为独立服务器,如MySQL的Amoeba和PostgreSQL的PL/Proxy,或者作为应用的一部分,如Java的Hibernate Shard、Ibatis Shard和...

Global site tag (gtag.js) - Google Analytics