2016-12-14 30 views
1

Мы используем Jacorb 2.2.3 для реализации Corba. Все работает отлично в большинстве случаев, в некоторых параллельных сценария Jacorb периодически прерывается при вызове API на сервере сервера Corba.Jacorb зависает, чтобы ответить на удаленный вызов API

Я попытался воссоздать его, настроив Jacorb.properties. И даже попытка работать с закрытыми объектами на стороне сервера, но напрасно.

От сервера потока отвала, заметил, что RequestProcessor нити, которые Jacorb, используемые для обработки одновременных запросов, заблокированы, как показано ниже

"RequestProcessor-26" ... nid=0x25cc in Object.wait() [0x000000004237f000]     
    java.lang.Thread.State: WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    at java.lang.Object.wait(Object.java:502) 
    at org.jacorb.poa.RequestProcessor.run(RequestProcessor.java:700) 
    - locked <0x0000000150714178> (a org.jacorb.poa.RequestProcessor) 

"RequestProcessor-25" ...nid=0x3250 in Object.wait() [0x000000004227f000] 
    java.lang.Thread.State: WAITING (on object monitor) 
    at java.lang.Object.wait(Native Method) 
    at java.lang.Object.wait(Object.java:502) 
    at org.jacorb.poa.RequestProcessor.run(RequestProcessor.java:700) 
    - locked <0x0000000150e90748> (a org.jacorb.poa.RequestProcessor) 

Я ищу две вещи

  1. Есть ли Известная проблема в Jacorb 2.2.3 заключается в том, что клиент переходит в зависание при вызове API на стороне сервера?
  2. я попытался воссоздать запертое состояние RequestProcessor путем запуска нескольких одновременных сессий, но я не видел «заблокированы» для RequestProcessor в потоке отвале
+0

Есть ли причина для использования JacorB 3? Или даже последний? – tuergeist

+0

@ tuergeist да, это потому, что производственная среда и модернизация фляги должны ждать процесса и одобрения. Так интересно, если есть последовательные шаги, чтобы воссоздать его на 2.2.3, чтобы его можно было нажать на 3,8 или что-то еще будет последним к этому времени? – Kiran

+0

@Kiran. Вы пытались увеличить количество рабочих потоков на сервере? Кроме того, реализация объектов сервера может привести к блокировке, если они все ждут того же объекта. – BJovke

ответ

0

Там было несколько исправлений с той версией JacORB. Некоторые из них были связаны с кодом синхронизации. Текущая версия - 3,8; Я рекомендую вам попытаться воспроизвести вашу проблему. Вы можете найти http://www.jacorb.org/contact.html, полезный для сообщений о проблемах с JacorB

+0

Я согласен с тем, что проблема может быть не видна на 3.8, но по внутренним причинам ее невозможно сразу обновить. Так что интересно, если есть последовательные шаги по воссозданию его на 2.2.3, так что его можно будет нажать на 3,8, имея вескую причину. – Kiran

+0

2.2.3 был выпущен в декабре 2005 года, поэтому он довольно старый по сравнению с 3,8, выпущенным в июле 2016 года. Если у вас есть воспроизводимый тестовый пример, чтобы попытаться это помочь. В качестве альтернативы вы можете попробовать использовать http://byteman.jboss.org/, чтобы отслеживать/запускать ваш сценарий. –

+0

К сожалению, я не мог придумать фиксированные шаги, чтобы воссоздать его – Kiran

 Смежные вопросы

  • Нет связанных вопросов^_^