Check | 8-wrkrs-1 | 12-wrkrs-1 | 16-wrkrs-1 | 16-wrkrs-2 | 32-wrkrs-1 | 32-wrkrs-2 | 64-wrkrs-1 | 64-wrkrs-2 | 128-wrkrs-1 | 128-wrkrs-2 | 256-wrkrs-1 | 256-wrkrs-2 |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Docker image size (MB) | 83.7 | 83.7 | 83.7 | 83.7 | 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.5s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s |
Does not start without env variables | Good, exited in 0.7s | Good, exited in 0.4s | Good, exited in 0.8s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s | Good, exited in 0.4s |
HTTP GET / returns 200 or 404 | Good | Good | Good | Good | 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 | 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 | 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 | 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 | Good | Good | Good | Good |
HTTP GET /city/v1/closest returns 400 | Good | Good | Good | Good | 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 | 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 | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=cs&lat=50 returns 400 | Good | Good | Good | Good | 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 | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=cs&lon=14 returns 400 | Good | Good | Good | Good | 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 | Good | Good | Good | Good |
HTTP GET /city/v1/closest?language=de returns 200 Berlin (lang fallback) | Good | Good | Good | Good | 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 | 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 | Good | Good | Good | Good |
HTTP GET /city/v1/featured returns 400 with error JSON with message | Good | Good | Good | Good | 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 | 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 | 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 | Good | Good | Good | Good |
HTTP GET /city/v1/get returns 400 with error JSON with message | Good | Good | Good | Good | 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 | 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 | 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 | 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 | 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 | 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 | 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 | 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 | 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 | 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 | 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 | 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 | Good | Good | Good | Good |
HTTP GET /fnhjkdniudsancyne returns 404 | Good | Good | Good | Good | 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 | Good | Good | Good | Good |
Service logs every request, message contains url path | Good | Good | Good | Good | Good | Good | Good | Good | Good | Good | Good | Good |
Startup time (to start responding) secs | 0.00246 | 0.00216 | 0.00236 | 0.00275 | 0.00178 | 0.00228 | 0.0159 | 0.0208 | 0.0152 | 0.0168 | 0.0377 | 0.0264 |
Stops gracefully | Good, in 0.9s | Good, in 0.7s | Good, in 0.8s | Good, in 0.9s | Good, in 0.7s | Good, in 0.7s | Good, in 0.8s | Good, in 0.7s | Good, in 0.9s | Good, in 0.7s | Good, in 0.7s | Good, in 0.7s |
Threads with 1 online vCPU, 1.0 soft CPU limit | dumb-init 10✕locations-rs-ro |
dumb-init 14✕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 |
dumb-init 130✕locations-rs-ro |
dumb-init 130✕locations-rs-ro |
dumb-init 258✕locations-rs-ro |
dumb-init 258✕locations-rs-ro |
Threads with 4 online vCPUs, 1.5 soft CPU limit (benchmarked) | dumb-init 10✕locations-rs-ro |
dumb-init 14✕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 |
dumb-init 130✕locations-rs-ro |
dumb-init 130✕locations-rs-ro |
dumb-init 258✕locations-rs-ro |
dumb-init 258✕locations-rs-ro |
Threads with 4 online vCPUs, 4.0 soft CPU limit | dumb-init 10✕locations-rs-ro |
dumb-init 14✕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 |
dumb-init 130✕locations-rs-ro |
dumb-init 130✕locations-rs-ro |
dumb-init 258✕locations-rs-ro |
dumb-init 258✕locations-rs-ro |
The graphs are interactive, view the rendered HTML locally to enjoy it.