返回介绍

影子库压测

发布于 2021-09-25 22:17:11 字数 601 浏览 1136 评论 0 收藏 0

背景

在基于微服务的分布式应用架构下,由于整体服务都是通过一系列的微服务调用、中间件调用来完成业务需求,所以对于单个服务的压测已经不能代表真实场景。 而在线下环境中,如果重新搭建一整套与生产环境类似的压测环境,成本太高,并且往往无法模拟线上环境的体量以及复杂度。 这种场景下,业内通常选择全链路压测的方式,即在生产环境进行压测,这样所获得的测试结果能够较为准确地反应系统真实容量水平和性能。

挑战

全链路压测是一项复杂而庞大的工作,需要各个中间件、微服务之间相应的调整与配合,以应对不同流量以及压测标识的透传,通常应该有一整套压测平台与测试计划。 其中,在数据库层面,为了保证生产数据的可靠性与完整性,做好数据隔离,需要将压测的数据请求打入影子库,以防压测数据写入生产数据库而对真实数据造成污染。 这就要求业务应用在执行 SQL 前,能够根据透传的压测标识,做好数据分类,将相应的 SQL 路由到与之对应的数据源。

目标

Apache ShardingSphere 关注于全链路压测场景下,数据库层面的解决方案。 基于内核的 SQL 解析能力,以及可插拔平台架构,实现压测数据与生产数据的隔离,帮助应用自动路由,支持全链路压测,是 Apache ShardingSphere 影子数据库模块的主要设计目标。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文