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

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

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

由于短网址业务量的逐渐增大,原有的服务器系统负载已经接近极限。为了更好的满足用户的需求,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…

短网址自定义功能的测试

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

短地址实现原理及应用分析

摘要: ft12.com主要设计用来在各种内容出版中使用。根据 不同类型的出版服务不同,该短网址的使用方式也不相同,其大致可以分为传统纸质出版、电子出版和在二维码中的应用。…

阿里为什么不收购百度?

阿里为什么不收购百度?

本文来自一个网友的问题汇总,对于阿里为什么不收购百度,网友回复众说纷纭,甚至有的网友反驳提出此问题者有点略显不专业,不管怎么样。让我们来看看大家是怎么看待这件事的!下面这位对系统的分析了阿里跟百度的关系,比较专业值得一看:别说阿里,就算是腾…

O2O进入下半场,百度或携人工智能实现弯道超车?

近日,百度外卖副总裁陈锦晖宣布辞职的消息刷爆了互联网,百度外卖业务要出售给顺丰的消息也时有流出。正如美团CEO王兴所言,国内O2O行业已经进入了“下半场”。随着移动互联网人口红利减退,烧钱竞争所带来的粗放式增长已经告一段落。 实际上在今年第…

PHP编程需要掌握的20个要点,能极大提高效率

PHP编程需要掌握的20个要点,能极大提高效率

[摘要] 用单引号取代双引号来包括字符串,这样做会更快一些。由于PHP会在双引号包抄的字符串中征采变量,单引号则 不会,留意:只要echo能这么做,它是一种能够把多个字符串看成参数的“函数”用单引号取代双引号来包括字符串,这样做会更快一些。…

发表评论

访客

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