<p>I want to deploy some java (Spring Boot, MicroProfile, ...) apps to k8s. I want to define CPU requests and limits for those apps. The problem with limit is, that the apps need very long (30-90 seconds) time depending on the limit (around 300-500m). This is pretty/too long. The apps also don't need that much CPU. In idle they are &lt;10m. And with load &lt;100m.</p>

<p>How do you solve this kind of issues?</p>

<p>Is there something planed like the startup-probes for limits? (<a href="https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-startup-probes" rel="nofollow noreferrer">https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-startup-probes</a>)</p>

<p>Thanks</p>

<p>P.S. I'm aware of frameworks like quarkus or micronaut. But we got some legacy apps here we want to migrate to k8s.</p>

<p>The usual solution is just to not use CPU limits. They are often best left off unless you know the service abuses the CPU and you can't fix it any other way.</p>
