我还是仔细捋一捋这里面的几个逻辑
1,微服务经常跟云架构混淆,然而两者并不相同,微服务出现比容器云早,之初并没有云做支撑也在用,配置管理挺复杂罢了。有了云容器后发现这东西很适合管理它的就是这样。
2,微服务架构主要就为解决一个问题,复杂系统的模块分治。它允许大型系统按模块分组开发,局部升级和迭代,而不是如单体应用那样几千几万人共用一个不可以维护的庞大项目。带来的是服务注册与发现,状态管理,服务监控,消息队列,调用链管理等等一堆服务。如果不用微服务,云容器里可以没有这堆服务。
3,云容器跟微服务无关,用不用微服务架构跟云环境没有必然关联。云容器还能提供节点扩容,负载均衡,故障转移,熔断降级等一堆支撑功能,这些功能无论是不是微服务架构都有可能用到。
4,综上,云容器不依赖微服务,但微服务很难不依赖云容器,否则维护和管理成本很高。但正是因为微服务把各种东西都混杂到了应用这一层,所以现在多数人也不区分是因为业务逻辑和模块独立而切割的服务,还是物理扩容的应用,还是提供数据的应用等等。
5,这些年企业的业务越来越复杂,他们急需解决方案,目前来说,他们上微服务只能上云,企业出于数据安全和业务可控的要求,天然需要私有化部署,这种情况下私有云解决方案给多数企业带来沉重负担。
6,标题里说的很清楚eight是微服务的替代方案而不是云架构的,解决的就是复杂系统开发,维护和迭代的问题。只不过它也实现在局部业务层的组件管理和可观测,这些功能有点类似云管理的应用实例。eight可以与云环境结合,提供一个更清晰层次的云架构,减少大量割出的服务,同时使用云提供的扩容,负载均衡等其他功能。
7,但eight也能单独使用,直接建立一个动态部署的企业应用集群并对之有效管理,这正是线上系统做的(目前很初级)。至于云提供的其他功能,如负载均衡,故障转移,熔断也并不是只有上k8s,简单的集群解决方案加一个可控的反向代理就行(如带脚本的openresty),仔细看看你们下载的demo那个应用,里面的router管理想想是用来干啥的?至于动态伸缩,只要eight节点启动了,上面随时可以伸缩不同应用。
8,简单说,企业只需要部署openresty,redis,eight节点等几个简单组件,就可以构建功能与k8s和微服务类似的体系,并且运行是私有化和内部化的,运维却可以外包。从而摆脱一定得要上云的依赖,所以,从这个角度来说也是云架构的一种廉价替代。这对多数企业来说是有重要意义的(互联网公司除外)
【 在 jekler 的大作中提到: 】
: 你不要沉湎于过去。线上平台就是用来管理java节点的,尽管还很初级。但要论比k8s和docker麻烦。。。呵呵
--
FROM 221.217.52.*