科技之全球垄断
时间:2023-05-21 来源: 作者:昭灵驷玉
听到最后那句话的时候苏娅黎懵圈了一会儿,反应过来之后支支吾吾的说道:“啊?那个……罗……罗总跟您…回家乡过年……?”
说着还略带一点小紧张,与先前干练的一面形成了强烈的反差,甚至还有一点小害羞。
罗晟见此情形知道她是会错意了,顿时解释道:“我的锅……”
旋即从旁边的文件夹层里取出一份他已经拟定好的公益基金材料草案递给了对方:“你看看这份材料吧。”
苏娅黎看了之后内心巨尴尬,原来是自己的会错意了,要求自己跟着去老板的家乡,是这一公益事业要从老板的家乡开始做起。
她以为罗晟是要带着自己回去见家长什么的,这也太突兀了,毫无征兆且没有任何心理准备。
敢情是自作多情了?
“内……内个罗总,没有别的事情我就先去准备了。”苏娅黎面红娇羞的说道。
“嗯,去吧。”罗晟微笑的点点头。
得到老板的应允,苏娅黎顿时飞快的闪人,给人一种像是落荒而逃的感觉。
罗晟见此一幕也是哭笑不得,突然感觉把公益基金交给苏娅黎这妹子去抓好像有点不大靠谱的感觉,那羞羞的模样怎么看不像之前那般沉稳。
不过罗晟倒也没有过多纠结,用人不疑疑人不用,刚刚应该是比较突兀产生的落差感。
嗯,罗晟觉得大概是自己的魅力太大了的缘故。
苏娅黎刚刚离开不久,办公室的大门又被敲响了。
“请进。”
罗晟抬头望去,走进来的是主导蓝星科技集团云服务板块的陆琦。
“罗总,国家铁路集团的一位副总刚刚联系上门,希望我蓝星科技能为其铁路客户服务中心12306提供一套完备的云技术解决方案。”
听到陆琦这话,罗晟颇感意外:“12306网站?阿里云不是在免费为其提供云技术支持吗?难道我看到的是假消息?”
罗晟每天都会花一定的时间关注业界的动态消息。
陆琦直言不讳的说道:“当然是真的,不过飞天系统还是吃不消,1月27日,也就是前天,12306网站开通并进行了试运行,结果是一场噩梦,因为访问数据实在是过于庞大,造成系统连续72小时宕机超过50次以上,上线三天已经从普通的网民到程序员都狂喷12306就是随便找几个大学生开发的垃圾系统。”
说着,陆琦也忍不住笑了,补充道:“这不,来找我公司寻求星云解决方案救急了,今天下午铁路集团的刘副总带着一批技术专家来访。”
……
第378章【解决方案与报价】
下午。
罗晟依然待在蓝星科技集团,本来今天下午他要去蔚蓝海岸实验室主持一个技术会议的,不过在得知国家铁路集团前来寻求技术支持帮助,他临时修改了一下自己的工作安排,选择优先接见刘副总。
主要是年关将近,全国各地的民众尤其是外出务工的农民工都急着赶回家过年,这个群体非常不容易,罗晟觉得自己能为他们做点什么就做点什么,别的不说帮助他们更轻松的买到一张回家过年团聚的车票也是一件很有意义的事情。
况且还能收获一位大客户。
……
此时此刻,公司的一间会客室里,罗晟与刘副总等七八个国家铁路集团的人在一块。
简单见面寒暄了几句,刘副总找到重点话题的切入口,说道:“12306票务系统一期工程的开发费用合计三个亿,包含硬件,这套系统需要结合铁道部信息数据库、还需要结合电话售票、窗口售票等相关数据的结合。12306不是一个简单的在线交易系统,而是一个全国乃至世界最大的大宗物资货运系统。”
过了片刻,随行的一位技术专家也说道:“12306的技术确实非常难解决,利用现有的分布式数据库、缓存、负载均衡技术已经不能满足需求。”
说到这里,这名技术专家看向了罗晟补充道:“要知道,12306在春运的时候,日均有近300亿次访问量。如此天量级别的火车票查询是影响12306性能的重要原因之一,大概率占了90%以上的访问量。更及棘手的是:峰谷的查询有天壤之别,几乎没有办法在成本和并发能力之间做一个好的平衡。”
倾听着的罗晟默默的点点头,逝者对方把话说完之后,他便问道:“你们和阿里的合作是怎么解决的?”
那名技术专家坦言:“现在的做法是从几个关键入口流量控制,保障系统可用性,但是会影响用户体验,仍然出现网站宕机、打不开的现象,已经遭来一片骂声。”
说着那名技术专机也是苦笑的摇了摇头。
刘副总也说道:“阿里免费给12306提供技术支持,但是技术还是不够硬,我们现在就把希望放在星云上了。”
罗晟不由得一笑,也是耿直的说道:“刘总,首先我可以肯定的给你一个回复,星云系统完全没问题,同时我可以保证在一周之内就能实现为12306量身打造一整套从软件到硬件的完整解决方案,但这个解决方案不会像阿里一样免费支持。”
刘总哑然,也是一笑,道:“愿闻其详。”
罗晟思量了片刻,迅速组织好语言便说道:“如果星云支持12306系统以后,把12306网站查询访问放到星云上。一般而言,查询是多数售票系统访问量最大的部分,刚刚也听你们的专家说了,90%左右。在交易相关的过程中,都会多次提交查询请求,更不要说现在有大量刷票软件的出现所带来的额外增加的工作负载了,这一切都让余票查询系统成为整个系统的压力集中地。”
“我的解决方案是,星云介入后,把余票查询模块和12306现有系统做分离,具备独立部署的能力;在云端上独立部署一套余票查询系统,这样12306和云上都有了一套余票查询系统,调度会更为灵活,目前星云集群服务器规模已经达到了50000台以上。”
在场的几位铁路集团的技术专家一听也是暗暗咂嘴,难怪阿里的“飞天”系统这么不禁打,前者勉勉强强破千,而后者已经达到了5万规模之巨,难怪罗晟会这么有信心。
接下来,罗晟主要与铁路集团的几名技术专家讨论。
“今天上午我在得知消息顺带简单研究了一下‘12306’的服务端架构。”罗晟面向众人有条不紊的说道:“广大访问者都在喷,但是我知道12306服务一上线试运行,就承受着这个世界上任何秒杀系统都无法超越的qps,上百万的并发再正常不过了。”
在场的几名铁路集团的技术骨干人员内心稀里哗啦的感动,理解万岁啊。
不懂技术的领导最难沟通,觉得没有尽力。
罗晟的话还是很有分量的。
过了片刻,罗晟补充道:“高并发的系统架构要采用分布式集群部署,服务上层有着层层负载均衡,并提供各种容灾手段,所谓的容灾手段就是双火机房、节点容错、服务器灾备等。保证系统的高可用,流量也会根据不同的负载能力和配置策略均衡到不同的服务器上。”
“即便如此,集群中的单机所能承受的qps也是非常高的,那么如何将单机性能优化到极致呢?要解决这个问题要先弄明白一件事:通常订票系统要处理生成订单、减扣库存、用户支付这三个基本的阶段,系统要做的事情就是保证火车票订到不超卖、不少卖、每张售卖的车票都必须支付才有效,还要保证系统承受极高的并发。”
几名铁路集团的技术专家连连点头表示认同,技术痛点就在这里。
罗晟继续说道:“下单减库存。当用户并发请求到达服务端时,首先创建订单,然后扣除库存,等待用户支付。这种顺序是我们一般人首先会想到的解决方案,这种情况下也能保证订单不会超卖,但也会产生一些问题,第一就是在极限并发的情况下,任何一个内存操作的细节都至关影响性能,尤其是像创建订单这种逻辑,基本都需要存储到磁盘数据库的,对数据库的压力是可想而知的,12306应该是用的甲骨文数据库,别花这个冤枉钱了,放到我的星云上。”
“第二是如果用户存在恶意下单的情况,只下单不支付这样库存就会变少,会少卖很多订单,虽然服务端可以限制ip和用户的购买订单数量,但这也真心不算是一个好办法。”
“然后就是支付减库存了。如果等待用户支付了订单再减库存,第一感觉就是不会少卖。但这是并发架构的大忌,因为在极限并发的情况下,用户可能会创建很多订单,当库存减为零的时候很多用户会发现抢到的订单支付不了,这也就是所谓的‘超卖’,也不能避免并发操作数据库磁盘io。”
“最后是预扣库存。从上面两种方案的考虑,可以得出结论:只要创建订单,就要频繁操作数据库io。那么有没有一种不需要直接操作数据库io的解决方案呢?答案是有,就是预扣库存,先扣除了库存,保证不超卖,然后异步生成用户订单,这样响应给用户的速度会快很多。”
“那么怎么保证不少卖呢?用户拿到了订单,不支付怎么办?订单都应该有效期,比如说用户五分钟内不支付,订单就失效,就会加入新的库存。订单的生成是异步的,应该放到即时消费队列中处理……”
刘副总听的云里雾里的,但是他发现罗晟和他带来的几个技术专家交流的愈发火热,似乎也得出了一个信息。
找对人了!
这时,罗晟打开了房间里的墙面上的大屏幕,他也拿来了一台笔记本工作电脑打开,示意众人看向主投屏,自己一边操作电脑一边说道:
“go语言原生为并发设计,我就采用go语言给各位演示一下单机抢票的具体流程以及我优化后的解决方案。”
“go包中的init函数先于main函数执行,也在这个阶段主要做一些准备性质的工作。系统需要做的准备工作有:初始化本地库存、初始化远程redis存储统一库存的hash键值、初始化redis链接池。”
“另外还需要初始化一个大小为1的int类型,目的是实现分布式锁的功能,也可以直接使用读写锁或者使用redis等其他方式避免资源竞争,但是使用el更加高效,这就是go语言的哲学,不需要通过共享内存来通信,而是通过通信来共享内存。redis库使用的是redigo,下面是代码:
【
//localspike包结构体定义
package localspike
type localspike struct {
lostot64
localsalesvolume int64
}
…
//remotespike对hash结构的定义和redis连接池
package remotespike
//远程订单存储健值
type remotespikekeys struct {
……
】
……
不知不觉,时间已经过去了一个半小时,反正刘副总是听不懂,那些代码看的晕头转向。
技术问题终于讨论的差不多了。
铁路集团的技术专家看向了刘副总并且带着肯定的目光轻点了一下头,刘副总立马就明白了,果断的转投看向罗晟问道:“罗总,如果提供这么一整套完善解决方案,报价是多少?”
罗晟直言:“每年支付10个亿。”
刘副总听到这个数字差点没有一口老血喷出来,12306票务系统一期工程的预算也才3个亿,这样的报价简直贵到难以接受。
……
第379章【星云支持12306再上线,稳如老狗!】
“罗总,太昂贵了,12306票务系统承受不起这样的支出。”刘副总连连摇头,脑海里不禁再次想了想10个亿,一想就感觉胃疼。
关键是一年10个亿啊。
罗晟内心呵呵一笑,铁老大没钱?旋即收起心思随和的笑道:“在商言商刘总,好货不便宜,星云系统是目前为止全世界最好的云计算服务解决方案,这个报价没有高收,也没有低收,对所有的大企业客户都是这条水平线。”
刘副总一时间语塞,不过这不是语塞就完事了,刘副总这次带着任务过来了,所以也是耐心的和罗晟讨价还价。
扯了半天,最后罗晟说道:“这样吧刘副总,硬件配套呢由我司免费提供,这里大约要耗去至少4个亿的费用,包括去甲骨文数据库等等,合计起来这次优化升级的支出也得要6个亿,我们包了,但是12306得跟我们签五年的合同。”
刘副总补充道:“签10年吧?”
罗晟摇头,很果断的拒绝了这个协议,他本想着是三年一签约的,因为时间越往后越亏,道理也很简单,通货在膨胀,钱会越来越不值钱,接下了这个客户订单,今后的维护成本肯定会随着时间的推移而增加,因为购票人群会越来越多大,访问量也会饿越来越大。
如果一口气签十年,等同于被套牢十年,意味着十年之内只能创收100亿元人民币,但是成本支出包括软硬件系统的后续优化升级,这些支出都得自己垫付,十年的通货膨胀是个很大的比率了。
签五年是罗晟能够容忍的最大让步,五年之后要续签,铁定涨价。
最终,长达两个多小时的面谈结束,双方达成初步共识,只剩下签约了。
签五年。
一年10个亿。
蓝星科技提供一整套完善的解决方案,搞定12306票务系统,由星云系统提供技术支持。
三天之后,正式举行签约仪式并对外召开媒体发布会。
……
阿里总部,云服务事业群正在开会,马总也在场。
与会的一种管理者都无言,众人的神态表现都透着一种颇为无奈的味道,墙面上挂着的会议专用大屏上定格着一张封面合影,赫然便是国家铁路集团与蓝星科技集团在签约仪式的媒体发布会上的公开合影。
消息已经在业界传开了,当然也传到了阿里这里。
不一会儿,会议室里的大屏幕开始播放一段媒体录制的视频。
视频中主持媒体发布会的陆琦发言道:“每年春节,我国成千上万的农民工从城市回到家乡,他们返乡要购买火车票,我告诉星云系统的工程师们,去支援他们。因为我不想看到农民工兄弟们买不到火车票,这不是为了钱,是为了那些兄弟不用在雪夜等待买票,只需要通过电脑甚至一台智能手机上的就能顺畅购买到返乡的一张票……”
猜你喜欢