我用nacos做的注册中心,试着配置了一个应用,同时配置了Dubbo和springcloud:
启动后到注册中心界面上看了一下,
springcloud的极其简单,就是一个微服务应用的名字而已(就那个短名字的),调用时想调哪个方法就写哪个,把整个应用作为一个服务,调用的是Controller中的方法,会通过注册中心找到对应的主机执行REST请求,看似就是一个服务名与主机地址的映射;等于所有方法都暴露为服务了。
dubbo的就很复杂,每个接口都作为一个服务,如图有6个,那我这个项目最终可能会注册上百个服务,每个服务的详情都列出了所有方法,看起来好重啊,难道是我用的不对吗?我是用的API方式,把需要暴露服务的接口都发布了,一个接口就是一个服务。dubbo暴露的服务要求提供一个接口,所以就把Service层接口作为服务发布了,但是这个接口七八个方法中,可能只有两三个是可能被其它服务调用的,但如果单独写个接口,感觉很麻烦。不暴露为服务的接口是访问不到的。需要考虑暴露哪些接口,暴露的接口及参数pojo类还需要放到公共的接口包中,好复杂呀