PHP/Python/Rube-长时间运行的任务和短预览



我有一个web前端,它使用来自必须频繁批量运行的任务的数据(这比我想使用PHP需要更多的时间)。数据可以存储在数据库中,所以我计划编写一个Java应用程序来运行该任务,并将数据库用作中间人,以使该任务的结果可访问web。

问题是,偶尔需要对这些数据进行"预览"。IE,有时用户需要请求在提示下生成数据样本(可以快速计算)。

这给我带来了一个真正的问题,这个预览更适合像PHP这样的语言,尽管它本质上是相同的任务。这只是两种情况,在情况A中,有许多用户的实际工作要做,因此任务需要足够长的时间才能完成(比PHP请求所能容纳的时间还要长),在情况B中,这是一个只供一个用户当场运行的小工作,可以在PHP中毫无问题地完成。

我不想写两次这段代码,这会让维护成为一场噩梦,所以我需要选择一种语言并坚持使用它。前端是设计好的,但没有实现,所以如果需要的话,我有机会用PHP、Ruby或Python编写网站。我了解PHP,所以只有当其中一种语言能解决这个问题时,我才会考虑改用Python或Ruby。但我对这些语言知之甚少,如果不学习它们,我真的无法开始知道它们是否能提供解决方案(我没有时间使用atm)。

简而言之,有没有一种非黑客的方法可以用RubyonRails或Python编写短时间、快速的事件驱动代码和长时间重复的代码?如果没有,你有什么想法如何用PHP或Java来满足这两种情况吗?

语言是无关紧要的。

只需将"短"操作放在函数(对象,如果它很复杂)中,并从两个位置使用它:

  1. 需要"预览"的web代码将调用它一次并获取其数据
  2. 长时间运行的后台进程将根据需要反复调用它,并将函数的结果存储在DB中,而不是立即返回给用户

可以在PHP中轻松完成。由于5.3

,长时间运行的进程不是问题

最新更新