当前位置:首页 > 短网址资讯

短网址程序在多服务器组负载均衡系统中遇到的问题

www.ft12.com8年前 (2018-09-17)短网址资讯3238

由于短网址业务量的逐渐增大,原有的服务器系统负载已经接近极限。为了更好的满足用户的需求,FT12短网址有新增了两台服务器,和原有的一台服务器组成负载均衡系统。前段任何一条短网址的访问,都会先经过负载均衡服务器,然后再随机转发给后台的任意一台服务器处理。这样就能有效的提升短网址的稳定性和快速访问。但经过一段时间的使用,发现了有些致命的缺陷。

用户A生成一条短网址,这个请求被随机转发到后台的任意一台服务器。然后这台服务器再链接数据库,获取短链接代码,最后进行插入操作。这个逻辑看似没有什么漏洞,但是每次在网站访问高峰期,就会发生一个逻辑上的bug。那就是用户B也在这个时候生成一条短网址,这个请求被转发到了另一台后端服务器B,那么这个时候服务器B也会连接数据,获取短网址代码,然后再插入数据库。那么,问题来了。这个时候,用户A和用户B很有可能再链接数据库时,获取了相同的短网址代码,而短网址代码(CODE)在数据库中是唯一的,其中必然会有一个用户的数据库插入操作会以失败告终。这大大影响了用户的正常使用体验。为了解决这个问题,我们阐释了很多种方法。

11.PNG

上图是我们最终的解决方案。对服务器的数据库操作使用了try函数,如果插入数据库不成功,则重新获取短网址代码,然后再次进行插入。这样的逻辑设计很好的解决了负载均衡下,短网址的生成成功率极大的提升了。

扫描二维码推送至手机访问。

版权声明:本文由短链接发布,如需转载请注明出处。

本文链接:https://www.ft12.com/article_544.html

分享给朋友:

相关文章

FT12短网址教你如何利用大数据算法定位网站性能瓶颈(BOSS)

FT12短网址教你如何利用大数据算法定位网站性能瓶颈(BOSS)

FT12短网址资讯:架构师非常关注性能问题,上篇文章中我们介绍了京东的自动化压测体系 ForceBot,这篇文章来自 LinkedIn 的技术博客,介绍如何通过大数据算法来分析调用数据,自动定位性能瓶颈。本文由高可用架构翻译。背景我们 FT…

为了吸引你的目光,这些家具费尽心机

为了吸引你的目光,这些家具费尽心机

家具,不只是家中不可或缺的物件,还是我们居住空间中少不了的摆设,正因为如此,它们也有更多可以挖掘的创意性设计所在。设计师便对常见的家具做了一些不一样的改变和创新,让使用者和这些本无生命的家具之间,有了更多的连接。把书本“吊”在木架上颠覆你对…

月薪5万的人都经历过什么?

为了方便起见,人们习惯用数字概括不同的生活状态,比如:《月薪5千穿搭指南》、《月薪2万餐厅指南》。如果你生活在北上广这些竞争压力较大的城市,会发现这类流行的指南所覆盖的人群,大多对自己的薪资并不满意。很多年轻人在新世相后台焦虑地留言,描述自…

使用PHP和Node.js连接dubbo短网址服务

使用PHP和Node.js连接dubbo短网址服务

DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治理方案的核心框架,每天为2,000+个服务提供3,000,000,000+次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。不巧的…

简单高效的短网址生成服务C#实现

简单高效的短网址生成服务C#实现

项目中有一处需求,需要把长网址缩为短网址,把结果通过短信、微信等渠道推送给客户。刚开始直接使用网上现成的开放服务,然后在某个周末突然手痒想自己动手实现一个别具特色的长网址(文本)缩短服务。由于以前做过socket服务,对数据包的封装排列还有…

短网址自定义功能的测试

测验首要分为两大部分, 功能性测验和非功能性测验。前次已经做了功能性测验的解说,(没阅读的请阅读《简单高效的短网址生成服务C#实现》)下面解说自界说短网址测验和非功能性测验,全面的测验过程,以确保ft12短网址的各项功能契合用户的需求。…

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。