Airbnb开源web服务自动化管理工具SmartStack
- - IT经理网Airbnb最近在Github上开源了web服务自动化管理工具SmartStack,该工具能实现web服务之间的通讯,同时能自动关闭出现问题的服务,确保整个系统的可用性. 为web应用搭建SOA架构听上去不错,但是管理如此之多的服务——这些服务各自为政同时又互相通信,是一件非常棘手的事情. Airbnb解决这个问题的方法是自行开发出web服务自动化通讯管理工具——SmartStack.
Airbnb最近在Github上开源了web服务自动化管理工具SmartStack,该工具能实现web服务之间的通讯,同时能自动关闭出现问题的服务,确保整个系统的可用性。
为web应用搭建SOA架构听上去不错,但是管理如此之多的服务——这些服务各自为政同时又互相通信,是一件非常棘手的事情。Airbnb解决这个问题的方法是自行开发出web服务自动化通讯管理工具——SmartStack。
本周三Airbnb在 官方博客上详细介绍了SmartStack的工作原理。SmartStack通过将服务之间的通讯自动化和分布化来保障系统的可用性。SmartStack的一个组件 Nerve用于检查应用的健康状况,如果应用一切正常,另一个组件 Synapse就会负责将这个应用/服务“介绍”给其他应用或者服务。如果应用或者服务出现问题,Synapse就会将其屏蔽。目前这两个组件的代码都已在 Github上开放。
关于SmartStack的其他功能,Airbnb的官博上有详细介绍,包括如何在SmartStack基础上开发工具实现亚马逊AWS云计算资源的负载均衡等。
SmartStack的意义还在于,它说明开源不仅是那些有实力的大公司的专利(例如Facebook的MySQL管理、Linkedin自行开发新数据库,或者Netflix开发自己的服务管理系统)Airbnb这样的创业公司在业务扩张,分布式系统日益庞大的时候也能创造性地解决问题,并回馈给开源社区。