想做一個類似論文查重網站的web項目,可以用go寫後端的介面和操作資料庫,另外用Python中的庫做大數據和NLP分析嗎,如果可以大致如何實現呢


第一,你需要學習go,並且學會如何用go開發web app的後台介面。

第二,你需要學習python,並且學會如何用python開發大數據應用或者nlp或者什麼鬼都行,你喜歡就好。

第三,把這兩個結合起來,組織成一個完整的應用。

從問題來看,似乎題主已經有了第一第二步的能力,就等人指點下如何完成第三步了;實際上如果你有實現第一第二步設想的能力,第三步如何完成幾乎是不言自明的。

所以別想多了,動手開干就對了。

另外如果想快速實現這個想法,python一鍋燴就行了;當然如果想藉機練習下golang,那這個搞法也沒問題!

順便回答其它可能的問題:

後台資料庫mysql/pg/mongodb哪個合適?

答:這麼個練手的東西,哪個都合適,你熟悉哪個用哪個,你喜歡哪個用哪個。先把你的東西弄出來。

用windows還是Linux/ubuntu/centos?

答:隨你喜歡,可能的情況下,Linux優先。重點是把你的東西弄出來。

要用docker/k8s嗎?

答:喜歡就用,不願折騰以後再說。重點是把你的東西弄出來。

阿里雲還是騰訊雲好?

答:都好。先把你的東西弄出來。

。。。

答:先把你的東西弄出來!


你這個需求其實挺常見的,算是個好問題。你的思路也沒有錯,讓各個語言去干自己擅長的事情。

實現方式其實很簡單,甚至簡單的讓你不敢相信,沒錯就是分別建立兩個服務端,服務端之間通過常見的http請求去交互,簡稱傳說中的「微服務架構」 ~~

一些細節你可以用「微服務」為關鍵詞搜幾篇入門文章花十分鐘看一下。手機打字麻煩,就不細說了。


rpc

在go的後端介面處理方法里,調用python寫的rpc服務。


GO和Python做介面後端代碼就好了。

1.web前端與GO或Python用ajax交換數據

2.GO與Python直接用soket或HTTP交換數據


Go開發web後端,python做數據分析,是很合理的

不過你既然是大數據分析,資料庫不適合,用數據倉庫,資料庫用來給前端展示


計算機系統裡面進程間通信的方法就那些吧,現在企業中一般的做法是進程間RPC調用,或者不同語言進程間監聽同一個隊列。但是說到底Linux的核心概念--「一切都是文件」,再了解一下用戶態和內核態你就知道優化方向了。


這種奇怪的要求這輩子都沒見過,不符合人性


為啥要混合開發呢?


推薦閱讀:
相关文章