2

我正在构建一个软件系统,它使用 Javascript 来显示一个可编辑的服务器任务队列(比如程序 xyz 一次在服务器上做一个任务)。

  1. 浏览器 UI(OO JavaScript 和 JQuery)
  2. AJAX
  3. [缺少相关技术]
  4. Linux PHP(触发应用程序运行的脚本)

现在 UI 队列工作得很好,但是如果有人关闭他们的浏览器,JavaScript 队列 UI 应用程序的状态就会丢失(我的 linux 机器上的程序应该执行的所有任务)

那么如何实现这一点呢?我是否需要在我的 RedHat 服务器上作为服务运行的 Web 应用程序与我编写的面向对象的 JavaScript 应用程序通信。服务器任务已经通过 PHP 征用。

这可以用PHP吗?我想避免此时拥有数据库。Java/Tomcat 解决方案也浮现在脑海中。你怎么看?感谢您阅读本文。

4

1 回答 1

0

您需要将服务器上的队列状态至少保存到内存,最好也保存到磁盘。为了在内存中表示,创建两个类QueueQueueEntry前者由后者组成。如果您只保留到内存,那么如果服务器进程重新启动,您将丢失队列状态 - 因此,如果您想通过重新启动来保持状态,请写入磁盘。假设 Java,做必要的使这些类可序列化并使用ReadWriteLock写出到磁盘以避免争用。

更新以反映使用数据库

而不是序列化,有一个队列条目表。添加一列以指示顺序 - 最有可能插入日期。

于 2012-06-28T13:18:57.143 回答