java rmi 使用管道_使用Java RMI时要记住的两件事

java rmi 使用管道

这是一篇简短的博客文章,介绍使用Java RMI时应注意的两个常见陷阱。

设置java.rmi.server.hostname

如果您感到陌生,Connection拒绝托管: RMI客户端上的错误消息,并且您确定连接应该正常工作(您仔细检查了所有标准配置,例如网络配置等)。RMI系统属性java.rmi.server.hostname值得研究。

要在远程对象上调用方法,RMI客户端首先必须从RMI注册表中检索远程存根对象。 此存根对象包含服务器地址,该服务器地址稍后将在应调用远程方法时用于连接到远程对象(与RMI注册表的连接和与远程对象的连接是两个完全不同的东西)。 默认情况下,服务器将尝试检测自己的地址并将其传递给存根对象。 不幸的是,用于检测服务器地址的算法并不总是产生有用的结果(取决于网络配置)。

通过在RMI服务器上设置系统属性java.rmi.server.hostname,可以覆盖传递给存根对象的服务器地址。

这可以用Java代码完成

System.setProperty("java.rmi.server.hostname", "<<rmi server ip>>");

或添加Java命令行参数:

-Djava.rmi.server.hostname=<<rmi server ip>>

设置RMI服务端口

如果在通过防火墙进行RMI调用时遇到麻烦,则应确保为远程对象设置了特定的端口。 默认情况下,RMI注册表使用端口1099,因此请确保在防火墙中打开了此端口。 但是,此端口仅由客户端用于连接到RMI注册表,而不用于存根和远程对象之间的通信。 对于后面的一个,默认情况下使用随机端口。 由于您不想打开防火墙中的所有端口,因此应为RMI远程对象设置特定的端口。

这可以通过重写RMISocketFactory的createServerSocket()方法来完成:

public class MyRMISocketFactory extends RMISocketFactory {private static final int PREFERED_PORT = 1234;public ServerSocket createServerSocket(int port) throws IOException {if (port == 0) {return new ServerSocket(PREFERED_PORT);}return super.createServerSocket(port);}
}

默认情况下,如果将0作为参数传递,则createServerSocket()选择一个空闲的随机端口。 在createServerSocket()的此修改版本中,将0作为参数传递时,将返回特定端口(1234)。

如果您使用的是Spring的RmiServiceExporter,则可以使用setServicePort()方法在特定端口上导出服务:

<bean class="org.springframework.remoting.rmi.RmiServiceExporter"><property name="servicePort" value="1234"/>...
</bean>

请注意,多个远程对象/服务可以共享同一端口。 设置特定端口后,只需在防火墙中打开此端口。

参考:在mscharhag,Programming and Stuff博客上,我们的JCG合作伙伴 Michael Scharhag 使用Java RMI时要记住两件事 。

翻译自: https://www.javacodegeeks.com/2013/11/two-things-to-remember-when-using-java-rmi.html

java rmi 使用管道

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/344650.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【渝粤教育】广东开放大学 文化产业项目案例分析 形成性考核 (51)

选择题 题目&#xff1a;《武林外传》发生在虚拟的唐代。 答案&#xff1a;看左侧 题目&#xff1a;《武林外传》中李大嘴是一个厨师。 答案&#xff1a;看左侧 题目&#xff1a;《疯狂动物城》是一部动画片。 答案&#xff1a;看左侧 题目&#xff1a;影片的整体框架是“小镇少…

01_2_数字基带传输及其频谱特性

一、数字基带信号的表示 g(t)g(t)g(t)是一个基本的脉冲&#xff0c;有不同形状&#xff1b;ana_nan​从信源出来的信息码序列&#xff0c;只有电平特性。 二、功率谱密度的推导过程 ① 广义平稳随机信号的自相关函数和功率谱密度之间互为傅立叶变换关系 ② 计算基带信号的自相…

【渝粤教育】广东开放大学 标准化理论与方法 形成性考核 (53)

选择题 题目&#xff1a; 根据《标准化法》规定&#xff0c;企业生产的产品没有国家标准、行业标准和地方标准的&#xff0c;应当制定相应的企业标准作为( )。 答案&#xff1a;看左侧 题目&#xff1a; 现阶段常用的标准的载体包括( )。 答案&#xff1a;看左侧 题目&#x…

Linux环境变量剖析

一、什么是环境变量 概念&#xff1a;环境变量&#xff08;environment variables&#xff09;一般是指在操作系统中用来指定操作系统运行环境的一些参数&#xff0c;是在操作系统中一个具有特定名字的对象&#xff0c;它包含了一个或多个应用程序所将使用到的信息&#xff0c…

APIGEE:用于API代理的CI / CD管道

在本文中&#xff0c;我们将看到如何为APIGEE API代理创建CI / CD管道。 我已经参考了APIGEE社区上同一主题的几篇文章。 这些给了一些关于如何为API代理设置CI / CD管道的想法。 这是我用来设置CI / CD的工具。 詹金斯 节点 蜂胶 新人 APIGEE管理API 确保已创建APIGEE边…

【渝粤教育】广东开放大学 知识产权法 形成性考核 (34)

选择题 题目&#xff1a;作品的独创性要求作品系作者独立完成&#xff0c;不是抄袭而来。 题目&#xff1a;下列关于发行权的表述&#xff0c;不正确的是&#xff08; &#xff09; 题目&#xff1a;下列哪一情形可以授予专利&#xff1f;&#xff08; &#xff09; 题目&#…

01_3基带传输的常用码型和码间串扰

