在公司項目中使用golang會不會太激進?
01-26
情況:
1. 項目負責簡訊任務分發工作, 每天1000條簡訊任務分發, 每分鐘一輪的檢索所有&<5個簡訊伺服器工作狀態, 的TCP包服務。 但是有可能會在上班時間段和下班時間段產生高峰。2. 公司希望能替換掉之前用了10年,越來越不穩定,開發人員都過世了,無文檔支持的現有系統。(Delphi+IIS+SQL server)3. 公司希望新系統能一口氣用上十幾年,直到SMS服務和模擬固定電話業務徹底消失。問題:1. 如果用golang來開發,會不會將來找不到懂得go語言的開發者?
2. 或者未來某天google突然宣布終止支持golang?(就如同google的其它N多死掉的項目一樣?)3. 如果沒有google支持,一套已經寫好並穩定運行的系統,是否在未來有其它任何風險?4. 如果使用其它語言是否有類似的境遇? 如或者Python,Ruby or PHP?
是不是少打個萬字?1000的話shell就搞定了。
先抖個機靈,老系統不吉利,趕緊重寫保平安。然後逐條回答吧
1. 如果用golang來開發,會不會將來找不到懂得go語言的開發者?
以我們公司的經驗,我們一開始招的程序員都是php/python的,後來由於各種原因需要轉go,除了一開始有點不適應,後續一切順暢。只要你能招到基礎紮實的人、學習能力強的人2. 或者未來某天google突然宣布終止支持golang?(就如同google的其它N多死掉的項目一樣?)
無法預料。不過以目前golang的情況,首先一時半會不會掛掉,即使掛掉,也會有接盤客。再說了,一直用當期版本的golang又如何?說不定以後出新版golang,你還發現無法遷移過去呢
3. 如果沒有google支持,一套已經寫好並穩定運行的系統,是否在未來有其它任何風險?
已經寫好並穩定運行,你還能期待什麼?擔心以後新的伺服器無法運行當前的操作系統?況且還有偉大的docker,你甚至不用擔心未來不同操作系統發行版的差異(其實golang對運行環境的依賴低得令人髮指)4. 如果使用其它語言是否有類似的境遇? 如或者Puthon,Ruby or PHP? 我們公司的python代碼還無法遷移到python3,哭每天 1000 條大概用 JavaScript 或者 PHP 都可以輕鬆應對……
首先不知道你們的業務邏輯有多複雜,但按照你的描述來看,每天1000條簡訊,10年歷史數據也就300W,未來10年再來個300W,加起來1000W左右(考慮未來增長)。那麼問題就是業務和歷史數據關係大么?要是要經常性的對歷史數據進行處理,請你詳細描述一下。如果和歷史數據關係不大,按你描述的:「 每天1000條簡訊任務分發, 每分鐘一輪的檢索所有&<5個簡訊伺服器工作狀態, 的TCP包服務。 但是有可能會在上班時間段和下班時間段產生高峰。」每天1000條這個業務量很小,每分鐘輪詢5台以內的伺服器也很簡單。根據每天1000條簡訊這個業務量來看,高峰期最多也就幾百的並發,也不大。
所以綜合來看,隨便用什麼語言都能滿足你們的需要。但想要成本低,推薦PHP和JAVA。
我曾經在一個快死的項目里用了go…然後項目就死了…
對於不上進的公司和開發者來說只要寫非java ssh相關的代碼都是激進。
go這個項目和其他google關閉的是不同的,關掉的都是 服務 ,這是一個編程語言
go概念不多,容易掌握,不用擔心找不到人維護而且是編譯型語言,編譯出來可以跑很久,不同系統或者版本都沒有影響千萬不要用腳本語言或者java這種虛擬機的,版本升級可能你的代碼就跑不了了!要跑十幾年的東西,不要用這些!公司希望新系統能一口氣用上十幾年,直到SMS服務和模擬固定電話業務徹底消失。 。。。。
java吧java象excel一樣,永遠死不掉以這個數據量,我覺得都不需要軟體系統,直接每天發1000個順豐快遞都可以。
每天才1000的量就考慮用別的語言了?這個量隨便哪個語言都輕鬆搞定了。我們業務每天幾百上千萬是數據調介面發送用 PHP 和 Java 都輕鬆搞定了。
如果我眼沒花,你這個業務量不算高。以我理解,是可以嘗試用go的。如果業務很複雜,還是謹慎一些比較好。ps. 我是保守型的碼農,之前接過一個erlang項目,搞得我都快哭了。新語言最麻煩的是ops能力是否能夠匹配。
1.9以上已經很穩定了,開發微服務,遊戲邏輯伺服器,web都是利器。代碼量少,語法糖多,庫全,唯一的就是面窄,基本上只有伺服器開發用得上
發簡訊這種業務 用c不就好了嗎?
Go是開源的,而且自舉,理論上只要看得懂Go,應該能解決Go的大部分問題。
如果怕不支持就用Go的標準庫,不要用Github上找來的。推薦閱讀:
※最新的TIOBE榜單前五十依舊沒有Golang,Golang目前在國內外的生存狀態如何?
※Go語言為什麼沒有流行起來?
※Go垃圾回收?
※go語言用作廣告dsp開發有什麼優勢和劣勢?
※如何評價三年前四大系統編程語言大牛的那場談論?
TAG:Go語言 |