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: Are you trying to connect to a TLS-enabled daemon without TLS?
  • Mounting a dir in docker does not work when dir is linked with symlink?
  • How to send a password to `sudo` from a Dockerfile
  • Workdir of Node.JS
  • Implementing watchdog for docker services under sysd
  • how to run two web apps in the same localhost with same port in docker?
  • 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

  • How to shrink size of Docker image with NodeJs
  • Meaning of “$PWD”:/path/to/directory"
  • How to save all docker images and copy to another machine?
  • how to add user for docker mongodb
  • Unable to connect to docker daemon on Azure Windows Server 2016 machine through VSTS2017
  • Why is Docker Tomcat failing to start?
  • 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.