第一千九百六九章 內購系統的難度(1 / 2)

筆趣閣 www.18xxs.com,最快更新風騷重生傳最新章節!

「一個內購系統有這么麻煩?」賈鴻漸當時驚訝道。在他的印象里面,在網絡開放購票之前,那去火車站買票的時候,售票員不是都是在電腦上噼里啪啦的打,好像打入的是所到站點的一個拼音縮寫還是啥,然後就能出現能到達的列車車次、時間等等信息,接著確定要買了,這售票員就會操作著把票打印出來,然後旅客掏錢買。像是在外地出差的時候,他不是沒買過火車票,特別是在春運前後的時候,那時候雖然排隊人多,排隊就要一個多小時,可是也不至於說忙的系統反應慢,需要他等幾分鍾的事兒啊!

「麻煩,相當麻煩。」倪廣南此時搖了搖頭說道,「賈總你這么想吧,我們比如從a站到z站,一共26個站點,光是從a站上車,咱們就有25種賣法,也就是25張票,也就是a到b,a到c,a到d,a到e……然後b站上車的可以賣24種票,c站上車23種票,最後加起來這么一個一共26站的線路,我們就有325種賣法。然後呢這個售票系統不是說賣掉了a到b站的這么一種票之後,還有324種票都能買,因為a到了b站了,這a到c的票就不能賣了,甚至a到z的票也不能賣了,最多只能賣b到z開始的。於是就一下減少了25種賣法,如果是b站這邊賣掉一張票,也有不同的減少數量,到了最後可以說是一個挺復雜的數學算法。同時呢我們也要照顧到現實,不是說按照這種單線流程做好一個公式就行的,還要有反向的實時交互,比如說。b到d。c到d這么幾張票……」

聽到倪廣南這么一說,賈鴻漸大概明白了,這背後的程序那計算量可以說是相當大的,而且速度還必須有需求。不能說退一張票之後再來買票他要n久才能反映過來。不說幾秒的時間就能計算好。起碼說十秒級別的要達到吧?

接著倪廣南繼續倒苦水說道:「而且這個事兒說起來太麻煩了,這個系統從里到外的要求很高,從服務器開始。服務器、交換機、服務器的操作系統、前端軟件的一個接口服務器、數據庫甚至還要負載均衡器……這負載均衡器也就是說不會讓一台服務器過載,盡量的把運算數據平均到每一台服務器上。這個工程量總的算起來那真不小,不比咱們弄得保密系統難度小,雖然沒有什么保密的需要。可是全國那么多售票點一起查詢的話,每個服務器的運算是有個物理上限的,所以就不可能說三四十台服務器就搞定,搞不好是要上百台服務器的。然後呢,還不能把這么多的產品都給分跟眾多的服務器,不能說5000個給這邊,5000個給那邊,因為這票之間都是互相關聯的……這架勢就等於是咱們公司的櫃台賣東西,然後上萬個人拿著錢過來喊著要買,咱們好不容易把一張票給了一個顧客了,然後咱們要回頭喊一聲庫存要減掉十幾個,但是問題是咱們背後的同事也在面臨上萬個人喊著要買東西……」

擦咧,這事兒這么麻煩?就在賈鴻漸驚訝的時候,只見著倪廣南還沒說完,「而且還不是就這樣了事兒了,問題是如果有兩邊是整整好好同時買了票怎么辦,雖然幾率低但是咱們也要考慮到,就像是咱們華夏高科賣產品,如果同一個型號的同一個獨特的產品,同時被兩個銷售員賣了出去,錢都拿了這邊就要給人出貨了,結果發現撞車,這個咱們不能說臨時再吵架,咱們得有一個提前設計好的解決方案啊。這個解決方案如果說是用一台或者一組服務器單線程來掌控,比如說同時兩台服務器傳來購票的申請同時到了,由這么一組服務器來決定誰先誰後,誰有誰沒有,那么全國春運時候所有的購票申請都要挨個排隊過這個服務器,那么這處理速度肯定就慢,因為服務器每秒能夠處理的數據是有限的,搞不好現在勉強做出來了,過兩三年真的到了18億人次的春運的時候就速度慢下來了,再過幾年就慢的不行了!」

說到了這里,倪廣南都有點口干舌燥了,他倒了杯水喝了一口然後繼續說道:「而且還不只這么一個春節,明年不是說要弄黃金周么,五一加起來要7天假,國慶加起來7天假,春節也7天,預計都是人流高峰期。這個時候呢,你說我們要是按照最高人流數量的時候不延遲的標准來,平常的日子肯定就是浪費錢,畢竟這服務器也要維護,電費、帶寬費用,甚至還有硬盤使用就有折舊費,搞不好3年就要扔掉全部硬盤然後全部買新的,咱們不能說為了一年21天時間就能得剩下三百多天天天虧錢啊!反正是個麻煩事兒!」

「那你的意思是,咱們做不出來?」賈鴻漸此時問道,他覺得倪廣南剛才說的這么一大堆總結起來就是這么一個意思。「倒也不是說做不出來,還沒做呢,就嚇跑了,這也太慫了,我的意思就是我們努力,但是能不能真的做出來,能不能真的做好,這我們就不敢保證了,賈總您也心里提前有個數,畢竟咱們比不上ibm,人家ibm幾十年前就在玩兒這個了,人家是這方面的專家。不可能說咱們這邊第一天做,然後有點內部數據啥的就能打敗ibm了,要真這樣的話ibm也活不到今天,人家也是人山人海里面殺出來的……」