浏览代码

Removing Frameworks Post Round 14 (#2706)

Nate 8 年之前
父节点
当前提交
dbb8de8b96

+ 0 - 4
.travis.yml

@@ -10,10 +10,7 @@ python:
 
 env:
   matrix:
-    - "TESTDIR=C/libreactor"
-    - "TESTDIR=C/lwan"
     - "TESTDIR=C/duda"
-    - "TESTDIR=C/haywire"
     - "TESTDIR=C/onion"
     - "TESTDIR=C/h2o"
     - "TESTDIR=C/octane"
@@ -31,7 +28,6 @@ env:
     - "TESTDIR=C++/treefrog"
     - "TESTDIR=C++/ulib"
     - "TESTDIR=C++/wt"
-    - "TESTDIR=C++/ffead-cpp"
     - "TESTDIR=C++/poco"
     - "TESTDIR=Clojure/compojure"
     - "TESTDIR=Clojure/http-kit"

+ 0 - 1
frameworks/C++/ffead-cpp/.gitignore

@@ -1 +0,0 @@
-/ffead-cpp-2.0/

+ 0 - 210
frameworks/C++/ffead-cpp/benchmark_config.json

@@ -1,210 +0,0 @@
-{
-  "framework": "ffead-cpp",
-  "tests": [{
-    "default": {
-      "setup_file": "setup",
-      "json_url": "/te-benchmark/json",
-      "plaintext_url": "/te-benchmark/plaintext",
-      "db_url": "/te-benchmark/db",
-      "query_url": "/te-benchmark/queries?queries=",
-      "update_url": "/te-benchmark/updates?queries=",
-      "port": 8080,
-      "approach": "Realistic",
-      "classification": "micro",
-      "database": "MongoDB",
-      "framework": "ffead-cpp",
-      "language": "C++",
-      "flavor": "None",
-      "orm": "Full",
-      "platform": "None",
-      "webserver": "None",
-      "os": "Linux",
-      "database_os": "Linux",
-      "display_name": "ffead-cpp-mongo",
-      "notes": "",
-      "versus": ""
-    },
-	"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",
-      "db_url": "/te-benchmark/db",
-      "query_url": "/te-benchmark/queries?queries=",
-      "update_url": "/te-benchmark/updates?queries=",
-      "port": 8080,
-      "approach": "Realistic",
-      "classification": "Fullstack",
-      "database": "mongodb",
-      "framework": "ffead-cpp",
-      "language": "C++",
-      "orm": "Full",
-      "platform": "ffead-cpp-apache2",
-      "webserver": "apache2",
-      "os": "Linux",
-      "database_os": "Linux",
-      "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=",
-      "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": "ffead-cpp"
-    }
-  }]
-}

+ 0 - 18
frameworks/C++/ffead-cpp/setup-apache2-mysql.sh

@@ -1,18 +0,0 @@
-#!/bin/bash
-
-fw_depends mysql ffead-cpp-apache
-
-export FFEAD_CPP_PATH=${IROOT}/httpd/htdocs/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
-#chown -R www-data:www-data $FFEAD_CPP_PATH
-export ODBCINI=$IROOT/odbc.ini
-export ODBCSYSINI=$IROOT
-${IROOT}/httpd/bin/apachectl start > ffead.log 2>&1

+ 0 - 18
frameworks/C++/ffead-cpp/setup-apache2-postgresql.sh

@@ -1,18 +0,0 @@
-#!/bin/bash
-
-fw_depends postgresql ffead-cpp-apache
-
-export FFEAD_CPP_PATH=${IROOT}/httpd/htdocs/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
-#chown -R www-data:www-data $FFEAD_CPP_PATH
-export ODBCINI=$IROOT/odbc.ini
-export ODBCSYSINI=$IROOT
-${IROOT}/httpd/bin/apachectl start > ffead.log 2>&1

+ 0 - 18
frameworks/C++/ffead-cpp/setup-apache2.sh

@@ -1,18 +0,0 @@
-#!/bin/bash
-
-fw_depends mongodb ffead-cpp-apache
-
-export FFEAD_CPP_PATH=${IROOT}/httpd/htdocs/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
-#chown -R www-data:www-data $FFEAD_CPP_PATH
-export ODBCINI=$IROOT/odbc.ini
-export ODBCSYSINI=$IROOT
-${IROOT}/httpd/bin/apachectl start > ffead.log 2>&1

