【问题标题】:co-located CORBA call optimization for performance协同定位 CORBA 调用优化以提高性能
【发布时间】:2010-02-17 17:26:58
【问题描述】:

我正在使用一个基于 CORBA 的系统,该系统最初设计为在多个服务器上运行。如果我想共同定位 CORBA 服务以便调用跨进程边界而不是跨机器发生,是否可以设置任何优化设置以让 ORB 知道这种情况正在发生?例如,在这种模式下是否可以绕过 TCP/IP 堆栈(我怀疑不是)?

【问题讨论】:

  • 你真的需要ORB进程吗?很多 CORBA 代码没有。
  • “ORB”可以是一组库。大多数现代 ORB 不需要“ORB 进程”,除非需要动态创建/激活对象或提供其他服务。

标签: performance corba


【解决方案1】:

ORB 应该能够自己解决这个问题,并以最佳方式调度调用。

但是,在不使用 IIOP 或 TCP/IP 的情况下支持跨进程调用将取决于您使用的 ORB。一些 ORB 确实支持共享内存、命名管道、UNIX 域套接字和其他变体,但您需要查看 ORB 的文档以了解如何配置它们。您可能需要以不同的方式构造对象引用。

【讨论】:

    【解决方案2】:

    适用标准优化建议:仅优化已证明会导致性能问题的内容。

    在 2002 年,我解决了这个完全相同的问题,并发现了一条与 OmniORB shared memory transport 相关的消息。对于 OmniORB,预计往返时间会减少 10-15%,这在总资源使用量中所占的百分比非常小,以至于微不足道。

    【讨论】:

      猜你喜欢
      • 2014-10-08
      • 2016-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-27
      相关资源
      最近更新 更多