2017-02-22 40 views
0

我正在用Mongo,Express和Node.js創建一個應用程序。該應用程序爲桌面戰爭遊戲(小型戰鬥)定製戰車的模型/描述。在這種情況下哪種數據存儲和檢索策略更具性能?

每輛車都有幾個屬性,例如車身類型,動力源等。大約有六種這樣的屬性。每個房產可用的選項在大多數情況下不到十幾個。雖然有些選項會有幾個數據點(成本,重量,大小,名稱等),但這些選項的說明不會經常更改,如果有的話。另外,雖然可能會增加新選項,但這種情況並不常見。

換句話說,大部分數據都是靜態的。用戶數據(用戶設計的車輛等)和車輛描述將被存儲在mongo數據庫中,因爲這些數據是可變的和經常擴展的。

但是,在API編程中將其他一些信息作爲常量使用會更有意義嗎?組件位置的值列表是一個簡單的數組(上,下,前,後,左右),因此很容易實現。但身體類型有13個選項,每個選項有6個屬性(名稱,類型,成本,重量等)。簡單地將這樣的東西放入根據需要檢索的JSON文件中是否更高效?或者把它放在數據庫中?

同樣,數據(非常)是靜態的,所以維護不是主要問題。內存使用情況,以及可能的網絡帶寬。

在JSON文件的情況下,API(或UI,取決於場景)需要使用我編寫的過濾函數來挑選出適用的記錄,儘管遍歷13條數組看起來並不像那是密集的。同時,如果我將它存儲在Mongo中,我將只會查看已經過濾的數據。調用Mongo會比打開純文本文件更快和/或更少資源密集?

這是否有一個粗略的閾值?有超過二打的武器,其中一些有變化。

那麼,我最好只是製作一個JSON文件或將它放入Mongo集合中?或者沒有關係,也許我把這個重點放在了拖延寫代碼的方法上?

回答

0

請嘗試從maintainabilityextensibility的角度來看它。

  • 您需要重新部署才能進行更改嗎?
  • 無論如何你會打幾個網絡電話?
  • 將某些值「硬編碼」會使您的流程糾結?
  • 如何在主機之間共享數據,這是一個問題?

對我來說,感覺你應該將你的數據存儲在某個數據存儲區(mongo)。

相關問題