Spring RMI接口超时自动重连的配置

本文详细解析了使用RMI接口时,服务端重启导致客户端无法访问的问题,解释了RMI接口中存根的工作原理,并提供了解决方案以确保服务器重启后客户端仍能正常访问。
部署运行你感兴趣的模型镜像

           最近整理资料,发现关于Spring RMI接口的一些资料,是关于RMI接口服务端重启会影响客户端的一些问题,曾经我们的项目采用RMI的接口进行服务器与服务器端的通讯,后来发现当服务器端修改东西重启之后,客户端就访问不到服务器端,当时一直纠结这个问题是怎么引起的,后来查了一些资料,发现,RMI客户客户端与服务端第一次建立连接的时候会在客户端生成一个stub,我们称之为存根,并且在服务端注册,以后RMI服务端与客户端都会基于这个文件进行通讯,当客户端需要访问服务端的时候会首先扫描这个文件,然后访问客户端,当客户端验证的时候发现注册了就会通过,如果发现没有注册就会拒绝本次访问,所以当服务端重启之后,曾经所有stub注册都会失效,所以客户端会一直访问不到客户端,必须重新启动,以获取新的stub,不过RMI接口下有避免这种情况的相关配置,配置如下:

       <bean id="yourRMIService" class="org.springframework.remoting.rmi.RmiProxyFactoryBean">
<property name="serviceUrl" value="${app.remoting.url}" />
<property name="serviceInterface" value="${app.remoting.serviceInterface}" />
<!-- 连接出错时自动重连 -->
<property name="refreshStubOnConnectFailure" value="true" />
<!-- 不在容器启动的时候创建与Server端的连接 -->
<property name="lookupStubOnStartup" value="false" />

</bean>

    如上配置之后,当服务端重启之后,客户端访问不到服务端时,会自动去重新获取stub,这样就可以实现服务器端重启之后,不会影响到客户端了,这样可以给相关的系统减少很大的风险与麻烦。

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值