3 ms·
This is why I use java for long running processes, if i care about a small binary that launches fast, i just use something slower at runtime but faster at start
by dionian 7mo ago
This is why I use java for long running processes, if i care about a small binary that launches fast, i just use something slower at runtime but faster at startup like python.
- AlotOfReading 7mo agoAnd then you get applications choosing the worst of both worlds, like bazel/blaze.
- packetlost 7mo agoPython startup time can be pretty abysmal too if you have a lot of imports.
- ptx 7mo agoThis is addressed by PEP 810 (explicit lazy imports) in Python 3.15 (currently in alpha): https://peps.python.org/pep-0810/ https://peps.python.org/pep-0810/
- packetlost 7mo agoYeah, but it requires code changes to matter
- cogman10 7mo agoSo long as you aren't in a docker container, The openjdk can do fast startup pretty trivially. There are options to turn on which cause the JVM to save off and reload compiled classes. It pretty massively improves performance. You can get even faster if you do that plus doing a jlink jvm. But that's more of a pain. The AOT cache is a lot simpler to do. https://openjdk.org/jeps/514 https://openjdk.org/jeps/514