Last updated on MARCH 08, 2017
Applies to:Oracle Web Services Manager - Version: 126.96.36.199.0
Information in this document applies to any platform.
OWSM scalability problem:
Customer is currently performing load and performance-tests against a mock JAX-WS based webservice provider (HotelService), using a test driver (SOAPUI), and both a composed service (Mediator/BPEL), acting as consumer, and a standard JAX-WS based webservice consumer.
Request routing is done via OSB. Custom-made policies (called WESPE (WEb service Security and Policy Enforcement)) are applied via a central OWSM PolicyManager.
The following scheme depicts the test setup.
Test scenario 2) test driver -> composed service <-> OSB <-> JAX-WS provider (HotelService)
Test scenario 2b) test driver -> JAX-WS consumer <-> OSB <-> JAX-WS provider (HotelService)
In test scenario 2b, on the JAX-WS consumer side(!!), customer intermittently (every 30 secs) encounters intolerably high response times (between 1 and 6 secs, with 3 secs on average) when generating 2 getServiceInfo() operation requests (see WSDL) per second against HotelService. When these high response times occur, the entire system is blocked. (Note: The usual / normal response time is 50 milli-secs on average.)
It was not found that behavior neither with the JAX-WS provider (HotelService) nor with OSB business services acting as HotelService consumers (test scenario 2).
It was taken a number of thread dumps (2 secs interval, 130 secs overall) during the test run, and identified a UsageTracker (EJB component of the PolicyManager) related thread holding a lock that other threads are waiting to get (and are thus blocked).
Sign In with your My Oracle Support account
Don't have a My Oracle Support account? Click to get started
Million Knowledge Articles and hundreds of Community platforms