Git 多个应用服务器之间的同步

Git 多个应用服务器之间的同步,git,sync,Git,Sync,我们有一个应用程序,其主要功能位于文件中。此外,我们还有GIT回购协议,包括主分支机构和生产分支机构 该应用程序位于6台生产服务器上,前面是负载平衡服务器。 主要问题在于同步文件 现在我们有了文件的网络共享,所有服务器都在查看它。此解决方案存在网络负载问题(从共享中读取文件的连接数超过1000个),因此速度非常慢 我有几种解决方案: 使用一些同步软件 使用git钩子从本地repo获取更新,并在服务器上获取更新 找到一些网络负载的解决方案 什么是最佳选择?还有其他的解决办法吗?使用某种方法怎么样?

我们有一个应用程序,其主要功能位于文件中。此外,我们还有GIT回购协议,包括主分支机构和生产分支机构

该应用程序位于6台生产服务器上,前面是负载平衡服务器。 主要问题在于同步文件

现在我们有了文件的网络共享,所有服务器都在查看它。此解决方案存在网络负载问题(从共享中读取文件的连接数超过1000个),因此速度非常慢

我有几种解决方案:

  • 使用一些同步软件
  • 使用git钩子从本地repo获取更新,并在服务器上获取更新
  • 找到一些网络负载的解决方案

  • 什么是最佳选择?还有其他的解决办法吗?

    使用某种方法怎么样? 我不知道您的应用程序的详细信息,但通常CI server可以自动化测试并在应用程序服务器上部署

    根据您使用的语言,有一些CI服务器。根据我的经验,对于JAVA项目来说,这是一个很好的解决方案。

    是为这种代码部署而设计的。它将站点的本地副本从版本控制更新到新目录(使用Git,首先更新本地repo副本,因此速度非常快),当所有服务器都准备好新的代码库时,翻转一个符号链接并选择性地重新启动web服务,以便为站点的新版本提供服务。如果任何机器在该任务中失败,它将回滚所有机器


    虽然它最初是在RubyonRails网站上使用的,但它也被用于其他语言。我经常使用它,并且非常成功地在多个服务器上使用基于PHP的站点。

    服务器上有静态和动态内容吗?例如,用户图像?没有静态的,只有使用集成编程语言的脚本文件。这个应用程序(或工具)很不错,但我的应用程序不是web(php、ruby或其他任何东西)——它是一个复杂的windows应用程序,包含程序员编辑的宏文件。您的解决方案很好,但我需要一个程序来使用windows(或通过RDP)。我不熟悉持续集成,您能推荐任何特定的软件吗?唯一的条件-windows平台取决于您使用的平台/语言。无论如何,我已经用一个例子改进了我的答案。