hadoop yarn里用了RPC调用。NM里面文件本地化类ContainerLocalizer用RPC心跳方式跟本机的ResourceLocalizationService通信。

用shared memory还要调到native层去,不知道会不会比tcp/ip快?

可以用文件,考虑锁的问题。但是文件貌似不能两边一起写,否则会乱的。也许弄两个文件,每个都是单工?这样还要监视文件是否发生变化。

还可以用剪切板,干扰比较严重

可以socket,socket是双工的,读写时都不用加锁防止另一边占用socket。

named pipe

rmi

memory mapped file

  你指的是MappedByteBuffer么?

    java.nio.channels.FileChannel abstract  MappedByteBuffer map(FileChannel.MapMode mode, long position, long size)  
           将此通道的文件区域直接映射到内存中。

      锁定了还咋进程通信啊,我看了api doc,很多地方都是实现相关的,不靠谱

可以锁定某个文件区域,以阻止其他程序对其进行访问。

共享内存快,jni不会消耗什么。。

  jni本身效率就很低,还有个非常大的问题:一旦native code 发生异常会导致jvm down掉。

     jni在这里绝不会是瓶颈,几行本地代码,仔细写问题不大的 

      jni 中间走 object 注定慢 

http://www.newsmth.net/nForum/#!article/Java/170307

同一个主机上的JVM实例之间通信的更多相关文章

  1. 如何使不同主机上的docker容器互相通信

    docker启动时,会在宿主主机上创建一个名为docker0的虚拟网络接口,默认选择172.17.42.1/16,一个16位的子网掩码给容器提供了65534个IP地址.docker0只是一个在绑定到这 ...

  2. mongoDB怎样拷贝一个collection从一个数据库到另一个在同一个主机上

    new_database是目的数据库 db.<collection_name>.find().forEach(function(d){ db.getSiblingDB('<new_d ...

  3. windows下如何正确使用Jconsole远程连接linux主机上的JVM

    https://www.aliyun.com/jiaocheng/589230.html

  4. Python进阶----进程之间通信(互斥锁,队列(参数:timeout和block),), ***生产消费者模型

    Python进阶----进程之间通信(互斥锁,队列(参数:timeout和block),), ***生产消费者模型 一丶互斥锁 含义: ​ ​ ​ 每个对象都对应于一个可称为" 互斥锁&qu ...

  5. vue的$emit 与$on父子组件与兄弟组件的之间通信

    本文主要对vue 用$emit 与 $on 来进行组件之间的数据传输. 主要的传输方式有三种: 1.父组件到子组件通信 2.子组件到父组件的通信 3.兄弟组件之间的通信 一.父组件传值给子组件 父组件 ...

  6. 【Vue课堂】Vue.js 父子组件之间通信的十种方式

    这篇文章介绍了Vue.js 父子组件之间通信的十种方式,不管是初学者还是已经在用 Vue 的开发者都会有所收获.无可否认,现在无论大厂还是小厂都已经用上了 Vue.js 框架,简单易上手不说,教程详尽 ...

  7. iframe之间通信问题及iframe自适应高度问题

    下面本人来谈谈iframe之间通信问题及iframe自适应高度问题. 1. iframe通信 分为:同域通信 和 跨域通信.所谓同域通信是指 http://localhost/demo/iframe/ ...

  8. vue组件之间通信传值

    原文链接:https://blog.csdn.net/lander_xiong/article/details/79018737 我认为这位博主的这篇文章写的非常详细,通俗易懂, 我们这次的vue项目 ...

  9. Vue2.0组件之间通信(转载)

    Vue中组件这个特性让不少前端er非常喜欢,我自己也是其中之一,它让前端的组件式开发更加合理和简单.笔者之前有写过一篇Vue2.0子父组件通信,这次我们就来聊一聊平级组件之间的通信. 首先我们先搭好开 ...

随机推荐

  1. UIButton的遍历

    for (id obj in self.view.subviews) {                if ([obj isKindOfClass:[UIButton class]]) {      ...

  2. Ubuntu 安装字体

    将字体Copy到/usr/share/fonts/windows目录下,然后执行以下几条命令更新系统字体缓存: cd /usr/share/fonts/vista/ sudo mkfontscale ...

  3. 总结android项目的基本开发步骤(转帖)

    总结android项目的基本开发步骤(转帖)   做了几个android企业应用项目后,总结了项目的基本开发步骤,希望能够交流.一 应用规划:    ※确定功能.    ※必须的界面及界面跳转的流程. ...

  4. mysql从只有一个备份文件(多个数据库的备份)中恢复数据到指定数据库

    mysql -uroot -p 要恢复的数据库的名字 --one-database<备份文件

  5. 模板-高精度BigInteger

    #include <bits/stdc++.h> using namespace std; struct BigInteger { static const int BASE = 1000 ...

  6. Tomcat7 安装StartSSL证书笔记

    1.Tomcat-Native安装 使用StartSSL,Tomcat必须用apr方式启动(apr方式对于静态的内容,比默认的bio效率要高很多倍) Windows下tomcat-native安装 直 ...

  7. Python中dict的特点、更新dict、遍历dict

    dict的第一个特点是查找速度快,无论dict有10个元素还是10万个元素,查找速度都一样.而list的查找速度随着元素增加而逐渐下降. 不过dict的查找速度快不是没有代价的,dict的缺点是占用内 ...

  8. Bluetooth Security Manager

    一.概念     The Security Manager defines methods of pairing and key distribution, a protocol for those ...

  9. 常用jQuery代码03

    1.查看浏览器信息 navigator.userAgent 检索浏览器信息包括哪些字符 例如: if (navigator.userAgent.toLowerCase().indexOf(" ...

  10. Magento 安装时文件权限 设置

    http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/magento_filesystem_permission ...