当前位置:首页 > 短网址资讯 > 正文内容

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

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

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

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

11.PNG

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

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

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

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

分享给朋友:

相关文章

如何才能让网络爬虫抓取短链接?

网络爬虫(又被称爲网页蜘蛛,网络机器人),是一种依照一定的规则、自动的抓取万维网信息的顺序或许脚本。通常它爲搜索引擎从万维网上下载网页,是搜索引擎的重要组成局部。抓取战略链接的抓取战略可以分爲深度优先、广度优先和最佳优先三种。1、深度化先捜...

ajax请求成功后新开窗口window.open()被拦截解决方法

ajax 异步请求成功后需要新开窗口打开 url,使用的是 window.open() 方法,但是很可惜被浏览器给拦截了,怎么解决这个问题呢 问题:前面开发项目时碰到一个问题,ajax 异步请求成功后需要新开窗口打开 url,使用...

独家 | 我与Go语言的这十年

独家 | 我与Go语言的这十年

作者|FT12短网址 编辑|短链接2007 年 9 月 20 日,关于设计一门全新语言的讨论正式开始,这门全新的语言,就是后来的 Go。时至今日,Go 语言已经发布到 1.9 版本,走过了整整十年的历程。在这十年间,Go 语言...

智能聊天机器人如何改变客户服务游戏规则?

智能聊天机器人如何改变客户服务游戏规则?

[ FT12短网址 ] 随着当今手机用户的心态、行为和期望变得越来越数字化,客户参与的状态正处于一个转折点,而服务商也逐渐转向智能聊天机器人。但就目前而言,机器人的水平并不能满足客户多样化的需求,那么机器人未来该如何发展呢?图片来...

关于短网址api接口增加apikey认证的说明

关于短网址api接口增加apikey认证的说明

    FT12短网址上线7年了,感谢用户7年来的支持。我们也一直致力于提供免费、快速、稳定的网址缩短服务。7年来我们的服务在线率达到了99.99%。但是,近期发现很多恶意用户或者竞争对手,滥用api接口,生成了大量无用...

弱势美元时代,买什么最赚钱

弱势美元时代,买什么最赚钱

美联储进入加息周期,美元为什么还跌跌不休?这是困扰很多投资者的问题。确实,不管你是做股票的,还是炒期货的,还是做石油、黄金和其他衍生金融产品的,都要关注美元的走势,目前全球大多数大宗商品,都是以美元计价,读懂了美元,就可以读懂很多市场。那为...

发表评论

访客

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