Check | oneshot-16-wrkrs-1 | oneshot-16-wrkrs-2 | persistent-16-wrkrs-1 | persistent-16-wrkrs-2 | persistent-32-wrkrs-1 | persistent-32-wrkrs-2 | persistent-64-wrkrs-1 | persistent-64-wrkrs-2 |
---|---|---|---|---|---|---|---|---|
Docker image size (MB) | 83.7 | 83.7 | 83.7 | 83.7 | 83.7 | 83.7 | 83.7 | 83.7 |
Does not start with invalid ES address | Good, exited in 0.5s | Good, exited in 0.4s | Good, exited in 0.3s | Good, exited in 0.3s | Good, exited in 0.3s | Good, exited in 0.3s | Good, exited in 0.3s | Good, exited in 0.3s |
Does not start without env variables | Good, exited in 0.8s | Good, exited in 0.4s | Good, exited in 0.3s | Good, exited in 0.3s | Good, exited in 0.3s | Good, exited in 0.3s | Good, exited in 0.3s | Good, exited in 0.3s |
HTTP GET / returns 200 or 404 | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /api-docs returns OpenAPI (Swagger) JSON docs | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/associatedFeatured?id=101748063&language=cs (Graz) returns 200 and Bratislava | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/associatedFeatured?id=101748113&language=pl (Praha) returns 200 and Praha itself | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/associatedFeatured?id=123456&language=en (invalid id) returns 404 | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest returns 400 | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=cs&lat=-90.3&lon=14 returns 400 | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=cs&lat=49.84&lon=12.92 returns 200 Kozolupy | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=cs&lat=50 returns 400 | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=cs&lat=50&lon=192 returns 400 | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=cs&lon=14 returns 400 | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=de + 50,14 Fastly headers returns 200 Praha | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=de returns 200 Berlin (lang fallback) | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=pl + 0,0 Fastly headers returns 200 Warszava (lang fallback) | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=pl&lat=50.107&lon=14.574 returns 200 Praha (even tho Hostavice are closer) | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/featured returns 400 with error JSON with message | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/featured?language=cs returns 200 and correct list of cities | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/featured?language=invalid returns 400 with error JSON with message | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/featured?language=sk returns 200 and correct list of cities | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/get returns 400 with error JSON with message | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/get?id=101748063&language=cs&extra=paramShouldBeIgnored returns 200 and correct object | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/get?id=101748109&language=de returns 200 and correct object | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/get?id=101748111&language=cs returns 200 and correct object | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/get?id=101748113&language=cs returns 200 and correct object | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/get?id=123 returns 400 with error JSON with message | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/get?id=123&language=cs returns 404 (this does not exist) with error JSON with message | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/get?id=blabla&language=cs returns 400 with error JSON with message | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/get?language=cs returns 400 with error JSON with message | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/search?language=cs&query=kremze returns 200 and AT city first | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/search?language=cs&query=křemže returns 200 and CZ city first | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/search?language=cs&query=křemže&countryIso=at returns 200 and AT city only | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /city/v1/search?language=de&query=Brno returns 200 and just Brünn | Good | Good | Good | Good | Good | Good | Good | Good |
HTTP GET /fnhjkdniudsancyne returns 404 | Good | Good | Good | Good | Good | Good | Good | Good |
Service logs a message containing 8080 (used port) on startup | Good | Good | Good | Good | Good | Good | Good | Good |
Service logs every request, message contains url path | Good | Good | Good | Good | Good | Good | Good | Good |
Startup time (to start responding) secs | 0.00236 | 0.00275 | 0.00226 | 0.00209 | 0.00229 | 0.0026 | 0.0125 | 0.0178 |
Stops gracefully | Good, in 0.8s | Good, in 0.9s | Good, in 0.6s | Good, in 0.5s | Good, in 0.9s | Good, in 0.5s | Good, in 0.7s | Good, in 0.6s |
Threads with 1 online vCPU, 1.0 soft CPU limit | dumb-init 18✕locations-rs-ro |
dumb-init 18✕locations-rs-ro |
dumb-init 18✕locations-rs-ro |
dumb-init 18✕locations-rs-ro |
dumb-init 34✕locations-rs-ro |
dumb-init 34✕locations-rs-ro |
dumb-init 66✕locations-rs-ro |
dumb-init 66✕locations-rs-ro |
Threads with 4 online vCPUs, 1.5 soft CPU limit (benchmarked) | dumb-init 18✕locations-rs-ro |
dumb-init 18✕locations-rs-ro |
dumb-init 18✕locations-rs-ro |
dumb-init 18✕locations-rs-ro |
dumb-init 34✕locations-rs-ro |
dumb-init 34✕locations-rs-ro |
dumb-init 66✕locations-rs-ro |
dumb-init 66✕locations-rs-ro |
Threads with 4 online vCPUs, 4.0 soft CPU limit | dumb-init 18✕locations-rs-ro |
dumb-init 18✕locations-rs-ro |
dumb-init 18✕locations-rs-ro |
dumb-init 18✕locations-rs-ro |
dumb-init 34✕locations-rs-ro |
dumb-init 34✕locations-rs-ro |
dumb-init 66✕locations-rs-ro |
dumb-init 66✕locations-rs-ro |
The graphs are interactive, view the rendered HTML locally to enjoy it.