一般情况下,一个应用程序由4个模块构成:配置模块,心跳模块,报警模块,主体模块。
示意图如图1。
图1
1、配置模块
给整个应用程序提供配置,包括另外3个模块。
2、心跳模块
负责维持与心跳中心的心跳,心跳中心根据心跳状态检测应用程序是否存活。
心跳中心与应用程序禁止处于同一台机器,否则该台机器一旦出现故障宕机,就会面临“应用程序挂了且没有机制能告警该状态”的最坏情况,不处于同一台机器,面临“应用程序挂了且没有机制能告警该状态”最坏情况的可能性就大大降低。
3、报警模块
隶属于应用程序自身的“报警模块”相对于“第三方报警模块”更加明晰应用程序的业务逻辑,因此,告警会更加全面完整准确。
4、主体模块
应用程序的主体模块,完成应用程序的主体任务。