4 ms·
github repo ( if any framework is missing .. ) - https://github.com/TechEmpower/FrameworkBenchmarks https://github.com/TechEmpower/FrameworkBenchmarks
by pella 6y ago
github repo ( if any framework is missing .. )
- https://github.com/TechEmpower/FrameworkBenchmarks https://github.com/TechEmpower/FrameworkBenchmarks
- lstamour 6y agoNote also, another reason to browse GitHub is to look at how the various implementations are written. For example, sometimes frameworks use fewer SQL statements to complete the same work, or they configure database libraries with different settings. I’ve noted a few instances where gaming these benchmarks is possible simply because a new framework implements the algorithm differently. Not to say they don’t have value — they do — but keep in mind your code may look very different from benchmark code. I do think it’s worth looking at the code to examine why some approaches scale better than others, though! Rarely is it the case that more code = faster performance, but sometimes features you need are sacrificed for extra performance even when a benchmark is classified as “realistic”. Viewing source code is how you can determine which frameworks actually best fit your needs, rather than just which ones performed well in this test… For example, it’s easy to think that raw Go performance is terrible compared to Rust or C++, but it’s worth pointing out that the raw Go example uses commonly available standard libraries baked in to the language to accomplish almost everything it does. Most other examples at some level or another have to deal with epoll and concurrency manually themselves or via the web server replacements they use. Based on this, the overhead or raw implementation of socket management is often what is being benchmarked. Implementations like just-js use C++ and epoll under the hood to implement their server, like most of the other high performance examples at the top of the benchmarks. The question often then becomes, do you want to write your own HTTP server or take advantage of an API someone else has written that might have more features or middleware? And remember that configuration matters, I forget off the top of my head, but the Go examples with a new web server had more performance optimization than the raw-Go benchmark had. Obviously I should submit a PR to fix this, but my ultimate goal here is to say that reading the source code will both help you become a better developer but also catch the shortcuts and techniques used by high performance implementations…
- oaiey 6y agoRegards go... Look at the aspcore variants. The highest ranking one is completely "bare metal" while the normal full MVC use case ranks somewhere middle. The big stacks should contribute multiple variants so you can compare apple with apples and leave the oranges out