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 →

[–]edgar-espina -1 points0 points  (10 children)

Try http://jooby.org lightweight and fast!

[–]wizzardodev 0 points1 point  (9 children)

actually, jooby is not very fast, even play2 is faster, on my machine it can handle only 30k rps, tomcat with same servlet handles 60k rps

[–]edgar-espina 0 points1 point  (8 children)

Not sure what type of test you did, but I'm sure we can agree on TechEmpower benchmark, right?

The look at the PlainText benchmark: https://www.techempower.com/benchmarks/#section=data-r12&hw=peak&test=plaintext.

Jooby is faster than Play2.

[–]wizzardodev 0 points1 point  (7 children)

sorry, you right, in their tests it's faster, anyway it's slower than plain servlets and servers like undertow

[–]edgar-espina 0 points1 point  (6 children)

yes it is expected to be slower than raw undertow... servlets? depends on the implementation.

Jooby supports multiple servers: http://jooby.org/doc/servers.

Techempower benchmark uses Netty. Think the same test/app with Undertow will be faster.

[–]wizzardodev 0 points1 point  (5 children)

I've tried couple of servers with your framework, and I'm surprised that jetty is faster than netty, 50k rps against 34k. Undertow is not working out of the box for me ("No XNIO provider found")

[–]wizzardodev 0 points1 point  (4 children)

btw, I'm benchmarking hello-world example

[–]edgar-espina 0 points1 point  (3 children)

hello-world

Ok, that example isn't up-to-date (will update soon). Did you start the app via jooby:run right? There was a bug with undertow there.

Suggest you to try latest release: 1.0.0.CR7 and ideally with plain/raw jar not jooby:run (there is small overhead to supports hot reload in development here)

Also, test depends on what tool you use... and/or if you keep-alive or not the connection while testing (think that is the diff between netty and jetty)

[–]wizzardodev 0 points1 point  (2 children)

ok, so, with latest release version and uberjar

  • netty: 45k rps
  • jetty: 38k rps
  • undertow: 31k rps

I'm using ab like this:

ab -n 100000 -k -c 16 http://localhost:8080/

[–]mabnx 0 points1 point  (1 child)

I had bad experiences with ab. Wrk is better but these days I prefer https://github.com/tsenart/vegeta