2016-10-26 63 views
2

我正在研究一種電子商務應用程序,每次產品從服務器發送到客戶端時都必須重新計算產品的定價(每次發送數以千計的產品)。計算片本身是相當密集的,因爲它需要多個數據庫查詢來計算。我天真的解決方案是將計算部分抽象到另一個專門用於計算的node.js應用程序/服務器。有沒有人知道更好或更可擴展/最佳的方式來做到這一點?如何執行密集的node.js計算

在此先感謝!

+0

良好的第一步抽象計算到其他服務器。我建議查看[AMQP](https://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol)或亞馬遜的[SQS](https://aws.amazon.com/sqs/),並在性能+可靠性的基礎上創建分佈式系統是如此關心。但是,如果不知道關於系統的更多具體信息,我們只能給出一般性建議。 – tcooc

回答

2

將計算繁重的任務推遲到專用節點應用程序是一個好主意,但要注意,此應用程序事件循環也將被阻止,並且不能同時服務多個請求。

您仍然需要使用clusterchild_process.spawn()來產生專門的計算過程。

有關於不同的可能方法的fairly old but still good article