2013-01-11 72 views
0

我正在尝试为我的原型制作工具制定一个简单的体系结构。基于Web的工具(基于.NET)将基本上从多个公共API请求数据,整理和处理响应数据(JSON或XML)并将汇总的数据保存到数据库中。这听起来很简单,但是该工具需要至少每天一次(约3000名用户)运行此过程(请求/处理/存储)。按计划任务(cron作业)定期运行此进程会显着恶化服务器(单个VPS)上的性能和资源使用情况。Web内容聚合的可伸缩性

所以问题是,可以利用什么样的体系结构或框架来使这样一个工具快速和可扩展,但简单和易于实现。

任何想法和想法,赞赏。

干杯。

回答

0

如果您在cron运行期间遇到资源消耗峰化的问题,那么不用cron连续运行您的程序。打破程序的细节可以持续运行取决于细节。例如可以说你有3000个用户;一个简单的方法是每28秒处理一个用户。

快速 - 你没有提到你的程序究竟是什么慢,你使用了什么算法等等。你的问题听起来像是你遇到了高峰负载问题。许多快速程序导致资源使用高峰。对我来说,这听起来像你会做得很好,让你的程序(故意)缓慢。 AND Slow并不意味着你没有效率地设计你的程序。

可扩展性 - 如果我们假设您的基本算法是好的,一种可扩展的方法是增加更多的机器!