+ 0 - 18
frameworks/C++/ffead-cpp/setup-mysql.sh

@@ -1,18 +0,0 @@
-#!/bin/bash
-
-fw_depends mysql ffead-cpp
-
-export FFEAD_CPP_PATH=$IROOT/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
-export ODBCINI=$IROOT/odbc.ini
-export ODBCSYSINI=$IROOT
-$IROOT/ffead-cpp-2.0/CHS $FFEAD_CPP_PATH > ffead.log 2>&1
-

+ 0 - 16
frameworks/C++/ffead-cpp/setup-nginx-mysql.sh

@@ -1,16 +0,0 @@
-#!/bin/bash
-
-fw_depends mysql ffead-cpp-nginx
-
-export FFEAD_CPP_PATH=$IROOT/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 - 17
frameworks/C++/ffead-cpp/setup-nginx-postgresql.sh

@@ -1,17 +0,0 @@
-#!/bin/bash
-
-fw_depends postgresql ffead-cpp-nginx
-
-export FFEAD_CPP_PATH=$IROOT/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
-export ODBCINI=$IROOT/odbc.ini
-export ODBCSYSINI=$IROOT
-$IROOT/nginxfc/sbin/nginx > ffead.log 2>&1

+ 0 - 15
frameworks/C++/ffead-cpp/setup-nginx.sh

@@ -1,15 +0,0 @@
-#!/bin/bash
-
-fw_depends mongodb ffead-cpp-nginx
-
-export FFEAD_CPP_PATH=$IROOT/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 - 18
frameworks/C++/ffead-cpp/setup-postgresql.sh

@@ -1,18 +0,0 @@
-#!/bin/bash
-
-fw_depends postgresql ffead-cpp
-
-export FFEAD_CPP_PATH=$IROOT/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
-export ODBCINI=$IROOT/odbc.ini
-export ODBCSYSINI=$IROOT
-$IROOT/ffead-cpp-2.0/CHS $FFEAD_CPP_PATH > ffead.log 2>&1
-

+ 0 - 16
frameworks/C++/ffead-cpp/setup.sh

@@ -1,16 +0,0 @@
-#!/bin/bash
-
-fw_depends mongodb ffead-cpp
-
-export FFEAD_CPP_PATH=$IROOT/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/ffead-cpp-2.0/CHS $FFEAD_CPP_PATH > ffead.log 2>&1
-

+ 0 - 7
frameworks/C/haywire/README.md

