BPEL OutOfMemoryError в JBOSS SOA P
Я развернул процесс bpel в JBOSS AS на платформе SOA, и он отлично работает.
Но, когда я попытался проверить нагрузочное тестирование с помощью SOAP UI.
его остановки с OutOfMemoryError, как показано ниже.
16:48:58,226 ERROR [JIoEndpoint] Error allocating socket processor
java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:640)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.start(JIoEndpoint.java:475)
at org.apache.tomcat.util.net.JIoEndpoint.newWorkerThread(JIoEndpoint.java:695)
at org.apache.tomcat.util.net.JIoEndpoint.createWorkerThread(JIoEndpoint.java:674)
at org.apache.tomcat.util.net.JIoEndpoint.getWorkerThread(JIoEndpoint.java:706)
at org.apache.tomcat.util.net.JIoEndpoint.processSocket(JIoEndpoint.java:741)
at org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:317)
at java.lang.Thread.run(Thread.java:662)
16:48:58,229 INFO [STDOUT] Retrieving document at 'file:/D:/SOA_ROOT/jboss-soa-p-5/jboss-as/server/
default/tmp/4p724v3y-jabfid-huaty07z-1-huatymjb-cc/function.jar/FunctionProcessArtifacts.wsdl'.
16:48:58,239 ERROR [JIoEndpoint] Error allocating socket processor
java.lang.OutOfMemoryError: unable to create new native thread
Это простой процесс, который вычисляет ((a+b) * (ab))^2. используя веб-сервис, который выполняется на удаленном сервере. Сложение, Вычитание, Умножение и Квадрат являются независимыми сервисами.
Моя схема процесса
В чем проблема конфигурации сервера.
Как это исправить?
1 ответ
Короче говоря, вы сталкиваетесь с "java.lang.OutOfMemoryError: Невозможно создать новый собственный поток" всякий раз, когда JVM запрашивает новый поток из ОС. Всякий раз, когда базовая ОС не может выделить новый собственный поток, эта ошибка OutOfMemoryError будет выброшена. Точное ограничение для собственных потоков зависит от платформы.
Чаще всего ограничения на новые собственные потоки, попадающие в OutOfMemoryError, указывают на ошибку программирования. Когда ваше приложение порождает тысячи потоков, есть вероятность, что что-то пошло не так, как надо - не так много приложений, которые бы выиграли от такого огромного количества потоков.