微服务中使用 OpenJ9 JVM 内存占用降60%(相对HotSpot)
随着微服务的普及,许多企业踏上微服务之旅。
微服务化后,应用数量可能高一个数量级。一般企业,以前三五个应用能支撑业务,微服务化之后应用数量可能多达几十个。
每个微服务往往独立部署,内存的消耗自然也高居不下,以前两台8核16G机器指不定就能跑起来,现两台16核64G还不一定够用,同时由于多套环境的存在加上容器编排工具(如K8s)所需的资源,硬件资源的投入自然是成倍增加。
随着微服务的普及,许多企业踏上微服务之旅。
微服务化后,应用数量可能高一个数量级。一般企业,以前三五个应用能支撑业务,微服务化之后应用数量可能多达几十个。
每个微服务往往独立部署,内存的消耗自然也高居不下,以前两台8核16G机器指不定就能跑起来,现两台16核64G还不一定够用,同时由于多套环境的存在加上容器编排工具(如K8s)所需的资源,硬件资源的投入自然是成倍增加。
Eureka
服务端的界面是可以自定义的,而且方式比较简单,下面我们来看下修改方式。
Eureka
服务注册中心是netflix
开源组织提供的一个服务高可用
的解决方案,在前端时间一直在疯传的2.0开源流产
的问题,其实并不影响我们的使用,netflix
只不过是不再维护2.0
分支的开源代码,所以做出了免责声明,不过对于我们使用者来说确实比较担心这一点,还有不少人更换服务注册中心,比如:zookeeper
、consul
。
Eureka
提供了Server
当然也提供了Client
,如果你对Eureka Server
不了解,通过阅读文章查看具体的编码实现。
我们一直在使用Eureka
进行注册服务,然而你有可能很少关心服务
在注册到Eureka Server
时是采用的主机名
的方式?还是IP地址
的方式?
在之前的章节我们讲到了/eureka-server.html,已经可以让我们自定义的微服务节点
进行注册到该Eureka Server
上,不过在注册过程中存在一个风险的问题,如果我们的Eureka Server
的地址无意暴露在外,那岂不是通过Eureka
协议创建的任意服务
都可以进行注册到该Eureka Server
吗?(当然如果你配置了服务器的安全组
并且使用内网的IP地址
或者主机名
方式对外提供服务注册地址
几乎不存在这个问题。)
你有没有考虑过Eureka Client
与Eureka Server
是通过什么方式进行通讯的?
为什么Client
启动成功后Server
就会被注册到Server
的服务列表内?
为什么我们在正常关闭Client
后Server
会有所感知?
既然这么多问题,带着这些问题来进行本章的学习吧。