2013-01-11 123 views
0

我正在嘗試爲我的原型製作工具制定一個簡單的體系結構。基於Web的工具(基於.NET)將基本上從多個公共API請求數據,整理和處理響應數據(JSON或XML)並將彙總的數據保存到數據庫中。這聽起來很簡單,但是該工具需要至少每天一次(約3000名用戶)運行此過程(請求/處理/存儲)。按計劃任務(cron作業)定期運行此進程會顯着惡化服務器(單個VPS)上的性能和資源使用情況。Web內容聚合的可伸縮性

所以問題是,可以利用什麼樣的體系結構或框架來使這樣一個工具快速和可擴展,但簡單和易於實現。

任何想法和想法,讚賞。

乾杯。

回答

0

如果您在cron運行期間遇到資源消耗峯化的問題,那麼不用cron連續運行您的程序。打破程序的細節可以持續運行取決於細節。例如可以說你有3000個用戶;一個簡單的方法是每28秒處理一個用戶。

快速 - 你沒有提到你的程序究竟是什麼慢,你使用了什麼算法等等。你的問題聽起來像是你遇到了高峯負載問題。許多快速程序導致資源使用高峯。對我來說,這聽起來像你會做得很好,讓你的程序(故意)緩慢。 AND Slow並不意味着你沒有效率地設計你的程序。

可擴展性 - 如果我們假設您的基本算法是好的,一種可擴展的方法是增加更多的機器!