容错规划
容错或“高可用性”对于任何成功的业务运营至关重要。为了确保在发生故障时处理请求,FME服务器支持在整个集成系统的多个级别中配置容错公差。FME服务器通过以下方式提供容错性:
- 复苏:发生崩溃时重新启动组件和作业。FME Server自动提供组件和作业恢复,不需要额外的规划。
- 故障转移:确保没有单点故障。可以使用两种不同的配置来实现这一点:Active/Passive或Active/Active。故障转移是决定要实现的安装体系结构类型的主要考虑因素。
对经济复苏
组件恢复
FME服务器自带组件恢复功能。这意味着,即使在单个系统上,FME Server也会监视和重启发生故障的组件,包括FME引擎和FME服务器核心。这是通过FME服务器进程监视器.FME Server监控自己组件的能力确保了可靠的正常运行时间和可靠性。
工作恢复
FME服务器还包括在崩溃时重新启动翻译(作业)的能力。FME服务器继续重新提交翻译,直到指定的尝试次数。因此,遇到临时问题(如网络故障)的作业将被重新提交并再次运行。作业恢复是可配置的,可以完全关闭。有关更多信息,请参见工作恢复.
注意:重新提交的作业可能导致数据重复,例如写入数据库格式时。
关于故障转移
故障转移环境的目标是删除单点故障,以便组件可以发生故障,但不会使系统脱机。FME Server支持两种故障转移方法:主动被动和active - active.
我们通常推荐Active/Passive架构,它可以满足大多数企业的需求。这两种方法各有利弊。
主动被动
使用主-被动故障转移方法,当主用系统发生故障时,被动系统将接管故障的主用系统的能力,并承担主用系统的角色。而失败的系统则采用被动模式。当新的Active系统提供FME服务器的持续运行时,可以对故障系统进行调查。一旦被动系统被恢复,它将保持此角色,直到主动系统发生另一个故障。
故障转移是通过主动系统和被动系统之间的心跳监视器实现的。通常导致故障转移的故障类型是硬件或操作系统崩溃,主要系统完全宕机。
重新提交故障转移时丢失的任何翻译。这些包括由于托管FME引擎的机器上的电源而失败的作业,以及完成的工作,但由于托管FME服务器核心的机器上的电源丢失,仍被认为丢失。
在主动被动架构中,FME服务器Web应用程序服务器和FME服务器系统共享文件物理上分开。必须由客户端提供这些组件的容错。有关更多信息,请参见主动-被动架构.
主被动的优点
- 发布工作区是整个系统的一次性任务。
- 作业恢复内置于容错设计。
主被动的缺点
- 需要多个物理或虚拟系统,因为每个组件及其故障转移都在不同的系统上。也就是说,至少两个FME服务器核心系统,以及Web应用程序服务器,数据库和文件系统的单独系统。
active - active
主动活动故障转移架构在单独的服务器上重复完整的FME服务器安装。换句话说,所有组件都驻留在同一系统上,并且其他系统配置类似地配置并提供类似的功能。第三方负载均衡器将传入流量指向其中一个可用系统。当请求被引导到任何系统时,它们独立处理,只能由一个系统处理。这种方法适用于基于云的计算环境,例如亚马逊Web服务,其中可以轻松克隆机器以扩展容量。
有关更多信息,请参见active - active架构.
active - active的优点
- 简单安装使用快速安装选项。
- 创建容错环境所需的机器更少。
- 通过添加更多的系统,可以轻松实现额外的吞吐量。
主动活性的缺点
- 需要管理多个FME服务器。
- 工作空间必须发布到每个系统,手动或通过脚本,以保持父和子项同步。
- 没有内置的作业恢复。在系统上运行的任何失败的翻译都将丢失,直到系统恢复联机,或者必须在另一个系统上手动重新提交。
- 当系统发生故障时,处理能力会下降。
- 可能仍然需要整个环境的FME服务器系统共享的恢复/复制。
- 计划不会故障转移;必须在另一个系统上手动重新启动它们。