Permalink
Comparing changes
Open a pull request
- 4 commits
- 14 files changed
- 0 commit comments
- 2 contributors
Unified
Split
Showing
with
397 additions
and 24 deletions.
- +168 −8 frameworks/C++/ffead-cpp/benchmark_config.json
- +16 −0 frameworks/C++/ffead-cpp/setup-apache2-mysql.sh
- +16 −0 frameworks/C++/ffead-cpp/setup-apache2-postgresql.sh
- +5 −1 frameworks/C++/ffead-cpp/setup-apache2.sh
- +16 −0 frameworks/C++/ffead-cpp/setup-mysql.sh
- +16 −0 frameworks/C++/ffead-cpp/setup-nginx-mysql.sh
- +15 −0 frameworks/C++/ffead-cpp/setup-nginx-postgresql.sh
- +15 −0 frameworks/C++/ffead-cpp/setup-nginx.sh
- +16 −0 frameworks/C++/ffead-cpp/setup-postgresql.sh
- +4 −0 frameworks/C++/ffead-cpp/setup.sh
- +11 −0 toolset/benchmark/benchmarker.py
- +24 −8 toolset/setup/linux/frameworks/ffead-cpp-apache.sh
- +49 −0 toolset/setup/linux/frameworks/ffead-cpp-nginx.sh
- +26 −7 toolset/setup/linux/frameworks/ffead-cpp.sh
| @@ -12,19 +12,65 @@ | ||
| "port": 8080, | ||
| "approach": "Realistic", | ||
| "classification": "Fullstack", | ||
| "database": "MongoDB", | ||
| "database": "mongodb", | ||
| "framework": "ffead-cpp", | ||
| "language": "C++", | ||
| "orm": "Full", | ||
| "platform": "ffead-cpp", | ||
| "webserver": "None", | ||
| "os": "Linux", | ||
| "database_os": "Linux", | ||
| "display_name": "ffead-cpp", | ||
| "display_name": "ffead-cpp-mongo", | ||
| "notes": "", | ||
| "versus": "" | ||
| }, | ||
| "apache2": { | ||
| "mysql": { | ||
| "setup_file": "setup-mysql", | ||
| "json_url": "/te-benchmark/json", | ||
| "plaintext_url": "/te-benchmark/plaintext", | ||
| "db_url": "/te-benchmark/db", | ||
| "query_url": "/te-benchmark/queries?queries=", | ||
| "fortune_url": "/te-benchmark/fortunes", | ||
| "update_url": "/te-benchmark/updates?queries=", | ||
| "port": 8080, | ||
| "approach": "Realistic", | ||
| "classification": "Fullstack", | ||
| "database": "mysql", | ||
| "framework": "ffead-cpp", | ||
| "language": "C++", | ||
| "orm": "Full", | ||
| "platform": "ffead-cpp", | ||
| "webserver": "None", | ||
| "os": "Linux", | ||
| "database_os": "Linux", | ||
| "display_name": "ffead-cpp-mysql", | ||
| "notes": "", | ||
| "versus": "" | ||
| }, | ||
| "postgresql": { | ||
| "setup_file": "setup-postgresql", | ||
| "json_url": "/te-benchmark/json", | ||
| "plaintext_url": "/te-benchmark/plaintext", | ||
| "db_url": "/te-benchmark/db", | ||
| "query_url": "/te-benchmark/queries?queries=", | ||
| "fortune_url": "/te-benchmark/fortunes", | ||
| "update_url": "/te-benchmark/updates?queries=", | ||
| "port": 8080, | ||
| "approach": "Realistic", | ||
| "classification": "Fullstack", | ||
| "database": "postgres", | ||
| "framework": "ffead-cpp", | ||
| "language": "C++", | ||
| "orm": "Full", | ||
| "platform": "ffead-cpp", | ||
| "webserver": "None", | ||
| "os": "Linux", | ||
| "database_os": "Linux", | ||
| "display_name": "ffead-cpp-postgresql", | ||
| "notes": "", | ||
| "versus": "" | ||
| }, | ||
| "apache2-mongo": { | ||
| "setup_file": "setup-apache2", | ||
| "json_url": "/te-benchmark/json", | ||
| "plaintext_url": "/te-benchmark/plaintext", | ||
| @@ -35,18 +81,132 @@ | ||
| "port": 8080, | ||
| "approach": "Realistic", | ||
| "classification": "Fullstack", | ||
| "database": "MongoDB", | ||
| "database": "mongodb", | ||
| "framework": "ffead-cpp", | ||
| "language": "C++", | ||
| "orm": "Full", | ||
| "platform": "ffead-cpp-apache", | ||
| "platform": "ffead-cpp-apache2", | ||
| "webserver": "apache2", | ||
| "os": "Linux", | ||
| "database_os": "Linux", | ||
| "display_name": "ffead-cpp-apache", | ||
| "display_name": "ffead-cpp-apache2-mongo", | ||
| "notes": "", | ||
| "versus": "" | ||
| }, | ||
| "apache2-mysql": { | ||
| "setup_file": "setup-apache2-mysql", | ||
| "json_url": "/te-benchmark/json", | ||
| "plaintext_url": "/te-benchmark/plaintext", | ||
| "db_url": "/te-benchmark/db", | ||
| "query_url": "/te-benchmark/queries?queries=", | ||
| "fortune_url": "/te-benchmark/fortunes", | ||
| "update_url": "/te-benchmark/updates?queries=", | ||
| "port": 8080, | ||
| "approach": "Realistic", | ||
| "classification": "Fullstack", | ||
| "database": "mysql", | ||
| "framework": "ffead-cpp", | ||
| "language": "C++", | ||
| "orm": "Full", | ||
| "platform": "ffead-cpp-apache2", | ||
| "webserver": "apache2", | ||
| "os": "Linux", | ||
| "database_os": "Linux", | ||
| "display_name": "ffead-cpp-apache2-mysql", | ||
| "notes": "", | ||
| "versus": "" | ||
| }, | ||
| "apache2-postgresql": { | ||
| "setup_file": "setup-apache2-postgresql", | ||
| "json_url": "/te-benchmark/json", | ||
| "plaintext_url": "/te-benchmark/plaintext", | ||
| "db_url": "/te-benchmark/db", | ||
| "query_url": "/te-benchmark/queries?queries=", | ||
| "fortune_url": "/te-benchmark/fortunes", | ||
| "update_url": "/te-benchmark/updates?queries=", | ||
| "port": 8080, | ||
| "approach": "Realistic", | ||
| "classification": "Fullstack", | ||
| "database": "postgres", | ||
| "framework": "ffead-cpp", | ||
| "language": "C++", | ||
| "orm": "Full", | ||
| "platform": "ffead-cpp-apache2", | ||
| "webserver": "apache2", | ||
| "os": "Linux", | ||
| "database_os": "Linux", | ||
| "display_name": "ffead-cpp-apache2-postgresql", | ||
| "notes": "", | ||
| "versus": "" | ||
| }, | ||
| "nginx-mongo": { | ||
| "setup_file": "setup-nginx", | ||
| "json_url": "/te-benchmark/json", | ||
| "plaintext_url": "/te-benchmark/plaintext", | ||
| "db_url": "/te-benchmark/db", | ||
| "query_url": "/te-benchmark/queries?queries=", | ||
| "fortune_url": "/te-benchmark/fortunes", | ||
| "update_url": "/te-benchmark/updates?queries=", | ||
| "port": 8080, | ||
| "approach": "Realistic", | ||
| "classification": "Fullstack", | ||
| "database": "mongodb", | ||
| "framework": "ffead-cpp", | ||
| "language": "C++", | ||
| "orm": "Full", | ||
| "platform": "ffead-cpp-nginx", | ||
| "webserver": "nginx", | ||
| "os": "Linux", | ||
| "database_os": "Linux", | ||
| "display_name": "ffead-cpp-nginx-mongo", | ||
| "notes": "", | ||
| "versus": "" | ||
| }, | ||
| "nginx-mysql": { | ||
| "setup_file": "setup-nginx-mysql", | ||
| "json_url": "/te-benchmark/json", | ||
| "plaintext_url": "/te-benchmark/plaintext", | ||
| "db_url": "/te-benchmark/db", | ||
| "query_url": "/te-benchmark/queries?queries=", | ||
| "fortune_url": "/te-benchmark/fortunes", | ||
| "update_url": "/te-benchmark/updates?queries=", | ||
| "port": 8080, | ||
| "approach": "Realistic", | ||
| "classification": "Fullstack", | ||
| "database": "mysql", | ||
| "framework": "ffead-cpp", | ||
| "language": "C++", | ||
| "orm": "Full", | ||
| "platform": "ffead-cpp-nginx", | ||
| "webserver": "nginx", | ||
| "os": "Linux", | ||
| "database_os": "Linux", | ||
| "display_name": "ffead-cpp-nginx-mysql", | ||
| "notes": "", | ||
| "versus": "" | ||
| }, | ||
| "nginx-postgresql": { | ||
| "setup_file": "setup-nginx-postgresql", | ||
| "json_url": "/te-benchmark/json", | ||
| "plaintext_url": "/te-benchmark/plaintext", | ||
| "db_url": "/te-benchmark/db", | ||
| "query_url": "/te-benchmark/queries?queries=", | ||
| "fortune_url": "/te-benchmark/fortunes", | ||
| "update_url": "/te-benchmark/updates?queries=", | ||
| "port": 8080, | ||
| "approach": "Realistic", | ||
| "classification": "Fullstack", | ||
| "database": "postgres", | ||
| "framework": "ffead-cpp", | ||
| "language": "C++", | ||
| "orm": "Full", | ||
| "platform": "ffead-cpp-nginx", | ||
| "webserver": "nginx", | ||
| "os": "Linux", | ||
| "database_os": "Linux", | ||
| "display_name": "ffead-cpp-nginx-postgresql", | ||
| "notes": "", | ||
| "versus": "" | ||
| } | ||
| }] | ||
| } | ||
| } | ||
| @@ -0,0 +1,16 @@ | ||
| #!/bin/bash | ||
| fw_depends apache | ||
| fw_depends ffead-cpp-apache | ||
| export FFEAD_CPP_PATH=/var/www/ffead-cpp-2.0 | ||
| export LD_LIBRARY_PATH=$IROOT:$FFEAD_CPP_PATH/lib:$LD_LIBRARY_PATH | ||
| echo $FFEAD_CPP_PATH | ||
| echo $LD_LIBRARY_PATH | ||
| sudo rm -f $FFEAD_CPP_PATH/*.cntrl | ||
| sudo rm -f $FFEAD_CPP_PATH/tmp/*.sess | ||
| sudo cp $FFEAD_CPP_PATH/web/te-benchmark/config/sdormmysql.xml $FFEAD_CPP_PATH/web/te-benchmark/config/sdorm.xml | ||
| sudo rm -rf $FFEAD_CPP_PATH/lib | ||
| sudo cp -Rf $FFEAD_CPP_PATH/libsql $FFEAD_CPP_PATH/lib | ||
| sudo cp $FFEAD_CPP_PATH/web/te-benchmark/sql-src/TeBkWorldsql.h $FFEAD_CPP_PATH/web/te-benchmark/include/TeBkWorld.h | ||
| sudo /etc/init.d/apache2 restart > ffead.log 2>&1 |
| @@ -0,0 +1,16 @@ | ||
| #!/bin/bash | ||
| fw_depends apache | ||
| fw_depends ffead-cpp-apache | ||
| export FFEAD_CPP_PATH=/var/www/ffead-cpp-2.0 | ||
| export LD_LIBRARY_PATH=$IROOT:$FFEAD_CPP_PATH/lib:$LD_LIBRARY_PATH | ||
| echo $FFEAD_CPP_PATH | ||
| echo $LD_LIBRARY_PATH | ||
| sudo rm -f $FFEAD_CPP_PATH/*.cntrl | ||
| sudo rm -f $FFEAD_CPP_PATH/tmp/*.sess | ||
| sudo cp $FFEAD_CPP_PATH/web/te-benchmark/config/sdormpostgresql.xml $FFEAD_CPP_PATH/web/te-benchmark/config/sdorm.xml | ||
| sudo rm -rf $FFEAD_CPP_PATH/lib | ||
| sudo cp -Rf $FFEAD_CPP_PATH/libsql $FFEAD_CPP_PATH/lib | ||
| sudo cp $FFEAD_CPP_PATH/web/te-benchmark/sql-src/TeBkWorldsql.h $FFEAD_CPP_PATH/web/te-benchmark/include/TeBkWorld.h | ||
| sudo /etc/init.d/apache2 restart > ffead.log 2>&1 |
| @@ -3,10 +3,14 @@ | ||
| fw_depends apache | ||
| fw_depends ffead-cpp-apache | ||
| export FFEAD_CPP_PATH=$TROOT/ffead-cpp-2.0 | ||
| export FFEAD_CPP_PATH=/var/www/ffead-cpp-2.0 | ||
| export LD_LIBRARY_PATH=$IROOT:$FFEAD_CPP_PATH/lib:$LD_LIBRARY_PATH | ||
| echo $FFEAD_CPP_PATH | ||
| echo $LD_LIBRARY_PATH | ||
| sudo rm -f $FFEAD_CPP_PATH/*.cntrl | ||
| sudo rm -f $FFEAD_CPP_PATH/tmp/*.sess | ||
| sudo cp $FFEAD_CPP_PATH/web/te-benchmark/config/sdormmongo.xml $FFEAD_CPP_PATH/web/te-benchmark/config/sdorm.xml | ||
| sudo rm -rf $FFEAD_CPP_PATH/lib | ||
| sudo cp -Rf $FFEAD_CPP_PATH/libmongo $FFEAD_CPP_PATH/lib | ||
| sudo cp $FFEAD_CPP_PATH/web/te-benchmark/sql-src/TeBkWorldmongo.h $FFEAD_CPP_PATH/web/te-benchmark/include/TeBkWorld.h | ||
| sudo /etc/init.d/apache2 restart > ffead.log 2>&1 | ||
| @@ -0,0 +1,16 @@ | ||
| #!/bin/bash | ||
| fw_depends ffead-cpp | ||
| export FFEAD_CPP_PATH=$TROOT/ffead-cpp-2.0 | ||
| export LD_LIBRARY_PATH=$IROOT:$FFEAD_CPP_PATH/lib:$LD_LIBRARY_PATH | ||
| echo $FFEAD_CPP_PATH | ||
| echo $LD_LIBRARY_PATH | ||
| rm -f $FFEAD_CPP_PATH/*.cntrl | ||
| rm -f $FFEAD_CPP_PATH/tmp/*.sess | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/config/sdormmysql.xml $FFEAD_CPP_PATH/web/te-benchmark/config/sdorm.xml | ||
| rm -rf $FFEAD_CPP_PATH/lib | ||
| cp -Rf $FFEAD_CPP_PATH/libsql $FFEAD_CPP_PATH/lib | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/sql-src/TeBkWorldsql.h $FFEAD_CPP_PATH/web/te-benchmark/include/TeBkWorld.h | ||
| $TROOT/ffead-cpp-2.0/CHS $FFEAD_CPP_PATH > ffead.log 2>&1 | ||
| @@ -0,0 +1,16 @@ | ||
| #!/bin/bash | ||
| fw_depends ffead-cpp-nginx | ||
| export FFEAD_CPP_PATH=$TROOT/ffead-cpp-2.0 | ||
| export LD_LIBRARY_PATH=$IROOT:$FFEAD_CPP_PATH/lib:$LD_LIBRARY_PATH | ||
| echo $FFEAD_CPP_PATH | ||
| echo $LD_LIBRARY_PATH | ||
| rm -f $FFEAD_CPP_PATH/*.cntrl | ||
| rm -f $FFEAD_CPP_PATH/tmp/*.sess | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/config/sdormmysql.xml $FFEAD_CPP_PATH/web/te-benchmark/config/sdorm.xml | ||
| rm -rf $FFEAD_CPP_PATH/lib | ||
| cp -Rf $FFEAD_CPP_PATH/libsql $FFEAD_CPP_PATH/lib | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/sql-src/TeBkWorldsql.h $FFEAD_CPP_PATH/web/te-benchmark/include/TeBkWorld.h | ||
| $IROOT/nginxfc/sbin/nginx > ffead.log 2>&1 | ||
| @@ -0,0 +1,15 @@ | ||
| #!/bin/bash | ||
| fw_depends ffead-cpp-nginx | ||
| export FFEAD_CPP_PATH=$TROOT/ffead-cpp-2.0 | ||
| export LD_LIBRARY_PATH=$IROOT:$FFEAD_CPP_PATH/lib:$LD_LIBRARY_PATH | ||
| echo $FFEAD_CPP_PATH | ||
| echo $LD_LIBRARY_PATH | ||
| rm -f $FFEAD_CPP_PATH/*.cntrl | ||
| rm -f $FFEAD_CPP_PATH/tmp/*.sess | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/config/sdormpostgresql.xml $FFEAD_CPP_PATH/web/te-benchmark/config/sdorm.xml | ||
| rm -rf $FFEAD_CPP_PATH/lib | ||
| cp -Rf $FFEAD_CPP_PATH/libsql $FFEAD_CPP_PATH/lib | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/sql-src/TeBkWorldsql.h $FFEAD_CPP_PATH/web/te-benchmark/include/TeBkWorld.h | ||
| $IROOT/nginxfc/sbin/nginx > ffead.log 2>&1 |
| @@ -0,0 +1,15 @@ | ||
| #!/bin/bash | ||
| fw_depends ffead-cpp-nginx | ||
| export FFEAD_CPP_PATH=$TROOT/ffead-cpp-2.0 | ||
| export LD_LIBRARY_PATH=$IROOT:$FFEAD_CPP_PATH/lib:$LD_LIBRARY_PATH | ||
| echo $FFEAD_CPP_PATH | ||
| echo $LD_LIBRARY_PATH | ||
| rm -f $FFEAD_CPP_PATH/*.cntrl | ||
| rm -f $FFEAD_CPP_PATH/tmp/*.sess | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/config/sdormmongo.xml $FFEAD_CPP_PATH/web/te-benchmark/config/sdorm.xml | ||
| rm -rf $FFEAD_CPP_PATH/lib | ||
| cp -Rf $FFEAD_CPP_PATH/libmongo $FFEAD_CPP_PATH/lib | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/sql-src/TeBkWorldmongo.h $FFEAD_CPP_PATH/web/te-benchmark/include/TeBkWorld.h | ||
| $IROOT/nginxfc/sbin/nginx > ffead.log 2>&1 |
| @@ -0,0 +1,16 @@ | ||
| #!/bin/bash | ||
| fw_depends ffead-cpp | ||
| export FFEAD_CPP_PATH=$TROOT/ffead-cpp-2.0 | ||
| export LD_LIBRARY_PATH=$IROOT:$FFEAD_CPP_PATH/lib:$LD_LIBRARY_PATH | ||
| echo $FFEAD_CPP_PATH | ||
| echo $LD_LIBRARY_PATH | ||
| rm -f $FFEAD_CPP_PATH/*.cntrl | ||
| rm -f $FFEAD_CPP_PATH/tmp/*.sess | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/config/sdormpostgresql.xml $FFEAD_CPP_PATH/web/te-benchmark/config/sdorm.xml | ||
| rm -rf $FFEAD_CPP_PATH/lib | ||
| cp -Rf $FFEAD_CPP_PATH/libsql $FFEAD_CPP_PATH/lib | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/sql-src/TeBkWorldsql.h $FFEAD_CPP_PATH/web/te-benchmark/include/TeBkWorld.h | ||
| $TROOT/ffead-cpp-2.0/CHS $FFEAD_CPP_PATH > ffead.log 2>&1 | ||
| @@ -8,5 +8,9 @@ echo $FFEAD_CPP_PATH | ||
| echo $LD_LIBRARY_PATH | ||
| rm -f $FFEAD_CPP_PATH/*.cntrl | ||
| rm -f $FFEAD_CPP_PATH/tmp/*.sess | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/config/sdormmongo.xml $FFEAD_CPP_PATH/web/te-benchmark/config/sdorm.xml | ||
| rm -rf $FFEAD_CPP_PATH/lib | ||
| cp -Rf $FFEAD_CPP_PATH/libmongo $FFEAD_CPP_PATH/lib | ||
| cp $FFEAD_CPP_PATH/web/te-benchmark/sql-src/TeBkWorldmongo.h $FFEAD_CPP_PATH/web/te-benchmark/include/TeBkWorld.h | ||
| $TROOT/ffead-cpp-2.0/CHS $FFEAD_CPP_PATH > ffead.log 2>&1 | ||
| @@ -377,6 +377,15 @@ def __setup_server(self): | ||
| # End __setup_server | ||
| ############################################################ | ||
| ############################################################ | ||
| # Clean up any processes that run with root privileges | ||
| ############################################################ | ||
| def __cleanup_leftover_processes_before_test(self): | ||
| p = subprocess.Popen(self.database_ssh_string, stdin=subprocess.PIPE, shell=True) | ||
| p.communicate(""" | ||
| sudo /etc/init.d/apache2 stop | ||
| """) | ||
| ############################################################ | ||
| # Makes any necessary changes to the database machine that | ||
| # should be made before running the tests. Is very similar | ||
| @@ -574,6 +583,8 @@ def exit_with_code(code): | ||
| ]) | ||
| print "database connection test results:\n" + "\n".join(st[1]) | ||
| self.__cleanup_leftover_processes_before_test(); | ||
| if self.__is_port_bound(test.port): | ||
| # This can happen sometimes - let's try again | ||
| self.__stop_test(out) | ||
Oops, something went wrong.