自從明白Golang以及Python能用來做什么以后,
那會蘇小木內心的小火苗其實就騷了起來。
Golang這種語言其實完全可以用來作為大型應用平臺的核心語言,這也是谷歌花大力氣開發并且還開源這個語言的目的。
至于在今年已經成為全球使用率最高的編程語言:Python
什么都能做。
小到植物大戰僵尸這種小游戲,到網絡爬蟲,大到大數據分析,在喜歡的人眼里,Python無所不能。①
用來做網站后臺,Python能完美勝任,而且效率還挺高。
用來做數據爬蟲,Python更能勝任,而且代碼還簡單。
在一目了然的知道這兩種語言的主要應用場景后,蘇小木的想法其實一開始有些雜亂。
不過,剛才同學們的幾句無意義的議論,讓蘇小木腦闊里閃過了一道亮光。
想想,這么大的華南理工,不應該有屬于自己的、獨特的、學生們可以一塊騷起來的網絡服務內容?
必須要有!
整個下午連續四個小時,包括最后一節軍事理論課,蘇小木都在腦闊里面構造架構雛形。
網絡信息的高速發展,讓中國出現了許許多多形形色色的內容,其中就有A、B、C三個視頻彈幕網站。
沒有B數,AC數現在已經基本上涼了,有B數,還沒涼的也就只有B這個站點了。
有人曾經說過,沒有彈幕的視頻網站,是沒有半點靈魂的。
不用想,這句話肯定不會是蘇小木說的。
他又不會做飯,更不會四齋蒸鵝心。
蘇小木拿了張草稿紙,寫寫畫畫做了個雛形,首先要做的是一個吐槽類型的、可以分享視頻的、還可以發彈幕的校內網站。
整體架構分為:服務、中間件、存儲層、基礎設施這幾個部分。
大家都這樣,畢竟網站就這幾個架構,這沒什么好說的。
蘇小木決定效仿有逼數的B,使用Golang作為業務核心語言;
而網站后臺管理,包括存儲層的緩存數據、賬號體系這些都用Python來寫;
在某些必要的模塊,用自己本身就精通的C和C++來寫;
簡直完美!
寫寫畫畫間,整個架構的雛形基本就完成了,這個時候,蘇小木突然發現,這東西自己居然一個人就能玩轉。
對外統一的APIGateway以及內部運營平臺這一塊用Golang就可以解決。②
至于為什么加這么一層多余的API網關,純粹是蘇小木出于更高層面和隨市場大流的考量,有API網關的時候,所有訪問網頁的請求會先經過API網關;
這樣做,可以讓訪問者沒法直接感知到后臺各種服務的存在,并且不管后臺的服務內容有多少種,對訪問者來說風格都是一致的。
像中間件這塊的數據總線、代理、即時通訊微服務(彈幕)等模塊,也能用Golang解決。
而存儲層的數據庫以及數據,巧了,蘇小木挺懂的,數據挖掘算法都能重構的大佬了解一下?
這里面加點Python,效率可以更高。
其它的基礎設施也就是服務器、網絡設備這些硬件上的東西,跟軟件無關,無非是錢的事情……
這么一來,完全ojbk了。
大體框架確定后,蘇小木就確定了問題的難點,用什么樣的算法更高效。
砸吧了下嘴,蘇小木看著眼前突然撲簌撲簌掉落的幾根頭發,深深的感覺到了一個已經是95后的中年男人的危機。
“糟糕,這是變強的前奏,禿頭!”