У нас есть приложение на верблюде.Файл контекста Camel:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:camel="http://camel.apache.org/schema/spring"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://camel.apache.org/schema/spring http://camel.apache.org/schema/spring/camel-spring.xsd">
<camelContext id="CamelContext" xmlns="http://camel.apache.org/schema/spring" autoStartup="true">
<properties>
<property key="http.keepAlive" value="true"/>
</properties>
<threadPoolProfile id="profile"
defaultProfile="true"
keepAliveTime="30"
maxPoolSize="1500"
rejectedPolicy="DiscardOldest"
poolSize="1000"></threadPoolProfile>
<onException>
<exception>com.fasterxml.jackson.databind.exc.InvalidFormatException</exception>
<redeliveryPolicy maximumRedeliveries="0"/>
<handled>
<constant>true</constant>
</handled>
<to uri="bean:jacksonMappingExceptionHandler" />
<process ref="httpResponseTransformer"/>
</onException>
<restConfiguration component="jetty" bindingMode="json" contextPath="/app" port="9886" apiContextPath="/v1/api-doc" enableCORS="true">
<dataFormatProperty key="include" value="NON_NULL"></dataFormatProperty>
<apiProperty key="api.title" value="Application Service"/>
<apiProperty key="api.version" value="1.0.0"/>
<apiProperty key="cors" value="true"/>
</restConfiguration>
<!-- defines the rest services using the context-path /api -->
<rest path="/v1/abc" consumes="application/json" produces="application/json">
<description>Abc</description>
<post type="com.Request" outType="com.Response">
<to uri="direct-vm:JettyHttp"/>
</post>
</rest>
<rest path="/api/status" produces="application/json">
<description>Application Status</description>
<get outType="com.StatusResponse">
<description>Get Status</description>
<to uri="direct-vm:status"/>
</get>
</rest>
</camelContext>
</beans>
Некоторые конфигурации загружаются из БД.Из-за безопасности я не смогу публиковать полный код здесь.
Мы написали сценарии автоматизации для проверки проверок по запросу.В отдельных спецификациях у нас более 200 сценариев.
Проблема: После определенного количества запросов http к uri приложения перестают отвечать.Я добавил свойство keepAlive, а также конфигурацию пула потоков в CamelContext.
Однако ни один из них не работает.Пожалуйста, предложите мне немного поработать.
Заранее спасибо.