http://www.infoq.com/cn/news/2013/12/micro-service-architecture/
微服务架构是个很有趣的概念,它的主要作用是将功能分解到离散的各个服务当中,从而降低系统的耦合性,并提供更加灵活的服务支持。
解析微服务
微服务是一种简单的应用,大概有10到100行代码。通信
最基本的答案就是通过HTTP公开所有服务,然后以JSON作为数据交换格式。监控与度量
只知道服务还能用是不够的,服务是不是还能提供业务价值?还能否继续使用?它是可靠交易的瓶颈么?JVM世界中的Metrics与Ostrich等库不仅可以收集度量信息,还提供了与Nagios和Ganglia等服务的集成,可以将数据发送给他们。
测试
对于基于微服务架构的系统来说,测试服务并没有什么特殊之处,不过我这里要强调的是你不必再对每个服务使用完整的测试套件了。因为一个服务只做一件事,因此引入系统Bug的几率明显降低了,这要归功于基于服务的系统的天生的行为。我的意思并不是说不用做测试,而是建议你在使用过去的测试前多思考一下。