2014-09-17 6 views
1

Я хотел бы знать, сколько клиент запрашивает мой CORBA сервер может обрабатывать одновременно:Есть ли пул потоков для реализации Sun/Oracle CORBA и как его настроить?

  1. ли сервер создает новый поток для каждого нового запроса клиента?
  2. Есть ли пул потоков?
  3. Каков размер пула потоков по умолчанию?
  4. Что произойдет, если мы достигнем максимального размера? Ожидают ли новые очереди в очереди?
  5. Какое время простоя для неактивных потоков (потоков, которые уже были использованы для клиента) в пуле?
  6. Можем ли мы конфигурировать эти параметры (размер пула & простоя)?

Я провел много исследований, но я не нашел реальных ответов на эти вопросы для официальной реализации CORBA Sun/Oracle (JDK). В документации Oracle (link) мы можем увидеть это: -Djava.naming.factory.initial = com.sun.appserv.naming.S1ASCtxFactory -Dcom.sun.appserv.iiop.orbconnections = значение

=> Я не уверен, что действительно этот параметр, также этот параметр может быть несовместим со всеми JVM, а его значение по умолчанию - «одно».

Я знаю, что для RMI есть «sun.rmi.transport.tcp.maxConnectionThreads» параметр для изменения размера резьбы по умолчанию пула (который уже «неограниченный»). Неактивное время простоя нити составляет 1 минуту ... RMI вдохновлен CORBA, поэтому, возможно, Sun/Oracle поделили одинаковые параметры для обоих из них?

Благодаря

ответ

0
  1. ли сервер создает новый поток для каждого нового запроса клиента?

Реализация Sun CORBA имеет пул потоков.

  1. Есть ли пул потоков?

Да. Реализация Sun CORBA имеет пул потоков.

  1. Каков размер пула потоков по умолчанию?

Вам не о чем беспокоиться.

  1. Что произойдет, если мы достигнем максимального размера? Ожидают ли новые очереди в очереди?

Я использую JacorB, размер по умолчанию которого равен 100, а в предыдущей версии (JacorB 2.2.2) клиент получает все время, когда сервер достигает этого размера.

  1. Какое простаивание неактивных потоков (потоков, которые уже были использованы для клиента) в пуле?

Не знаю. Я думаю, что реализация использует пул потоков.

  1. Можем ли мы конфигурировать эти параметры (размер пула & простоя)?

Не знаю. Думаю, ты не сумасшедший, чтобы волноваться об этом.

** Я думаю, что JacorB лучше, чем реализация SUN. Он имеет CORBA 2.3.

** Предупреждение: Вам нужно беспокоиться о Local ThreadLocal. Потому что, когда запрос клиента заканчивается, Thread возвращается к пулу потоков, поэтому вы можете получить некоторые данные в новом запросе ThreadLocal.