码迷,mamicode.com
首页 > 编程语言 > 详细

java进程间通信

时间:2016-05-24 18:49:41      阅读:481      评论:0      收藏:0      [点我收藏+]

标签:

Java进程间通信可以采用的办法:

Socket/RMI/WEBService/WebServer, 这些都可以实现直接的数据交换 
Database/File, 这些可以实现间接的数据交换   
看你的业务是否要求实时, 如果不需要, 用数据库交换比较简单

 

 除了Socket之外,当然首选的IPC可以使用RMI,或者CORBA也可以。
其实JAVA的CORBA实现也是通过RMI来实现的,而RMI归根结底也是靠Socket来实现的。
所以说JAVA进程间通信的最基本手段是Socket也不为过。

 

线程间通信:

可以直接传入共享的变量来实现

 
 

如果是两台电脑通讯...一切都是socket...什么mina啊,mq啊,http啊,都能实现啊

如果是本地,那方法就多了,文件,数据库,内存...

 

可以使用actor模型的java或者scala实现,现在Akka和JActor都可以试试,不过建议你使用Akka,有Java版API,使用也很简单,性能也可以。

 

 

传统的进程间通信的方式有大致如下几种:(1)   管道(PIPE) (2)   命名管道(FIFO) (3)   信号量(Semphore) (4)   消息队列(MessageQueue) (5)   共享内存(SharedMemory) (6)   Socket

Java如何支持进程间通信。我们把Java进程理解为JVM进程。很明显,传统的这些大部分技术是无法被我们的应用程序利用了(这些进程间通信都是靠系统调用来实现的)。但是Java也有很多方法可以进行进程间通信的。 

除了上面提到的Socket之外,当然首选的IPC可以使用Rmi,或者Corba也可以。另外Java nio的MappedByteBuffer也可以通过内存映射文件来实现进程间通信(共享内存)。

 

 

 

 

 

java进程间通信

标签:

原文地址:http://www.cnblogs.com/destim/p/5524143.html

(1)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!