5 ms·
The difference between the shootout microbenchmarks and the TechEmpower benchmarks is that the former test computation-intensive tasks and the latter test an en
by orthoxerox 4y ago
The difference between the shootout microbenchmarks and the TechEmpower benchmarks is that the former test computation-intensive tasks and the latter test an end-to-end web backend example. It tests how good the compiler is, how good the DB drivers are, how good the HTTP stack is.
What's so good about MS ranking in the TechEmpower benchmarks is that it's the fastest full-featured "enterprise" framework. Frameworks like drogon or just-js are impressive feats of engineering, but the only reason they exist is so that their authors can mention that on their resume. If you run them in production, you are on your own.
There's equally fast Vert.x, which you can buy support from Red Hat for, but most Java shops use Spring Boot (vmware or Red Hat support available), which is easier, but hopelessly slow in comparison.
- bayindirh 4y ago> The difference between the shootout microbenchmarks and the TechEmpower benchmarks is that the former test computation-intensive tasks and the latter test an end-to-end web backend example. That proves my point even further, because I don't develop anything remotely web-related, hence that performance scenario is completely moot for me. > What's so good about MS ranking in the TechEmpower benchmarks is that it's the fastest full-featured "enterprise" framework. Again, the same because the software I develop is not "Enterprise" either. What I develop is scientific software, and needs to be extremely performant. In my case C++ is the best language, but it's not the best for every case. This is why I also learn Go and use Python for other tasks. In my case, Debian's benchmarks are directly related to my use cases, however even that's not a definitive measurement for my case. It's just a bunch of data to keep in mind.
- hu3 4y ago> That proves my point even further, because I don't develop anything remotely web-related, hence that performance scenario is completely moot for me. I hope you realize non-web development is a niche nowadays. So it's perfectly reasonable to prioritize .NET benchmarks that target ASP.NET Core web apps/APIs.
- bayindirh 4y agoI hope you realize that web-development in my discipline is a niche nowadays. So, it's perfectly reasonable to prioritize bare metal and micro performance benchmarks that target naked performance, OS and GPU apps/APIs. Our vantage points are different, and these different vantage points need not to see the complete ecosystem as a whole. It's too big to generalize from a single vantage point, and just because our view reveal us a little of something doesn't mean it is, in fact, little. There's a whole invisible world out there, from DBs themselves to OS kernels to embedded platforms, and everything in between. IOW, horses for courses.
- hu3 4y agoAnd that's fine. Your niche is valid. Just no need to point out that a benchmark targeted at web frameworks focuses on... web use cases.
- toyg 4y ago> I hope you realize non-web development is a niche nowadays. That's a terrible attitude. If you want a certain ecosystem to get a better rep, you have to be ready to talk with different communities, and accept their feedback. Python is what it is largely because it can cater to a large number of these very different communities, which has ensured its long-term success. Compare with Ruby, which became effectively a web-only language and has since struggled to go anywhere.
- hu3 4y ago> If you want a certain ecosystem to get a better rep, you have to be ready to talk with different communities, and accept their feedback. Hard disagree. I prefer specialized tools over jack-of-all-trades. Otherwise we would be coding web applications in assembly. Your example, Ruby, wouldn't even be a blip in history radar if it wasn't for Ruby on Rails, a specialized and very productive toolkit. Just because RoR now has more competition doesn't mean it isn't/wasn't awesome.
- 4y ago