Mule performance tuning with limited resources

We are running our Mule3.8.0EE applications in a containerised environment, with one application per each container. From the container level, we are restricting the cpu/memory resource due to the limited physical host’s resource pool and this API I’m referring at the peak can use only up to 1 cpu core and 512MB memory (managed by kubernetes)

The mule flow is rather simple – a http endpoint with APIKit, then a backend Redis call through redis connector to do a get by key operation, and dataweave for transform the data into json and return

  • Docker Remote Api from external machine doesn't respond
  • My Docker container does not have IP address. Why?
  • Docker Machine to a remote server
  • Accessing USB webcam hosted on OS X from a Docker container
  • How can I forward localhost port on my container to localhost on my host?
  • Domain resolves on host machine but not inside docker container
  • The problem we detected is once there are load requests (100+ concurrent), with all default performance related configuration (strategy, threading etc), the application always triggers a JVM exit and then restart itself inside of the container

    Question is given these limited resources, how should we tune it to at least not die but process these load slowly. Expecting suggestions for example: should we increase the thread pool or decrease? should we use synchronous proccessing strategy? etc

    Update: We are using docker json logging driver, so the mule app outputs all its log to container’s console and picked up there by docker, if we print a line of log per each request and once there is a load, I noticed that is also a concern, with this glibc/tanuki wrapper issue (which is considered fixed after mule3.8).

    Thanks in advance

  • Running nodeJS app, selenium and webdriver.io tests in docker container
  • Changing disk space of container partition
  • Kubernetes Service External IP not being assigned
  • Docker options for chaining dockerfiles
  • Cannot connect to Go GRPC server running in local Docker container
  • Is there any way to create a link between file inside container docker and host?
  • One Solution collect form web for “Mule performance tuning with limited resources”

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.