一旦所有利益相关者都认同了Web基础架构的自动化过程和流程,选择工具就变得很简单了。由于所有利益相关者都已经讨论过自动化在组织中的实现形式,因此确定需要使用哪些软件才可以实现预期结果就不难了。...
在开始任何自动化工作之前,要先执行一个最佳实践方法:检查现有的遗留基础架构和软件,确定是否有一些东西需要删除或整合。系统越简单,未优化和未自动化的代码中所要做的重复工作越少,自动化项目所能产生的结果就越好。...
假设我们有一个多人游戏网站,其中的一个服务器群包含大量的应用程序和消息服务器,它们负责支持各个玩家在多人游戏中的交流,以及生成玩家在太空射击游戏中使用的可视化Web界面。...
在分析哪些方面需要实现自动化时,人们往往希望将所有软件都自动化。可问题在于,自动化会在构建、配置、管理和修复网站软件组件的层次上,再增加一层抽象。自动化只在最顶层再增加一层或多层抽象。...
这似乎是很显然的,但是在计划如何实现系统自动化之前,我们需要获得所有利益相关者的信息,其中包括业务和执行管理人员。对于组织中参与一个特定网站的所有团队来说,他们都会特别关注于自己的部门,而这种关注可能与其他团队发生冲突。在创建和管理Web基础架构自动化的过程中,无论各自团队的目标是什么(节约成本、节约时间和确定业务优先级等),他们都应该达成一致协议。...
假设一家公司已经有一些基础架构,需要安装新版本操作系统、新的应用服务器程序和新的代码库,并且有400个应用程序需要重新安装。根据表5-1度量标准来看,如果以人工方式执行所有任务,那么为每台服务器安装和配置操作系统需要花费1小时,更新Web服务器需要10分钟,安装 Hadoop节点需要1小时,安装 Rails)应用程序需要30分钟。此外,我们还可以从这些度量标准计算出自动化可以节省的时间。...
在大型网站基础架构上,我们希望尽可能地保持系统的一致性。我们希望在整个基础架构上使用相同的硬件、软件和功能。然而,系统维护通常会慢慢变成一种人工操作过程或自动化程度较低的过程,这意味着软件和功能会经常出现不一致性,或许只有在稍后报告给系统管理团队或开发团队时,这些问题才会暴露出来。随着网站访客的增多,出错的可能性也会进一步增加。...
在一个拥有大量服务器的大规模网站中,安装新的应用服务器程序部署新代码或检査系统配置一致性等任务都非常耗费时间。假如要在数百甚至上千台服务器上安装应用服务器程序,一次只安装一台,那么这种庞大的任务量显然需要另辟蹊径才行:编写一个 Shell a脚本,实现在中央数据存储区上仅通过一个指令就可以安装好应用服务器程序。...
即使在一些有着稳健和健康的文档编写文化的组织中,应用的进化和修改速度也会远远快于文档编写速度。现实情况是软件变化速度远远快于文档编写速度,即使有自动化文档系统,有时候我们仍然需要人工编写一些文档。这种文档需要通过一定的技术转换,方能提供给在特殊阅读环境中的读者阅读,因此无法通过自动化方法维护。...
一个组织不可能只有高级软件工程师或系统管理员,所以,只有基于特定规范的文档就意味着只有高级技术人员才能阅读这些文档。这是一种机能障碍问题。当然,这些文档也是必要和重要的,这已经比只有阅读代码才能了解应用程序的情况好很多了。然而,这并不是一种完整的文档战略与文化。...