java web 进程通信_RMI网络编程开发之一 JAVA“进程间”通信方式
注意该标题是 “进程”间通信,而并非“线程“之间的通信。
线程之间的通信是多线程的讨论范畴。这里我们是要讨论分布式的独立的JAVA程序之间是怎么通信的。当然,大家都会先想到SOCKET。对的,SOCKET在网络编程中是不可以被忽略的。socket是两台主机之间的一个连接,而JAVA中的SOCKET类为不同主机之间的连接提供了功能封装。
所以,SOCKET是进程间通信的一种常用方法。
让我们变得更原始一点,如果同一台主机不同程序之间是怎么交换数据的呢?
嗯,邮递员送信的网络知识,让我们很容易想到,把数据放到一个共享的地方就行。
A程序把数据存到硬盘的某个文件txt,然后B程序在去打开这个txt读取内容。这样子是不是很理想呢?
所以,存取文件,不失为一个通信的巧手段。
嗯,既然我们可以共享磁盘,那我们也可以共享内存,JMS的 queue 应该也可以实现通信的目的,
还有管道等概念。
讲了那么多,其实想引出来的,无非是RMI,RMI并不是最本质的东西。SOCKET是它的基础。
RMI是sun开发,遵循JRMP协议,因为他被发布在jre中,所有很多人只把它当作很普通的api来使用,所以它里面做了什么,很多人都不清楚.
RMI到底是什么?
RMI是一套足够优秀的socket框架.
RMI是相对比较简单命名服务
RMI是aop的经典实用例子
相关辅助功能,比如本地GC
总之,RMI也是一个重要的通信手段。
java web 进程通信_RMI网络编程开发之一 JAVA“进程间”通信方式相关推荐
- java自动化测试语言高级之网络编程
java自动化测试语言高级之网络编程 文章目录 java自动化测试语言高级之网络编程 Java 网络编程 Java 网络编程 网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来 ...
- python网络编程基础(线程与进程、并行与并发、同步与异步、阻塞与非阻塞、CPU密集型与IO密集型)...
python网络编程基础(线程与进程.并行与并发.同步与异步.阻塞与非阻塞.CPU密集型与IO密集型) 目录 线程与进程并行与并发同步与异步阻塞与非阻塞CPU密集型与IO密集型 线程与进程 进程 前言 ...
- Java基础深化和提高 ---- 网络编程
网络编程基本概念 计算机网络 计算机网络是指将地理位置不同的具有独立功能的多台计算机及其 外部设备,通过通信线路连接起来,在网络操作系统,网络管理软 件及网络通信协议的管理和协调下,实现资源共享和信息 ...
- Java核心类库篇8——网络编程
Java核心类库篇8--网络编程 1.七层网络模型 OSI(Open System Interconnect),即开放式系统互联,是ISO(国际标准化组织)组织在1985 年研究的网络互连模型. 当发 ...
- 【网络编程开发系列】好端端的MQTT-broker重新部署后居然出现TLS握手失败了
摘要:本文通过一次真实的现网案例复盘,深度还原TLS握手问题的排查思路和方法,希望对广大读者有所启发和帮助. 文章目录 1 写在前面 2 问题描述 2.1 项目背景 2.2 现场问题 3 场景复现 3 ...
- Web全栈~28.网络编程
Web全栈~28.网络编程 上一期 前言 网络编程往往都是困难.复杂,而且极易出错的.程序员必须掌握与网络有关的大量细节,有时甚至要对硬件有深刻的认识.一般地,我们需要理解网络协议中不同的" ...
- iOS网络编程开发—HTTP协议
iOS网络编程开发-HTTP协议 说明:apache tomcat服务器必须占用8080端口 一.URL 1.基本介绍 URL的全称是Uniform Resource Locator(统一资源定位符) ...
- java小球碰撞实验报告_20155317 《Java程序设计》实验五网络编程与安全实验报告...
20155317 <Java程序设计>实验五网络编程与安全实验报告 遇到问题 在刚开始启动客户端或者服务端时,出现了一系列的错误情况,总是提示异常信息 后来经过询问同学,反应将端口号修改一 ...
- Java Web入门项目之“网络交友”的设计与实现
前言:这个小项目是我刚学习JSP时,参考"JSP程序设计"这本书写的.这里之所以说参考这本书而不是照着这本书写,主要是因为我自己完成的时候删掉了不少繁琐的写法(比如:文件上传):同 ...
最新文章
- Linux 守护进程一
- mysql列目录_mysql列直接存储图片路径
- 不使用GACUtil.exe,如何部署和卸载程序集到GAC中
- 基于roslyn的动态编译库Natasha
- MobaXterm_Personal_20.1最简单方式链接阿里云服务器
- 接口测试--apipost接口断言详解
- selector的使用
- opengl 旋转矩阵和纹理坐标相乘_OpenGL-Rotating Points
- C++ PostMessage 模拟键盘鼠标
- 利用度盘直链解析网页及XDOWN高速下载百度网盘分享资源
- matlab直方图 | 不用imhist循环实现,imhist检验
- win7升级Powershell到5.1(for flutter)
- Andriod程序的结构
- 苹果也被撕下遮羞布,iPhone14后继乏力,靠十三香维持销量
- 知道创宇赵伟乌镇演讲:以云护云、以云治云,构建云端安全治理体系
- 关于差分放大器双电源改单电源问题的讨论(AD628)
- 独家 | 全球2000家客户,这家公司推动林肯MKZ成为最流行的自动驾驶样车
- java处理图片与base64编码互相转换
- Web应用——驾培管理系统之个人管理(作者:小圣)
- oracle如何根据ID恢复部分数据,三种方法找回Oracle数据库误删除的数据