动态更新Web应用程序

时间:2011-07-01 20:38:08

标签: php version-control

目前我正在为我正在研究的新公司制定商业计划,我已经成为这个新公司的首席程序员,因此我一直在为该项目提出一些想法。

我曾经有过的想法让我对处理它的方式感到困惑,我们的想法是拥有一个专用于控制客户端应用程序的中央管理服务器。

基本上我们有~1K客户端都在服务器上运行我们的客户端应用程序,当我们为系统发布补丁时,主服务器将连接到每个客户端并获取它的基本信息,如版本,磁盘空间等,然后我们相应地推送新的更新。

现在我知道我可以简单地创建一个覆盖文件的脚本,但这样做太不专业了,这是不够的,所以基本上我要问的是:

考虑到服务器负载,版本控制,更新历史等重要事实,我可以通过哪些方式更新~1K客户端应用程序?

有人认为我曾经使用像GitHub这样的东西来管理修订,但我并不知道如何去做。

任何建议表示赞赏,亲切的问候。

1 个答案:

答案 0 :(得分:1)

我猜想处理这种情况的最佳方法是将更新机制构建到客户端应用程序本身。然后,当更新准备就绪时,您可以让主mgmt服务器连接到客户端并通知他们更新可用。

而不是在不考虑客户端当时正在做什么的情况下从服务器覆盖文件,这样每个客户端就能够获得更新并在最好的时候安装它。

序列将是这样的:

  1. 服务器通知客户端有可用的更新
  2. 客户完​​成正在执行的任务
  3. 客户端检索并安装更新
  4. 客户端通知服务器安装状态(成功/失败)以及安装期间发生的任何错误
  5. 服务器会在某种历史记录中记录安装信息。
  6. 我们在不久前的一个项目中使用了这个机制,虽然只有少数客户(少于20个) - 而且效果非常好。