21 ms·
Co-routines .. that's a useful pattern Go did out of the box. Fast startup .. important for containers and auto-scaling Co-routines have been in Kotlin for a
by bsan3 4y ago
Co-routines .. that's a useful pattern Go did out of the box.
Fast startup .. important for containers and auto-scaling
Co-routines have been in Kotlin for a while, got added to Java (Project loom) recently. Same for startup time. Native image support in Project Leyden
- marginalia_nu 4y agoJava starts very quickly (like a second). If it doesn't, that's typically down to pulling in slow libraries. Spring Boot in particular is awful for start time, can add like 30 seconds to start time.
- kubota 4y agoCoroutines are coming soon, project loom.
- tannhaeuser 4y agoFor fast startup, look at GraalVM/native-image which compiles Java to native code and works very well. Downsides are that highly dynamic and reflection-happy Java code bases/libs won't run OOTB, that using profile-guided optimization (for achieving or surpassing HotSpot perfornance levels) requires a commercial EE license from Oracle (about 300-400 bucks per seat last I checked, not required for mere development until used in prod or at customer sites, and bundled with commercial JRE/JDK subscription since about a year), that even with EE your garbage collector choices are limited, and the somewhat overwhelming number of optimization flags to pass to native-image, not unlike earlier JVM runtime arg excesses.
- mike_hearn 4y agoAlthough note that using PGO with Go isn't really common either. Actually, JVM languages and JS are amongst the very few that use PGO regularly as setting it up and using it with AOT compiled toolchains takes more work.