@@ -1,7 +0,0 @@
-# Haywire
-
-This is the configuration files to benchmark the [Haywire](http://github.com/kellabyte/Haywire) HTTP library.
-
-## Requirements
-
-GCC, Git, Python 2.x

+ 0 - 23
frameworks/C/haywire/benchmark_config.json

@@ -1,23 +0,0 @@
-{
-  "framework": "haywire",
-  "tests": [{
-    "default": {
-      "setup_file": "setup",
-      "plaintext_url": "/plaintext",
-      "port": 8000,
-      "approach": "Realistic",
-      "classification": "Platform",
-      "database": "None",
-      "framework": "None",
-      "language": "C",
-      "flavor": "None",
-      "orm": "Raw",
-      "platform": "haywire",
-      "webserver": "None",
-      "os": "Linux",
-      "database_os": "Linux",
-      "notes": "",
-      "versus": "haywire"
-    }
-  }]
-}

+ 0 - 5
frameworks/C/haywire/setup.sh

@@ -1,5 +0,0 @@
-#!/bin/bash
-
-fw_depends haywire
-
-techempower_benchmark 8000 48 &

+ 0 - 8
frameworks/C/libreactor/README.md

@@ -1,8 +0,0 @@
-# libreactor_techempower
-
-Techempower benchmark of libreactor
-
-## Requirements
-
-GCC, Git, Automake
-

+ 0 - 24
frameworks/C/libreactor/benchmark_config.json

@@ -1,24 +0,0 @@
-{
-  "framework": "libreactor",
-  "tests": [{
-    "default": {
-      "setup_file": "setup",
-      "plaintext_url": "/plaintext",
-      "json_url": "/json",
-      "port": 8080,
-      "approach": "Realistic",
-      "classification": "Platform",
-      "database": "None",
-      "framework": "None",
-      "language": "C",
-      "flavor": "None",
-      "orm": "Raw",
-      "platform": "libreactor",
-      "webserver": "None",
-      "os": "Linux",
-      "database_os": "Linux",
-      "notes": "",
-      "versus": "libreactor"
-    }
-  }]
-}

+ 0 - 7
frameworks/C/libreactor/setup.sh

@@ -1,7 +0,0 @@
-#!/bin/bash
-
-fw_depends libreactor
-
-[ "$TRAVIS" == "true" ] || sudo setcap cap_sys_nice,cap_sys_resource+eip $IROOT/libreactor_techempower/rest_server
-
-rest_server &

+ 0 - 105
frameworks/C/lwan/README.md

@@ -1,105 +0,0 @@
-# Lwan
-
-This is the configuration files to benchmark the [Lwan](http://lwan.ws/?src=twfb)
-web server/framework.
-
-## FAQ
-
-### Where's the source code for the benchmark?
-
-Source code for the benchmark itself is currently living in [in Lwan's
-repository](https://github.com/lpereira/lwan/tree/master/techempower) for
-practical reasons, but will move to [this repository right after Round 10 is
-complete](https://github.com/TechEmpower/FrameworkBenchmarks/issues/1372).
-
-In any case, the script to install the framework in the test machines [pulls
-a specific snapshot of the Lwan source
-code](https://github.com/lpereira/lwan/tree/49607addb31879e2aa2b701317773674662315aa),
-including the benchmark code; and, due to the nature of Git, it's not
-possible to alter that code without changing which commit hash to checkout
-in this repository.
-
-### The JSON test RPS value seems ridiculous; is Lwan cheating?
-
-Come on. There's no optimization without cheating. There's a somewhat
-[detailed blog post about
-this](http://tia.mat.br/blog/html/2014/10/06/life_of_a_http_request.html?src=twfb).
-However, that level of cheating is considered by Lwan's author to be fair
-game, since it's not related to the benchmark code itself.
-
-In fact, the serialization library has been picked solely because it was
-available in the [CCAN](http://ccodearchive.net/).  It's written by [Joseph
-A.  Adams](http://ccodearchive.net/info/json.html), and has been slightly
-tweaked to fix some compiler warnings and a few other minor changes.  No
-major optimization or trickery has been made there: it's essentially the
-same code.  Props to him for a clean code that performs well.
-
-It's all open source anyway, feel free to go ahead and inspect the code.
-
-### The database results aren't that good. Why?
-
-The database tests are included for completeness sake. The database
-abstraction layer (which works with SQLite and MySQL) was written
-specifically for this benchmark, and is completely synchronous: while
-one query is being performed, all other clients wait.
-
-So the uninspiring results are expected. Database connectivity is
-important and will eventually be revisited.
-
-### I've seen the preliminary results and Lwan didn't fare well in the plaintext benchmark. Is there a reason why?
-
-These benchmarks are performed using pipelined requests. For practical
-reasons (almost no client supports them, at least by default), this was not
-implemented in Lwan: the server was dropping the request buffer and waiting
-for the next request to come in, while `wrk` was waiting for responses to
-come out, eventually timeouting and sending more pipelined requests, only to
-repeat, until the test actually ended.
-
-Pipelining has been implemented in a hurry to get included in Round 10.
-
-### The results are pretty good, can I use this in my next web app?
-
-Writing web apps in C? Only if you're Crazy. (The uppercase C is not a typo.)
-
-Seriously, Lwan is just a toy.  It's an experiment.  Most things you'll need
-from real frameworks won't be available.  You'll have a hard time trying to do
-the simplest things.  There are far more important things to look for while
-picking a framework, and performance, while important, is not the most
-important factor.  However, if you're feeling adventurous, know that Lwan is
-free software, and is very open to pull requests.
-
-### I have other questions, is there a FAQ somewhere else?
-
-Sure there is. [See Lwan's web page](http://lwan.ws/?src=twfb) or contact the author
-directly.
-
-## Requirements
-
-GCC, SQLite 3.7, MySQL/MariaDB client libraries, Lua 5.1/LuaJit 2.0, Linux 3.0,
-optionally jemalloc or tcmalloc.
-
-## Tests available
-
-### 1. JSON serialization
-
-URL: /json
-
-### 2. Single database query
-
-URL: /db
-
-### 3. Multiple database queries
-
-URL: /queries?queries=N
-
-### 4. Fortunes
-
-URL: /fortunes
-
-### 6. Plaintext
-
-URL: /plaintext
-
-## Contact
-
-[Leandro Pereira](http://tia.mat.br/?src=twfb) <[[email protected]](mailto:[email protected])>

+ 0 - 67
frameworks/C/lwan/benchmark_config.json

@@ -1,67 +0,0 @@
-{
-  "framework": "lwan",
-  "tests": [{
-    "default": {
-      "setup_file": "setup",
-      "plaintext_url": "/plaintext",
-      "json_url": "/json",
-      "port": 8080,
-      "approach": "Realistic",
-      "classification": "Platform",
-      "database": "None",
-      "framework": "None",
-      "language": "C",
-      "flavor": "None",
-      "orm": "Raw",
-      "platform": "Lwan",
-      "webserver": "None",
-      "os": "Linux",
-      "database_os": "Linux",
-      "display_name": "Lwan",
-      "notes": "",
-      "versus": "lwan"
-    },
-    "sqlite": {
-      "setup_file": "setup",
-      "db_url": "/db",
-      "query_url": "/queries?queries=",
-      "fortune_url": "/fortunes",
-      "port": 8080,
-      "approach": "Realistic",
-      "classification": "Platform",
-      "database": "SQLite",
-      "framework": "None",
-      "language": "C",
-      "flavor": "None",
-      "orm": "Raw",
-      "platform": "Lwan",
-      "webserver": "None",
-      "os": "Linux",
-      "database_os": "Linux",
-      "display_name": "Lwan",
-      "notes": "",
-      "versus": "lwan"
-    },
-    "mysql": {
-      "setup_file": "setup-mysql",
-      "db_url": "/db",
-      "query_url": "/queries?queries=",
-      "fortune_url": "/fortunes",
-      "port": 8080,
-      "approach": "Realistic",
-      "classification": "Platform",
-      "database": "MySQL",
-      "framework": "None",
-      "language": "C",
-      "flavor": "None",
-      "orm": "Raw",
-      "platform": "Lwan",
-      "webserver": "None",
-      "os": "Linux",
-      "database_os": "Linux",
-      "display_name": "Lwan",
-      "notes": "",
-      "versus": "lwan"
-    }
-  }]
-}

+ 0 - 12
frameworks/C/lwan/setup-mysql.sh

@@ -1,12 +0,0 @@
-#!/bin/bash
-
-export USE_MYSQL=1
-export MYSQL_USER=benchmarkdbuser
-export MYSQL_PASS=benchmarkdbpass
-export MYSQL_HOST=$DBHOST
-export MYSQL_DB=hello_world
-
-fw_depends mysql lwan
-
-cd $LWAN_ROOT/techempower
-$LWAN_BUILD/techempower/techempower &

+ 0 - 6
frameworks/C/lwan/setup.sh

@@ -1,6 +0,0 @@
-#!/bin/bash
-
-fw_depends lwan
-
-cd $LWAN_ROOT/techempower
-$LWAN_BUILD/techempower/techempower &

+ 0 - 117
toolset/setup/linux/frameworks/ffead-cpp-apache.sh

@@ -1,117 +0,0 @@
-#!/bin/bash
-
-fw_installed ffead-cpp-apache && return 0
-
-fw_get -o unixODBC-2.3.4.tar.gz ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-2.3.4.tar.gz
-fw_untar unixODBC-2.3.4.tar.gz
-cd unixODBC-2.3.4
-./configure --enable-stats=no --enable-gui=no --enable-drivers=no --enable-iconv --with-iconv-char-enc=UTF8 --with-iconv-ucode-enc=UTF16LE --libdir=${IROOT} --prefix=${IROOT} --sysconfdir=${IROOT}
-make install
-cd -
-
-fw_get -o mongo-c-driver-1.4.0.tar.gz https://github.com/mongodb/mongo-c-driver/releases/download/1.4.0/mongo-c-driver-1.4.0.tar.gz
-fw_untar mongo-c-driver-1.4.0.tar.gz
-cd mongo-c-driver-1.4.0/
-./configure --prefix=${IROOT} --libdir=${IROOT} --disable-automatic-init-and-cleanup
-make && make install
-cd -
-
-sudo apt-get install -y build-essential
-sudo apt-get install -y uuid-dev libmyodbc odbc-postgresql
-
-if [ ! -d "${IROOT}/ffead-cpp-2.0" ]; then
-	fw_get -o ffead-cpp-2.0.tar.gz https://github.com/sumeetchhetri/ffead-cpp/releases/download/2.0/ffead-cpp-2.0-te-bin.tar.gz
-	fw_untar ffead-cpp-2.0.tar.gz
-
-	rm -rf ffead-cpp-2.0
-	cp -rf ffead-cpp-2.0-bin ${IROOT}/ffead-cpp-2.0
-fi
-
-fw_get -o httpd-2.4.25.tar.gz http://www-us.apache.org/dist//httpd/httpd-2.4.25.tar.gz
-fw_get -o apr-1.5.2.tar.gz http://www-us.apache.org/dist//apr/apr-1.5.2.tar.gz
-fw_get -o apr-util-1.5.4.tar.gz http://www-us.apache.org/dist//apr/apr-util-1.5.4.tar.gz
-fw_untar httpd-2.4.25.tar.gz
-fw_untar apr-1.5.2.tar.gz
-fw_untar apr-util-1.5.4.tar.gz
-mv -f apr-1.5.2 httpd-2.4.25/srclib/apr
-mv -f apr-util-1.5.4 httpd-2.4.25/srclib/apr-util
-cd ${IROOT}/httpd-2.4.25
-rm -rf ${IROOT}/httpd
-mkdir ${IROOT}/httpd
-./configure --prefix=${IROOT}/httpd --enable-mods-shared=all --with-included-apr
-make
-make install
-cd -
-
-fw_get -o mod_ffeadcpp.cpp https://raw.githubusercontent.com/sumeetchhetri/ffead-cpp/master/modules/apache_mod_ffeadcpp/mod_ffeadcpp.cpp
-g++ -fpic -DSHARED_MODULE -fpermissive -I"${IROOT}/httpd/include" -I"${IROOT}/ffead-cpp-2.0/include/" -I"${IROOT}/include" -I"${IROOT}/include/libbson-1.0/" -I"${IROOT}/include/libmongoc-1.0" mod_ffeadcpp.cpp -L"${IROOT}/ffead-cpp-2.0/lib" -L"${IROOT}" -lffead_common -lffead_framework -ldl -lcrypto -lssl -c mod_ffeadcpp.cpp
-g++ -shared -o mod_ffeadcpp.so mod_ffeadcpp.o -L"${IROOT}/ffead-cpp-2.0/lib" -L"${IROOT}" -L"${IROOT}/httpd/lib" -lffead_common -lffead_framework -ldl -lcrypto -lssl -lapr-1 -laprutil-1 -lstdc++
-${IROOT}/httpd/bin/apxs -i -n 'ffead_cpp' mod_ffeadcpp.so
-
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdorm.xml
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdormmongo.xml
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdormmysql.xml
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdormpostgresql.xml
-
-cp ${IROOT}/ffead-cpp-2.0/resources/sample-odbcinst.ini ${IROOT}/odbcinst.ini
-cp ${IROOT}/ffead-cpp-2.0/resources/sample-odbc.ini ${IROOT}/odbc.ini
-
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/odbc.ini
-
-cp -rf ${IROOT}/ffead-cpp-2.0 ${IROOT}/httpd/htdocs/
-
-FFEADROOT=${IROOT}/httpd/htdocs/ffead-cpp-2.0
-ETROOT=${FFEADROOT//\//\\/}
-EIROOT=${IROOT//\//\\/}
-
-sed -i 's/Listen 80.*/#Listen 80/' ${IROOT}/httpd/conf/httpd.conf
-sed -i 's/Include conf\/ffead-site\.conf//' ${IROOT}/httpd/conf/httpd.conf
-echo 'Include conf/ffead-site.conf' >> ${IROOT}/httpd/conf/httpd.conf
-
-if [ ! -f ${IROOT}/httpd/bin/envvars  ]; then
-bash -c 'cat > ${IROOT}/httpd/bin/envvars <<EOL
-export FFEAD_CPP_PATH='"${FFEADROOT}"'
-export LD_LIBRARY_PATH=\$FFEAD_CPP_PATH/lib:'"${IROOT}"':\$LD_LIBRARY_PATH/
-export ODBCINI='"$IROOT"'/odbc.ini
-export ODBCSYSINI='"$IROOT"'	
-EOL'
-else
-	if [ ! -f ${IROOT}/httpd/bin/envvars.bk  ]; then
-		cp ${IROOT}/httpd/bin/envvars ${IROOT}/httpd/bin/envvars.bk
-	fi
-	cp ${IROOT}/httpd/bin/envvars.bk ${IROOT}/httpd/bin/envvars
-	sed -i '/^export FFEAD_CPP_PATH/ d' ${IROOT}/httpd/bin/envvars
-	sed -i '/^export LD_LIBRARY_PATH/ d' ${IROOT}/httpd/bin/envvars
-	sed -i '/^export ODBCINI/ d' ${IROOT}/httpd/bin/envvars
-	sed -i '/^export ODBCSYSINI/ d' ${IROOT}/httpd/bin/envvars	
-bash -c 'cat <<EOL >> ${IROOT}/httpd/bin/envvars
-export FFEAD_CPP_PATH='"${FFEADROOT}"'
-export LD_LIBRARY_PATH='"${FFEADROOT}"'/lib:'"${IROOT}"':$LD_LIBRARY_PATH/
-export ODBCINI='"$IROOT"'/odbc.ini
-export ODBCSYSINI='"$IROOT"' 
-EOL'
-fi
-
-bash -c 'rm -f ${IROOT}/httpd/conf/ffead-site.conf'
-
-bash -c 'cat > ${IROOT}/httpd/conf/ffead-site.conf <<EOL
-LoadModule ffead_cpp_module '"${IROOT}"'/httpd/modules/mod_ffeadcpp.so
-Listen 8080
-FFEAD_CPP_PATH '"${FFEADROOT}"'
-<VirtualHost *:8080>
-	DocumentRoot '"${FFEADROOT}"'/web
-	SetHandler ffead_cpp_module
-	<Directory '"${FFEADROOT}"'>
-		Options FollowSymLinks
-		AllowOverride None
-		Require all denied
-	</Directory>
-	<Directory '"${FFEADROOT}"'/web/>
-		Options -Indexes +FollowSymLinks +MultiViews
-		AllowOverride All
-		Require all granted
-	</Directory>
-</VirtualHost>
-EOL'
-
-touch ${IROOT}/ffead-cpp-apache.installed

+ 0 - 58
toolset/setup/linux/frameworks/ffead-cpp-nginx.sh

@@ -1,58 +0,0 @@
-#!/bin/bash
-
-fw_installed ffead-cpp-nginx && return 0
-
-fw_get -o unixODBC-2.3.4.tar.gz ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-2.3.4.tar.gz
-fw_untar unixODBC-2.3.4.tar.gz
-cd unixODBC-2.3.4
-./configure --enable-stats=no --enable-gui=no --enable-drivers=no --enable-iconv --with-iconv-char-enc=UTF8 --with-iconv-ucode-enc=UTF16LE --libdir=${IROOT} --prefix=${IROOT} --sysconfdir=${IROOT}
-make install
-cd -
-
-sudo apt-get install -y build-essential
-sudo apt-get install -y uuid-dev libmyodbc odbc-postgresql
-
-if [ ! -d "${IROOT}/ffead-cpp-2.0" ]; then
-	fw_get -o ffead-cpp-2.0.tar.gz https://github.com/sumeetchhetri/ffead-cpp/releases/download/2.0/ffead-cpp-2.0-te-bin.tar.gz
-	fw_untar ffead-cpp-2.0.tar.gz
-
-	rm -rf ${IROOT}/ffead-cpp-2.0
-	#cp -R ffead-cpp-2.0-bin/ ${IROOT}
-	mv ${IROOT}/ffead-cpp-2.0-bin ${IROOT}/ffead-cpp-2.0
-	#rm -rf ffead-cpp-2.0/
-fi
-
-fw_get -o mongo-c-driver-1.4.0.tar.gz https://github.com/mongodb/mongo-c-driver/releases/download/1.4.0/mongo-c-driver-1.4.0.tar.gz
-fw_untar mongo-c-driver-1.4.0.tar.gz
-cd mongo-c-driver-1.4.0/
-./configure --prefix=${IROOT} --libdir=${IROOT} --disable-automatic-init-and-cleanup
-make && make install
-cd -
-
-fw_get -o nginx-1.11.3.tar.gz http://nginx.org/download/nginx-1.11.3.tar.gz
-fw_untar nginx-1.11.3.tar.gz
-rm -rf ${IROOT}/nginxfc
-cd nginx-1.11.3
-./configure --prefix=${IROOT}/nginxfc --with-ld-opt="-lstdc++ -L${IROOT}/ffead-cpp-2.0/lib -L${IROOT}" --add-module="${IROOT}/ffead-cpp-2.0/ngx_mod" --with-cc-opt="-I${IROOT}/include/ -I${IROOT}/include/libmongoc-1.0/ -I${IROOT}/include/libbson-1.0/ -I${IROOT}/ffead-cpp-2.0/include -w -fpermissive"
-make install
-cd -
-
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdorm.xml
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdormmongo.xml
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdormmysql.xml
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdormpostgresql.xml
-
-rm -f ${IROOT}/odbcinst.ini
-rm -f ${IROOT}/odbc.ini
-
-cp ${IROOT}/ffead-cpp-2.0/resources/sample-odbcinst.ini ${IROOT}/odbcinst.ini
-cp ${IROOT}/ffead-cpp-2.0/resources/sample-odbc.ini ${IROOT}/odbc.ini
-
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/odbc.ini
-
-cp ${IROOT}/ffead-cpp-2.0/ngx_mod/nginx.conf ${IROOT}/nginxfc/conf/
-sed -i 's|FFEAD_PATH|'${IROOT}/ffead-cpp-2.0'|g' ${IROOT}/nginxfc/conf/nginx.conf
-echo "env ODBCINI=${IROOT}/odbc.ini;" | cat - ${IROOT}/nginxfc/conf/nginx.conf > /tmp/out && mv /tmp/out ${IROOT}/nginxfc/conf/nginx.conf
-echo "env ODBCSYSINI=${IROOT};" | cat - ${IROOT}/nginxfc/conf/nginx.conf > /tmp/out && mv /tmp/out ${IROOT}/nginxfc/conf/nginx.conf
-
-touch ${IROOT}/ffead-cpp-nginx.installed

+ 0 - 48
toolset/setup/linux/frameworks/ffead-cpp.sh

@@ -1,48 +0,0 @@
-#!/bin/bash
-
-fw_installed ffead-cpp && return 0
-
-sudo apt-get remove -y libodbc1 unixodbc unixodbc-dev
-
-fw_get -o unixODBC-2.3.4.tar.gz ftp://ftp.unixodbc.org/pub/unixODBC/unixODBC-2.3.4.tar.gz
-fw_untar unixODBC-2.3.4.tar.gz
-cd unixODBC-2.3.4
-./configure --enable-stats=no --enable-gui=no --enable-drivers=no --enable-iconv --with-iconv-char-enc=UTF8 --with-iconv-ucode-enc=UTF16LE --libdir=${IROOT} --prefix=${IROOT} --sysconfdir=${IROOT}
-make install
-cd -
-
-sudo apt-get install -y build-essential
-sudo apt-get install -y uuid-dev libmyodbc odbc-postgresql
-
-if [ ! -d "${IROOT}/ffead-cpp-2.0" ]; then
-	fw_get -o ffead-cpp-2.0.tar.gz https://github.com/sumeetchhetri/ffead-cpp/releases/download/2.0/ffead-cpp-2.0-te-bin.tar.gz
-	fw_untar ffead-cpp-2.0.tar.gz
-
-	rm -rf ${IROOT}/ffead-cpp-2.0
-	#cp -R ffead-cpp-2.0-bin/ ${IROOT}
-	mv ${IROOT}/ffead-cpp-2.0-bin ${IROOT}/ffead-cpp-2.0
-	#rm -rf ffead-cpp-2.0/
-fi
-
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdorm.xml
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdormmongo.xml
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdormmysql.xml
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/ffead-cpp-2.0/web/te-benchmark/config/sdormpostgresql.xml
-
-rm -f ${IROOT}/odbcinst.ini
-rm -f ${IROOT}/odbc.ini
-
-cp ${IROOT}/ffead-cpp-2.0/resources/sample-odbcinst.ini ${IROOT}/odbcinst.ini
-cp ${IROOT}/ffead-cpp-2.0/resources/sample-odbc.ini ${IROOT}/odbc.ini
-
-sed -i 's|localhost|'${DBHOST}'|g' ${IROOT}/odbc.ini
-
-fw_get -o mongo-c-driver-1.4.0.tar.gz https://github.com/mongodb/mongo-c-driver/releases/download/1.4.0/mongo-c-driver-1.4.0.tar.gz
-fw_untar mongo-c-driver-1.4.0.tar.gz
-cd mongo-c-driver-1.4.0/
-./configure --prefix=${IROOT} --libdir=${IROOT} --disable-automatic-init-and-cleanup
-make && make install
-cd -
-
-touch ${IROOT}/ffead-cpp.installed
-

+ 0 - 15
toolset/setup/linux/frameworks/haywire.sh

@@ -1,15 +0,0 @@
-#!/bin/bash
-
-fw_installed haywire && return 0
-
-HAYWIRE_HOME=$IROOT/Haywire
- 
-git clone https://github.com/kellabyte/Haywire.git
-cd $HAYWIRE_HOME
-git checkout e4d23b533c15ddc51966e439fa455eb764e0f555
-./build.sh -c release
-
-echo "export HAYWIRE_HOME=${HAYWIRE_HOME}" >> $IROOT/haywire.installed
-echo -e "export PATH=\$HAYWIRE_HOME/builds/unix/release/:\$PATH" >> $IROOT/haywire.installed
-
-source $IROOT/haywire.installed

+ 0 - 23
toolset/setup/linux/frameworks/libreactor.sh

@@ -1,23 +0,0 @@
-#!/bin/bash
-
-fw_depends gcc-4.9
-
-fw_installed libreactor && return 0
-
-LIBREACTOR_HOME=$IROOT/libreactor_techempower
-
-git clone https://github.com/fredrikwidlund/libreactor_techempower
-cd $LIBREACTOR_HOME
-# 4/14/2017
-git checkout c96da1fa46d3de3618755d8b578b6b4db48ccd3b
-export CC=gcc-4.9
-export RANLIB=gcc-ranlib-4.9
-export AR=gcc-ar-4.9
-./autogen.sh
-./configure
-make
-
-echo "export LIBREACTOR_HOME=${LIBREACTOR_HOME}" >> $IROOT/libreactor.installed
-echo -e "export PATH=\$LIBREACTOR_HOME/:\$PATH" >> $IROOT/libreactor.installed
-
-source $IROOT/libreactor.installed

+ 0 - 25
toolset/setup/linux/frameworks/lwan.sh

@@ -1,25 +0,0 @@
-#!/bin/bash
-
-fw_depends libjemalloc-dev libluajit-5.1-dev
-
-fw_installed lwan && return 0
-
-REV='ff549b46548fefb2a1dd2a4c6a22c345fcfb3eeb'
-LWAN_HOME=$IROOT/lwan
-
-[ ! -e $IROOT/lwan.installed -a -d $LWAN_HOME ] && rm -rf $LWAN_HOME
-
-# Lwan is only built during installation as a dependency sanity check.
-git clone git://github.com/lpereira/lwan.git
-cd $LWAN_HOME
-git checkout ${REV}
-mkdir build
-cd build
-cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=$IROOT
-make techempower
-make install
-
-echo "export LWAN_ROOT=${LWAN_HOME}" > $IROOT/lwan.installed
-echo -e "export LWAN_BUILD=\$LWAN_ROOT/build" >> $IROOT/lwan.installed
-
-source $IROOT/lwan.installed