作者pk740111 (霹靂神K)
看板Soft_Job
標題[請益] 不知道後端該怎麼選擇
時間Sat Dec 22 03:11:35 2018
各位好,最近我有個問題讓我很苦惱,希望本板專家能賜教。
敝公司正在開啟一個特別的專案:
擷取並統計對戰遊戲玩家戰績、分析玩家能力與技巧並能產生攻略供人查閱的工具。
最初步的構想是:
使用遊戲公司提供的API蒐集大量資料->統計、分析中高階玩家的習慣->選出頭幾項
玩家勝率最高的玩法->雲端算好的資訊傳給客戶
供客戶使用的平台是以Windows可執行檔為主、網頁版為輔,手機APP在中後期計畫中。
由於公司希望我能對開發環境提出建議,不過除前端以外,我並沒什麼概念。
蒐集了不少情報後,目前我的想法是這樣:
A.
桌面客端:C# WPF
網頁前端:HTML5/CSS3/ES6 + React.js
伺服器:Node.js + Express + 自製框架
資料庫:DynamoDB
雲端服務:AWS
資料分析/深度學習:Python
B.
桌面客端:C# WPF
網頁前端:HTML5/CSS3/ES6 + Vue.js
伺服器:ASP.NET Core + 自製框架
資料庫:Azure Cosmos DB
雲端服務:Azure
資料分析/深度學習:Python
這裡列一下主要影響規格的因素:
1.目前各項分工都缺人手,即使如此還是希望很快地開發出能用就好的第一版程式
2.這個專案會一直擴充功能,並不是一開始就設定好要作到什麼程度。
3.服務地區以英語國家為主
=========================================================================
12/22 10:50 追加一些資訊:
1.公司強調敏捷開發。
2.公司沒做過類似的專案,能諮詢的人員不多,台灣這裡還沒找到後端人才。
3.母公司錢很多
=========================================================================
12/22 14:45 補充參考範例
專案參考範例:
https://csgo-demos-manager.com/
不知我這A、B兩方案哪種比較推薦,
還是有什麼奇怪的地方、漏了哪些事情,希望能指出。
另外雖然我列的都是nosql資料庫,但實際上我並不懂sql和nosql哪種適合本專案,
希望板上專家能給予我寶貴的建議,謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.133.153.212
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1545419498.A.4BD.html
1F:推 tsao1211: 可以用Electron 12/22 03:55
2F:推 corvus: 是嗎 12/22 04:08
3F:→ mintu: 用 Electron 是肥大的執行檔,要有被 challenge 的打算喔 12/22 07:10
4F:→ mintu: XD 12/22 07:10
5F:推 brianhsu: 公司沒有後端嗎?要開發快還是用自己熟悉的技術比較好吧 12/22 08:09
6F:→ brianhsu: ? 12/22 08:09
7F:推 guest0710: 找個能負責的後端專家決定 12/22 08:39
8F:推 kewang: 先用你熟悉的 12/22 09:48
9F:推 DCTmaybe: 找你們家的後端問他熟悉哪一套 12/22 10:26
※ 編輯: pk740111 (220.133.153.212), 12/22/2018 10:51:21
10F:→ weinine32: 推薦splunk,省時省力 12/22 10:45
11F:→ pk740111: 謝謝,的確我也認為應該是看後端人員習慣的為主,但可惜 12/22 10:52
12F:→ pk740111: 我們這裡還沒有後端,人還在找。 12/22 10:53
13F:→ weinine32: 為何客戶端要用WPF?要綁什麼服務嗎?aws都用web介面了 12/22 10:54
14F:→ pk740111: 我自己列的選配,只是從前端角度"感覺"哪些搭哪些較配合 12/22 10:56
15F:→ weinine32: 除非用Splunk,否則資料庫建議用關聯資料庫才有SQL可以 12/22 10:57
16F:→ weinine32: 用。 12/22 10:57
17F:→ pk740111: 謝謝weinine32,WPF只是純粹我碰過,splunk我會好好調查 12/22 11:01
18F:→ weinine32: WPF已經被淘汰了,現在幾乎都用web當介面。你的架構很 12/22 11:06
19F:→ weinine32: 不OK... 12/22 11:06
20F:推 coronach: 1. B2B前端用網頁就好了 為什麼一定要執行檔? 12/22 11:07
21F:→ coronach: 2. 網頁前端框架這兩個都可以 看寫的人熟什麼 12/22 11:07
22F:→ coronach: SQL跟NoSQL各有優點 不過單一種也可以做完全部 12/22 11:08
23F:→ coronach: 4. 雲端平台哪家其實都可以 但是要選了再來規劃資料結構 12/22 11:10
24F:推 coronach: 5. 印象中splunk比較貴 有錢的時候是個選擇沒錯XD 12/22 11:12
25F:→ coronach: 資料真的長起來之前不一定要先架好資料平台... 12/22 11:13
26F:→ coronach: (主要是看你們是不是真的已經有接到客戶XD) 12/22 11:14
27F:→ pttuser2266: 找前端工程師建議後端架構? 12/22 11:32
28F:推 angle065: 這是LOL的嗎? 12/22 11:58
29F:→ pk740111: 遊戲中,我們的桌面端可以擷取API抓不到的資料加以分析 12/22 12:05
30F:→ pk740111: 不過這樣的功能也可能是專案中後期才會實現的了 12/22 12:06
31F:→ pk740111: 我想這樣的功能web應該沒辦法作到,所以才以桌面端為主 12/22 12:06
32F:→ pk740111: 謝謝coronach和以上等人回覆! 12/22 12:21
33F:推 stupid0319: 有web還寫桌面軟體幹嘛 12/22 12:23
34F:推 stupid0319: 這只要一個會寫前後端跟winapi的工程師就搞定了 12/22 12:27
35F:→ pk740111: 謝謝stupid0319,我是希望本專案還能抓遊戲客端情報, 12/22 12:58
36F:→ pk740111: 以及一些實用小工具作為Features,才想說要桌面程式。 12/22 12:59
37F:→ pk740111: WPF只是我最近看到,也試著使用過的樣本是WPF開發 12/22 13:01
38F:→ pk740111: 對其他方式還沒有很多概念。 12/22 13:01
39F:推 CRPKT: 這個案子的難度在 data pipeline 與分析方法吧 12/22 13:04
40F:→ pk740111: 我個人估計重點是資料庫維護和資料分析上 12/22 13:40
41F:→ pk740111: 不過是否要先找到後端還是分析師才能決定另一方要哪種人 12/22 14:27
42F:→ pk740111: 要是先找來了分析師,沒DB沒UX就一串企劃案好像也難開始 12/22 14:30
※ 編輯: pk740111 (220.133.153.212), 12/22/2018 14:47:44
43F:→ alog: 1. 你們公司要先去挖到一個曾營運/開發過高流量/高並發網站 12/23 02:02
44F:→ alog: 的後端工程師 不論你要net or nodejs 沒經驗的跑去挑戰這種 12/23 02:02
45F:→ alog: 給玩家查詢的平台很快就把系統弄掛了 遊戲領域的客群都很刁 12/23 02:02
46F:→ alog: 忠誠度低 沒辦法快速反應或當初設計好架構就是被定到專案 12/23 02:02
47F:→ alog: 直接收掉 2. 雲端平台要AWS/GCP/Azure 真的要等整個技術架構 12/23 02:02
48F:→ alog: 評估好後再找出成本佳獲得的成果的平台比較合適 12/23 02:02
49F:→ alog: 前端技術則要考量之後徵人你想要請什麼人進來 還有考量到如 12/23 02:04
50F:→ alog: 果要做教育訓練或帶新人時你覺得哪個比較好讓你處理 擇一定 12/23 02:04
51F:→ alog: 下來就好 無需變成AB選項 12/23 02:04
52F:→ alog: 資料庫大至上這種系統架構沒意外也會兩種混用 你要怎麼確定 12/23 02:10
53F:→ alog: 該用什麼,擇一還是要資深後端來估 12/23 02:10
54F:→ alog: 但如果要用最簡單的理由去挑的話 如果需求極度講究ACID的原 12/23 02:13
55F:→ alog: 則 你就該去使用關聯式的資料庫 12/23 02:13
56F:→ alog: 最後就是 不管你們公司有錢還是希望快點有第一版原型 12/23 02:19
57F:推 alog: 你們現在的狀況就像遊戲玩家想要打團體副本 卻坦缺補缺遠程 12/23 02:22
58F:→ alog: 輸出 只有一個滿裝的新台幣輸出角就想要硬幹王 結局可想而 12/23 02:22
59F:→ alog: 知啊 12/23 02:22
60F:→ alog: 第一版注定無法用 砍掉重構乃常見之事 12/23 02:23
61F:→ pk740111: 感謝alog!我想我知道該怎麼去說了,很棒的形容! 12/24 07:23
62F:→ viper9709: 推alog 12/24 21:47
63F:推 rocwild: 我覺得你應該考慮簡化選項。例如選語言而不是框架。比如 12/25 23:47
64F:→ rocwild: 說如果以js為主力的話那就前端使用 electron, 後端使用 n 12/25 23:47
65F:→ rocwild: ode.js + express之類的架設。 12/25 23:47
66F:→ rocwild: 我覺得你應該考慮簡化選項。例如選語言而不是框架。比如 12/25 23:48
67F:→ rocwild: 說如果以js為主力的話那就前端使用 electron, 後端使用 n 12/25 23:48
68F:→ rocwild: ode.js + express之類的架設。 12/25 23:48
69F:推 rocwild: 我覺得你應該考慮簡化選項。例如選語言而不是框架。比如 12/25 23:48
70F:→ rocwild: 說如果以js為主力的話那就前端使用 electron, 後端使用 n 12/25 23:48
71F:→ rocwild: ode.js + express之類的架設。 12/25 23:48
72F:→ rocwild: …打了一堆結果被mo ptt吃光了 12/25 23:50
73F:→ pk740111: 謝謝rocwild!我也是有這樣想法 js all the way感覺很爽 12/27 21:37
74F:→ pk740111: 不過prototype階段,桌端就是C#畢竟只是先改現成的作品 12/27 21:40