嵌入式电信/网络和系统管理中间件:Enea Element
分布式系统分为简单的多线程应用、基于多插槽机柜的系统以及联网的服务器集群。当这些系统被移入基于云的环境中时,拓扑会变得更加复杂,当这些系统涉及到机器对机器(或M2M)解决方案时,拓扑会变得更加多样化。分布式系统软件解决方案提供商在构建、调试和维护一系列互连应用方面面临着多重挑战。管理这些系统需要使用强大的建模功能,并需要采用多种管理界面,以满足客户的各种要求。由分布式系统提供的服务通常需要具备较高的可用性。构成Enea Element的中间件框架可有效解决提供商面临的大部分挑战。
应用与Element中间件集成
Element中间件可轻松地与现有应用集成,充分发挥它的多样化性能。如果无法修改应用使其与Element APIs直接集成,可以在应用中套加Element功能。
对于大多数具有高可用性的简单案列,可以交由Element的高可用性代理应用驱动未修改的应用,高可用性框架会为其分配一个有效的高可用性角色,然后启动应用。
然后代理监控应用的未知错误并向高可用性框架报告这些错误。此时,高可用性框架和代理可执行各种错误恢复机制,包括适时重启应用,将应用故障迁移到另一节点或将运行故障应用的整个节点迁移到另一节点。
如果应用自身具有高可用性功能、管理或监控接口,Element代理会变得更加复杂。代理可作为功能网关,利用应用的接口,桥接Element服务和应用功能。甚至可使用Element的Python编译环境在Python中编写应用代理,提供快速的开发方法。
如果可以修改应用,那么可以从Element服务中获得更多数值。高可用性环境下的大多数应用要么属于守护进程,要么至少具有合理的生命周期。这些应用一般包括初始化序列,以及带有单个或多个事件循环的一个或多个线程。
添加Element支持好比一些Element服务初始化调用那么简单,然后在事件循环中添加Element消息检查。而对于使用套接字select或poll的阻断循环,Element套接字描述符可添加到检查中的描述符集。
如果Element套接字上存在活动,先调用ElemMsgReceive()然后再调用ElemSigDispatch()就可轻松处理一切,触发Element初始化调用中注册的任何相关回调方法,或应用注册的回调方法去处理应用特定消息。
可使用标准AMF API调用或更简单的方法,使用Element简化AMF封装程序就可增加高可用性或AMF支持。此外,还可增加更多的服务,比如用于运行时系统级调试的日志和命令服务。Element名称服务是一套非常强大的工具,用于服务发现、监管(了解此服务是否已停用)和同步。原理非常简单,发布一个标记(名称或字符串)宣告服务或订阅标记寻找服务。用于配置、监控和通知的嵌入式管理简单易用,相关建模也不复杂。
关键是应用可渐进式集成,根据需要逐步使用更多Element服务。Element API非常直观,支持递增集成。最后,利用Element Signal Dispatch等实用程序,处理事件/消息和对象API,实现负载重建和消耗,简化使用异步分布式解决方案开发方法。
云技术下的电信级高可用性
现如今,越来越多的传统嵌入式应用和服务开始拥抱云技术,而其中通信应用和服务在可用性和故障迁移方面,对云技术有着特殊要求。
一些使用案例中,99.5%的可用性貌似已相当不错,但另一些案例则要求传统电信级可用性达到“5个9”或99.999%,但是你能确保你的云计算服务提供商可以达到这样的要求吗?
一些服务提供商的故障管理或故障迁移模式非常出色,可将故障恢复时间控制在5到10秒之间。但你知道吗?事实上,你能管理和控制自己的故障管理和故障迁移模式并缩短停机时间?
Enea Element是可实现高可用性的电信标准SAF/AMF一致中间件解决方案,能与云计算环境无缝衔接。在电信中,群集中次50毫秒节点故障迁移是基本标准,但Enea Element在云环境下可控制在次10毫秒节点故障迁移水平。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码