微服务(Micro Service Architecture)浅析
2016-03-22 08:55
274 查看
最近一段时间,微服务的概念很火,可能是跟Docker技术的快速发展和壮大有一定的关系,同时借助于Uber、Netflix、Groupon等公司的实践、宣传和推广,使得MSA渐渐地成为企业或者架构师讨论的热门话题。那么,微服务到底是什么呢?谈谈我的比较片面的看法。
微服务不是什么?
[b]微服务不是SOA;[/b]
[b]微服务不是一种设计模式;[/b]
[b]微服务不是最佳实践;[/b]
微服务不是解决大型业务架构的救命稻草;
微服务不适合初创团队或者企业来使用;
微服务是什么?
微服务是一种架构理论;
微服务由很多具有高内聚、低耦合的服务组成;
微服务之间的通信应该是轻量级的,推荐使用傻瓜式的MQ组件而不是大而全的ESB;
微服务是一种按照业务功能来划分团队的协作模式,通常需要高质量的全栈人才作为支撑;
微服务解决的痛点问题有哪些?
应用服务的可扩展能力是重中之重;
高效的发布机制和尽量短的发布周期;
实现微服务架构的前置条件有哪些?
一个大型的项目或者应用;
严格的自动化部署和监控机制;
有效的容器平台:Docker或者其他;
系统服务之间的微服务是非共享的;
实现微服务的切入点是什么?
大型系统的发布周期过于缓慢,导致不能满足业务变化的需要,可采用微服务来替换需要高频发布的组件;
针对大型老系统的升级和迁移,为了减少风险,可采用微服务来逐步分离和部署;
针对于大型应用系统的性能问题,可以采用微服务分离出性能要求高的组件,进行独立部署和使用。
参考资料:
don't take micro-services off-road
microservices
微服务不是什么?
[b]微服务不是SOA;[/b]
[b]微服务不是一种设计模式;[/b]
[b]微服务不是最佳实践;[/b]
微服务不是解决大型业务架构的救命稻草;
微服务不适合初创团队或者企业来使用;
微服务是什么?
微服务是一种架构理论;
微服务由很多具有高内聚、低耦合的服务组成;
微服务之间的通信应该是轻量级的,推荐使用傻瓜式的MQ组件而不是大而全的ESB;
微服务是一种按照业务功能来划分团队的协作模式,通常需要高质量的全栈人才作为支撑;
微服务解决的痛点问题有哪些?
应用服务的可扩展能力是重中之重;
高效的发布机制和尽量短的发布周期;
实现微服务架构的前置条件有哪些?
一个大型的项目或者应用;
严格的自动化部署和监控机制;
有效的容器平台:Docker或者其他;
系统服务之间的微服务是非共享的;
实现微服务的切入点是什么?
大型系统的发布周期过于缓慢,导致不能满足业务变化的需要,可采用微服务来替换需要高频发布的组件;
针对大型老系统的升级和迁移,为了减少风险,可采用微服务来逐步分离和部署;
针对于大型应用系统的性能问题,可以采用微服务分离出性能要求高的组件,进行独立部署和使用。
参考资料:
don't take micro-services off-road
microservices
相关文章推荐
- Junit使用教程(一)
- U盘掉了
- SAP主数据字段前导零 策略
- POJ 1286 解题报告
- Android实现控件随手指滑动缩放
- 进阶级-正则表达式
- 【HTML5】H5的新标签简介
- 20160322 股票入门
- 倍增法lca
- CLUSTER集群与存储技术
- Java中动态地改变数组长度及数组转Map的代码实例分享
- aodv之二
- CSS-float
- .NET面试题解析(07)-多线程编程与线程同步
- Java 多线程编程
- 横竖屏切换和contentView的三种显示方式
- Linux下压缩解压缩命令详解
- Android OkHttp完全解析 是时候来了解OkHttp了
- JAVA初学者第一个程序“Hello World”常见的错误及处理方法
- R语言之创建数据集