猿问

求问我这个dubbo项目该怎么分包?

我现在这个项目有3个模块
1,User(用户模块)
2,Order(订单模块)
3,Game(游戏模块)

游戏模块需要调用用户和订单这两个模块的服务,我想使用Dubbo来维系Game和User以及Game和Order之间的关系

之前我只写了User和Game模块时,我是这样做的
我把User模块又拆成了2个子模块,User-Server和User-api,User-api中只写需要暴漏给Game的接口,然后User-Server通过Gradle来引用User-api,并实现对应的接口方法,然后在User_server中启动Dubbo将User-api中的接口以及User-Server中的实现类注册到zookper中,然后在Game模块中也通过Dubbo引用这User-api中的接口即可

但是我今天在写Order模块时,我也是这么做的,我也将Order拆成两部分:Order-api和Order-server,并将其注册到zookper中

但是在启动Order-server时,抛异常意思是20880端口已被占用,肯定是被User-server中的dubbo给占用了。

现在又有一点疑问,我这样分服务是不是不对,如果这样的话,是不是相当于启用了2个dubbo服务?

不知道,我这个该怎么解决呢???


繁花不似锦
浏览 652回答 3
3回答

暮色呼如

服务化就是这样的,如果机器够可以user和order各一台服务器,如果只有一台机器可以使用不同的端口号。

Cats萌萌

暴露接口的模块api放在一起吧
随时随地看视频慕课网APP

相关分类

Java
我要回答