There are many frameworks, each one comes with its own advantages and drawbacks. The purpose of this project is to identify them and attempt to measure their differences (performance is only one metric).
A framework is a set of components working together. The main intention behind a framework is to facilitate (app or service) creation. The way a framework helps any developer may vary from one to another.
A majority of frameworks could be split in 2 parts :
- full-stack meaning it provides all aspects (-stacks-) from data layer to sometimes deployment
- micro meaning it provides only the routing part, and let the developer choose any other component for the others
ruby, all tools are made inrubywrk, results are collected usingwrkpostgresql, results are stored inpostgresqldocker, each implementation is implemented in an isolated containerjq, processingdockermetadatadocker-machineif you are onmacos
- Setup
bundle install
bundle exec rake config
- Build
macos, you need to use docker-machine to allow docker usage for each framework
docker-machine rm default --force
docker-machine create default
eval $(docker-machine env default)
export FRAMEWORK=php/lumen
cd ${FRAMEWORK}
make -f .Makefile build
- Run
make -f ${FRAMEWORK}/.Makefile collect
Please take a look at https://web-frameworks-benchmark.netlify.app/result