Is it possible to bind different CXF based JAX-RS services to different HTTP ports when deploying these services into an OSGi container?

Solution Unverified - Updated -

Issue

By default CXF based services that get deployed into an OSGi container (Fuse ESB or Fuse ESB Enterprise) will utilize the HTTP transport that is already provided by the OSGi container rather than running their own HTTP stack.
It is recommended that your Web- or Restful Services make use of this already provided HTTP stack.

In scenarios where each JAX-RS service needs to have its own TCP port number, it is required to configure each service to use its own HTTP stack. The HTTP stack provided by OSGi listens on only one (configurable) transport address.
Configuring one HTTP stack per JAX-RS service will of course have implications on the required memory because each HTTP stack needs its own memory. Each HTTP stack also has its own thread pool. In order to avoid having too many idle threads, these thread pools should be configured according to the expected and measured load as well.

Environment

  • Fuse ESB Enterprise 7.x
  • Fuse ESB 4.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content