第十七讲 基带传输的常用码型和码间串扰 第一节 基带传输的常用码型 一、数字基带信号的编码规则 基带传输对信号的要求&#xff08;即独立又有联系&#xff09; 对传输码型的要求&#xff1a;原始消息码必须编成适合于信道传输用的码型&#xff08;码型的选择&#xff09; …

【渝粤教育】广东开放大学 网络市场调查与预测 形成性考核 (23)

选择题 题目&#xff1a;&#xff08;&#xff09;是利用互联网发掘和了解顾客需求、市场机会、竞争对手、行业潮流、分销渠道以及战略合作伙伴等方面的情况。 题目&#xff1a;市场调查首先要解决的问题是&#xff08; &#xff09;。 题目&#xff1a;为了在市场调查方案实施…

移动通信考前预习_第1章_无线通信系统概述

下周考试&#xff0c;开始预习。 第一章为概念&#xff0c;直接copyPPT。 第1章 无线通信系统概述 一、移动通信发展 1、第一代 80年代——模拟通信时代&#xff08;1G&#xff09; 典型系统&#xff1a;AMPS系统&#xff08;先进移动电话系统&#xff09;、TACS系统&#…

【渝粤教育】广东开放大学 财务管理 形成性考核 (58)

选择题 题目&#xff1a; 市场宣传的首要步骤就是确定&#xff08; &#xff09;&#xff0c;从而明确宣传目标和宣传内容。 选择一项&#xff1a; 答案&#xff1a;看左侧 题目&#xff1a;下列各项中体现债权与债务关系的是&#xff08; &#xff09; 答案&#xff1a;看左侧…

java 调试 工具_Java调试器–权威的工具列表

java 调试 工具Java调试是一个复杂的空间。 调试器的类型很多&#xff0c;工具也很多。 在此页面中&#xff0c;我们将介绍7种类型的调试器之间的区别&#xff0c;并查看每个类别中的主要工具&#xff0c;以帮助您为正确的工作选择正确的工具。 以下是我们介绍的调试器类型&a…

移动通信考前预习_第2章_蜂窝技术

一、蜂窝的概念 1、系统级的概念&#xff1a;用许多小功率的发射机&#xff08;小覆盖区&#xff09;来代替单个的大功率发射机&#xff08;大覆盖区&#xff09;&#xff0c;每个小覆盖区只提供服务范围内的一小部分覆盖。 2、不需要做技术上的重大修改&#xff0c;没有增加额…

【渝粤教育】电大中专中成药作业 题库

试卷答案 1.风寒感冒患者宜选用的中成药是&#xff08;&#xff09;。 A.连花清瘟胶囊 B.双黄连颗粒 C.银翘解毒颗粒 D.桑菊感冒颗粒 E.感冒清热颗粒 正确 正确答案&#xff1a;左边查询 学生答案&#xff1a;E 2.症见恶寒发热、头痛鼻塞、咳嗽痰多、胸闷呕逆、乏力气短宜选用的…

在Java 8之前的项目中使用JUnit 5

这篇文章演示了如何在Java 8之前的项目中使用JUnit 5&#xff0c;并解释了为什么它是一个好主意。 JUnit 5至少需要Java 8作为运行时环境&#xff0c;因此您想将整个项目更新为Java8。但是有时由于某些原因&#xff0c;您无法立即将项目更新为Java8。例如&#xff0c;应用程序…

移动通信教学大纲

1、绪论 基本内容&#xff1a;移动通信的发展概况和发展趋势&#xff1b;移动通信的概念、主要特点及其分类&#xff1b;移动通信的基本技术。 要求&#xff1a;了解移动通信概念、特点和分类&#xff0c;了解移动通信发展历史、基本技术和未来发展方向。 2、移动通信中的电波传…

移动通信蜂窝原理例题整理

目的很功利&#xff1a;会做题。 So~~上题&#xff01;&#xff01;&#xff01; 1、求波长和天线长度。 不接地天线长度是半波长整数倍&#xff0c;接地是1/4波长整数倍&#xff08;地面镜像效应&#xff09;。 2、大区制小区制概念理解 举例&#xff1a;30个双向信道 1、大…

spss三次指数平滑_17 统计学:SPSS基础

内容目录为什么要学习SPSSspss发展史spss操作界面spss基本使用方式SPSS的常用操作数据管理spss制作图表使用spss进行描述统计分析1.为什么要学习SPSS统计分析软件是数据分析的主要工具统计设计完成后&#xff0c;完整的分析过程包括数据的搜集数据的整理数据的分析结果的报告统…

【渝粤教育】电大中专就业指导(1)作业 题库

试卷答案 1.&#xff08; &#xff09;给中职生就业带来的机遇和挑战 A.“十三五”规划 B.一带一路 C.发展标准化服务业 正确 正确答案&#xff1a;左边查询 学生答案&#xff1a;A 2.最受企业欢迎的人才应具备&#xff08; &#xff09;素质 A.道德品质、文化认同、敬业精神、…

Spring构造函数依赖注入示例

欢迎使用Spring构造函数依赖注入示例指南。 基于构造器的依赖注入是Spring 依赖注入的一种 。 依赖注入的另一种类型是Setter注入和字段注入。 有关Spring依赖注入的更多信息&#xff1a; Spring二传手注射的例子 Spring田间注入 依赖注入–构造函数与现场注入 依赖注入和…

【渝粤教育】电大中专常见病药物治疗 (2)作业 题库

1.作为退热药&#xff0c;阿司匹林的劣势是&#xff08;&#xff09;。 A.口服吸收迅速而完全 B.婴幼儿发热用阿苯片 C.儿童用药可引起Reye综合征&#xff0c;尤其是病毒性感染引起的发热 D.作用于下丘脑体温调节中枢 E.解热镇痛作用较强 错误 正确答案&#xff1a;左边查询 学…