This is a performance testing project aiming to compare 3 equivalent lambda functions. Each lambda function has been developped or deployed differently from the others
-
expressDeployedWithServerless : Is a NodeJs & Express app deployed to lambda using Serverless Framework
-
nodeClaudia : Is a NodeJs & Express app deployed to lambda using ClaudiaJs
-
singleServerlessEndpoint : Is an endpoint developed and deployed using Serverless Framework.
-
init.sh file contains the command to run in order to install your testing environment.
-
benchmark.sh contains the command to run in order to test the apps performances.
In all three cases, you will need to have your aws credentials configured.
Please see AWS Credentials configuration
npm install --save
serverless deploy
npm install
npm start
claudia create {OPTIONS}
Please see Claudia
serverless deploy
We have setup an Amazon EC2 instance running over Debian. So the init.sh script is written with debian commands.
Just run init.sh in order to install the dependencies.
The init.sh does the following :
curl -sL https://deb.nodesource.com/setup_10.x | sudo bash -
sudo apt-get install --assume-yes nodejs
sudo apt-get install --assume-yes npm
npm install artillery
Then write a simple node app that will return a JSON array (see server.js)
To run the node server :
node server.js