Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dockerify2 #187

Merged
merged 76 commits into from
Apr 28, 2018
Merged

Dockerify2 #187

merged 76 commits into from
Apr 28, 2018

Conversation

tbrand
Copy link
Collaborator

@tbrand tbrand commented Apr 17, 2018

I've fix the #180.
Now it's perfectly working with bin/benchmarker -r 1

> ./bin/benchmarker -r 1
Last update: 2018-04-17

OS: Darwin (version: 17.3.0, arch: x86_64)
CPU Cores: 8
threads: 9, requests: 1

Benchmark running ...
Done. <- rails
Done. <- sinatra
Done. <- roda
Done. <- rack-routing
Done. <- kemal
Done. <- router.cr
Done. <- raze
Done. <- lucky
Done. <- amber
Done. <- spider-gazelle
Done. <- echo
Done. <- gorilla_mux
Done. <- iris
Done. <- fasthttprouter
Done. <- gin
Done. <- actix
Done. <- iron
Done. <- nickel
Done. <- rocket
Done. <- express
Done. <- polka
Done. <- plug
Done. <- phoenix
Done. <- vapor
Done. <- perfect
Done. <- kitura
Done. <- akkahttp
Done. <- aspnetcore
Done. <- sanic
Done. <- japronto
Done. <- flask
Done. <- django
Done. <- tornado
Done. <- jester
Done. <- mofuw

@tbrand
Copy link
Collaborator Author

tbrand commented Apr 17, 2018

@waghanza I've pushed my patches at here.
If you are ok, please merge this.
If you have more patches, please push directly on this and request review for me.

Thanks!

@OvermindDL1
Copy link
Collaborator

OvermindDL1 commented Apr 17, 2018

Hmm... This is a lie:

threads: 9, requests: 1

It's only using a single thread worth of parallel requests as it's still using the crystal benchmarker, which is single-threaded parallel work only (Crystal is not multi-core). It can use multiple-threads to perform requests sure, but it will only use a single core as they become serialized (thus slower than just a single thread anyway). So something is borked...

@tbrand
Copy link
Collaborator Author

tbrand commented Apr 17, 2018

I really totally don't understand why you say I lied. Please stop saying like that strong words.
I just try to confirm that the all containers working well or not here.
That is the reason why I put the -r 1 option for the execution.

@OvermindDL1
Copy link
Collaborator

No no! I'm not saying you lied at all! I'm stating that the display from the output is lying about what it is actually doing (it implies it is using 9 threads worth of power to siege the servers, which it is not doing), plus I don't think that was your code anyway. ^.^

@tbrand
Copy link
Collaborator Author

tbrand commented Apr 18, 2018

Oh OK, sorry for that. Let me discuss about it at another place. 😄

@OvermindDL1
Copy link
Collaborator

Speaking of, have you thought to set up gitter for this repo or do you prefer all chat to be in issues-only for visibility reasons?

@waghanza
Copy link
Collaborator

@tbrand If ok, I can open / create a gitter channel

@tbrand
Copy link
Collaborator Author

tbrand commented Apr 19, 2018

@waghanza Of course. Please open the channel and put the link onto README.md 👍
BTW, is this PR OK for @waghanza ?
Your commits in this.

@waghanza
Copy link
Collaborator

waghanza commented Apr 19, 2018

@OvermindDL1 done it 👍

I'll PR about this next week

@tbrand
Copy link
Collaborator Author

tbrand commented Apr 23, 2018

@waghanza What's going on?

@waghanza
Copy link
Collaborator

I'll merge this after test (somewhere around tomorrow)

@waghanza waghanza self-assigned this Apr 27, 2018
@waghanza waghanza self-requested a review April 27, 2018 20:31
@waghanza waghanza merged commit 1a93e5b into master Apr 28, 2018
waghanza pushed a commit to AlexWayfer/which_is_the_fastest that referenced this pull request May 3, 2018
* use docker to isolate hosts

* run flask on gunicorn (temporary solution)

* build on ci (only to ensure build could run)

* fix style (underscore for large numbers)

* use shards to release all binaries (client,benchmarker)

* remove unused directory

* uniformize rubies dockerfile

* enable to specify (or not) frameworks to benchmark

* fix style (underscore for large numbers)

* allow docker host

* re-enable django (in a container)

* enable go frameworks -> iris / gin / echo / fasthttprouter / gorilla-mux

* dockerize iris

* fix jester containerization

* re-enable rack-routing

* re-enable lucky

* re-enable amber

* re-enable spider-gazelle

* Lint yaml (the-benchmarker#166)

* lint neph config file

* lint actual config file

* disable line length verification (temporary)

* re-enable vapor

* use docker to isolate hosts

* fix style (underscore for large numbers)

* use shards to release all binaries (client,benchmarker)

* enable to specify (or not) frameworks to benchmark

* enable to specify (or not) frameworks to benchmark

* re-enable django (in a container)

* enable go frameworks -> iris / gin / echo / fasthttprouter / gorilla-mux

* re-enable actix

* update dependencies

* fix actix availability

* re-enable rust frameworks
> iron
> nickel
> rocket

* upgrade dependencies

* fix listening ip

* upgrade dependencies

* use rust nightly to cimple rocket

* force shards to install ameba binary

* keep crystal code / yaml files clean

* use production mode

* lint

* fix assets compilation

* use --no-debug flag on compilation

* fix version

* fix version

* remove unnecessary code on lucky

* use production env mode on lucky

* fix nickel running into dockerf

* fix mofuw in docker

* re-enable japronto

* re-enable sanic

* re-enable tornado

* re-enable node frameworks (polka / express)

* remove Package.pins (see the-benchmarker#172)

* update to last major

* re-enable swift frameworks (kitura / perfect / vapor)

* re-enable tornado & sanic

* install neph cli tool on compilation

* re-enable elixir frameworks (plug & elixir)

* re-enable libevhtp

* fix version conflict on amber compilation

* add scala framework (akkahttp)

* re-enable mofuw

* re-enable c# (.net) framework

* fix travis config (duplicate key)

* upgrade docker image

* restore evhtp source files

* do not start containers with neph, but on-the-fly

* re-enable node frameworks

* Revert "upgrade docker image"

This reverts commit ba53886.

Since docker image was updated

@see the-benchmarker#180 (comment)

* increase sleeping time to wait container starting

* fix aspnetcore container

* use make to build containers sequentially

* crystal tools are compiled with shards intsead of make

* fix

* avoid using lock files

* fix rocket build (needs nighlty)

* fix lucky build
@AlexWayfer
Copy link
Contributor

AlexWayfer commented May 8, 2018

  • use shards to release all binaries (client,benchmarker)

Sorry, what? Do you know that neither make nor neph doesn't build bin/benchmarker now, what is written in README about usage?

@waghanza
Copy link
Collaborator

waghanza commented May 8, 2018

@AlexWayfer yeah the README is quiet outdated

After publishing results, I will re-write the documentation

@AlexWayfer
Copy link
Contributor

After publishing results, I will re-write the documentation

OK, thank you!

@waghanza waghanza deleted the dockerify2 branch July 6, 2018 13:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants