首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

基于中间件的负载均衡方案

这是学习笔记的第2047篇文章

最近做了一个基于中间件业务的性能优化,想来还是感慨不少,优化仍在进行中,现在是在做最后的确认阶段。

整个系统架构如下所示,整体对外服务访问是使用LVS+keepalived的方式实现的。

中间件层主要是做数据访问路由,使用MyCAT实现。

而数据节点层是我们常说的数据库实例。

目前存在的问题是我们需要对标线上业务的性能指标,目前的性能指标初步定为查询为1.9ms,写入为7ms,而我们明确的指标查询在1ms以下,而数据写入在5ms以内。

面对这种情况,我们讨论了很多种可能的改进方案。

比如方案1:

这种方案在应用端切换过来之后,性能不降反升,而且表现很不稳定,这是毫秒级的要求,和单纯的可用是两码事。

所以在周末跑了两天这些对比测试之后,发现这个问题单单通过直连的方式难以解决。

方案2:基于DNS的方式来实现负载均衡。

这种方案看起来少了一层,可以直接通过域名的方式来进行处理。不过这一层限于环境配置还没有正式开始,而且consul的域名服务也难以保证性能和可用率在毫秒级完全可控。所以这需要打一个大大的问号。

按照刚才测试的情况,果断添加了一个中间件,这个时候效果好了很多。

按照这个指标情况,是能够满足线上的性能压力的,而对于这个部分的测试和重构依然会进行,尝试找到一个更合适的方案。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190723A005I700?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券