我一直在研究基于云的(AWS EC2)PHP Web应用程序,在使用多个服务器(所有这些都在AWS Elastic Load Balancer下)时,我正在努力解决一个问题.在一台服务器上,当我上传最新文件时,它们会立即在整个应用程序中生成.但是,当使用多个服务器时,情况并非如此 - 每次提交更改时,都必须将文件上传到每个服务器.如果您不经常更新任何内容,或者您只有一台或两台服务器,这可能会正常工作.但是,如果您在一周内多次更新系统,跨十台服务器怎么办?
我正在寻找的是一种从我们的开发或测试服务器"提交"更改并立即将其"推送"到我们所有生产服务器的方法.理想情况下,更新一次只应用于一个服务器(即使每个服务器只需要一两秒),因此ELB不会在文件更改时向其发送流量,以免中断任何可能的生产流量流向ELB.这样做的最佳方式是什么?我的一个想法是在开发服务器上使用SVN,但这并没有真正"推送"到服务器上.我正在寻找一个只需几秒钟的时间来提交更新并随后开始将其应用于服务器的流程.此外,对于熟悉AWS的人来说,使用最新更新更新AMI的最佳方法是什么,因此自动缩放器始终使用最新版本的软件启动新实例?
必须有很好的方法来做到这一点....不能真正想象Facebook,谷歌,苹果,亚马逊,Twitter等网站经过手动更新数百或数千台服务器,并在进行更改时逐一更新.
在此先感谢您的帮助.我希望我们能找到解决这个问题的方法......在最后一天,我和我的商业伙伴至少要进行100次Google搜索才能证明在解决这个问题上大部分都没有成功.
亚历克斯
我正在使用所有库的最新版本(jQuery 1.7.1和jQuery UI 1.8.16),但是我已经绑定.live('click')事件的按钮即使在按钮被禁用时仍会触发.当我将常规.click()事件绑定到它时,它不会触发.
有什么建议?我正在考虑我正在使用.live()不当或这是jQuery UI中的一个错误.
这是一个JSFiddle来演示. http://jsfiddle.net/Kb66j/1/
谢谢!亚历克斯