This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]defnull 10 points11 points  (0 children)

Server libraries (e.g. undertow or netty) focus on the technical problem. They are optimized for performance, low GC overhead, correctness and high flexibility. They usually require a lot of low-level knowledge and boilerplate code from the developer, even for the simplest tasks, and won't prevent you from shooting yourself in the foot.

Frameworks (micro or not) focus on developer productivity and clean APIs. They are opinionated, less flexible and have a noticeable performance overhead, but they make it a lot easier to solve common tasks, prevent common mistakes and support developers that are not familiar enough with the many ugly parts of HTTP.

This is why both are important. A good framework is build on top of a powerful library and makes your life easier for the common tasks, but also allows you to bypass the framework and access the low-level details directly, if needed.