Совместная оптимизация вызовов CORBA для повышения производительности - PullRequest
1 голос
/ 17 февраля 2010

Я работаю с системой на основе CORBA, которая изначально была разработана для работы на нескольких серверах. Если бы я хотел разместить службы CORBA так, чтобы вызовы происходили через границы процессов, а не между компьютерами, есть ли какие-либо параметры оптимизации, которые можно настроить, чтобы ORB знал, что это происходит? Например, возможно ли обойти стек TCP / IP в этом режиме (я подозреваю, что нет)?

Ответы [ 2 ]

1 голос
/ 17 февраля 2010

Применяется стандартная рекомендация по оптимизации: оптимизируйте только то, что, как было показано, вызывает проблемы с производительностью.

В 2002 году я обратился к той же самой проблеме и обнаружил сообщение, связанное с OmniORB транспорт с общей памятью . Для OmniORB можно ожидать сокращения времени прохождения туда и обратно на 10-15%, которое в процентах от общего использования ресурсов было настолько мало, что было бы незначительным.

1 голос
/ 17 февраля 2010

ORB должен иметь возможность самостоятельно выяснить это и наилучшим образом отправить вызов.

Однако поддержка межпроцессных вызовов без использования IIOP или TCP / IP будет зависеть от того, какой ORB вы используете. Некоторые ORB поддерживают совместную память, именованные каналы, доменные сокеты UNIX и другие варианты, но вам нужно проверить документацию ORB, чтобы выяснить, как их настроить. Возможно, вам придется создавать ссылки на свои объекты другим способом.

...