Skip to content
Merged

aa #3

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
01906d8
update smart-http (#6332)
smthing Feb 1, 2021
4bc23b5
[go/echo] update version of Go to 1.15 and Echo to v4.1.17 (#6331)
ffenix113 Feb 1, 2021
8c140b6
[c#/beetlex] update v1.6.5, use System.Text.Json (#6330)
beetlex-io Feb 1, 2021
efed13d
update redkale 2.3.0-snapshot (#6329)
redkale Feb 1, 2021
e49486d
Upgrade to Donkey 0.4.1 (#6322)
yaronel Feb 1, 2021
1b068fb
H2O: Switch the build system to Ninja (#6319)
volyrique Feb 1, 2021
c108ec9
[one] add ext bcmath (#6299)
lizhichao Feb 1, 2021
5f6ae8e
Add Mark (#6320)
passwalls Feb 1, 2021
7a31688
edit edap-http config (#6270)
luyongshou Feb 1, 2021
a5fe5be
[laravel-s]Made some optimizations (#6324)
hhxsv5 Feb 1, 2021
547a539
Update SNUnit Scala Native framework (#6321)
lolgab Feb 1, 2021
7461c27
Replace RootAllApplicationAssemblies with TrimMode (#6327)
MichalStrehovsky Feb 1, 2021
4a1e957
Update to Micronaut 2.3.1 (#6334)
jameskleeh Feb 2, 2021
6978e85
[c#/beetlex] update v1.6.5.3-beta (#6335)
beetlex-io Feb 3, 2021
b3322f4
WIP: Initial addition of cfml-lucee (#6325)
bdw429s Feb 3, 2021
caf55d6
Remove google groups / add discussions tab link
NateBrady23 Feb 3, 2021
985f215
Lithium update (#6336)
matt-42 Feb 4, 2021
a2d3dee
[one] modify the number of connection pools (#6340)
lizhichao Feb 8, 2021
73202ca
Add Adobe CFML Engine and re-org folders (#6337)
bdw429s Feb 8, 2021
3e9e01b
Update TreeFrog Framework to version 1.31 (#6349)
treefrogframework Feb 8, 2021
2348cc6
[c#/beetlex] update 1.6.5.36-beta (#6344)
beetlex-io Feb 8, 2021
f34037c
Update application.xml (#6348)
redkale Feb 8, 2021
2b9976b
Bump netty.version in /frameworks/Java/netty (#6352)
dependabot[bot] Feb 9, 2021
7be3d36
Update hapi to 20.1.0 (#6355)
adaxi Feb 10, 2021
d57aa89
Migrate warp-rust to use sqlx (#6354)
sugar700 Feb 10, 2021
98f1fea
[dlang/vibed] fix build and solved #6353 (#6357)
Kozzi11 Feb 11, 2021
b8917c6
Update 2.3.0 (#6356)
redkale Feb 11, 2021
55a770c
Update Finagle/Finatra library versions in benchmarks (#6358)
yufangong Feb 12, 2021
13973f9
Update to nodejs 14.15.5 and mongodb, mongoose (#6362)
JHyeok Feb 12, 2021
e5562b7
Fix Phalcon (#6363)
joanhey Feb 12, 2021
1ab6079
Update node version for nestjs (#6364)
JHyeok Feb 13, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,4 +95,4 @@ If you have a `results.json` file that you would like to visualize, you can [do

The community has consistently helped in making these tests better, and we welcome any and all changes. Reviewing our contribution practices and guidelines will help to keep us all on the same page. The [contribution guide](https://github.com/TechEmpower/FrameworkBenchmarks/wiki/Development-Contributing-Guide) can be found in the [TFB documentation](https://github.com/TechEmpower/FrameworkBenchmarks/wiki).

Join in the conversation on our [mailing list](https://groups.google.com/forum/?fromgroups=#!forum/framework-benchmarks), on [Twitter](https://twitter.com/tfbenchmarks), or chat with us on [Freenode](https://webchat.freenode.net/) at `#techempower-fwbm`.
Join in the conversation in the [Discussions tab](https://github.com/TechEmpower/FrameworkBenchmarks/discussions), on [Twitter](https://twitter.com/tfbenchmarks), or chat with us on [Freenode](https://webchat.freenode.net/) at `#techempower-fwbm`.
17 changes: 12 additions & 5 deletions frameworks/C++/lithium/lithium.cc
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
#include "symbols.hh"
using namespace li;


template <typename B>
void escape_html_entities(B& buffer, const std::string_view& data)
{
Expand Down Expand Up @@ -41,6 +42,12 @@ void escape_html_entities(B& buffer, const std::string_view& data)
}
}

int g_seed = 0;
inline int random_int() {
g_seed = (214013*g_seed+2531011);
return (g_seed>>16)&0x7FFF;
}

#ifdef PROFILE_MODE
void siege(int port) {
auto sockets = http_benchmark_connect(512, port);
Expand Down Expand Up @@ -137,7 +144,7 @@ int main(int argc, char* argv[]) {
};
my_api.get("/db") = [&](http_request& request, http_response& response) {
sql_db.max_async_connections_per_thread_ = db_nconn;
response.write_json(*random_numbers.connect(request.fiber).find_one(s::id = 1 + rand() % 10000));
response.write_json(*random_numbers.connect(request.fiber).find_one(s::id = 1 + random_int() % 10000));
};

my_api.get("/queries") = [&](http_request& request, http_response& response) {
Expand All @@ -148,7 +155,7 @@ int main(int argc, char* argv[]) {
N = std::max(1, std::min(N, 500));

auto c = random_numbers.connect(request.fiber);
response.write_json_generator(N, [&] { return *c.find_one(s::id = 1 + rand() % 10000); });
response.write_json_generator(N, [&] { return *c.find_one(s::id = 1 + random_int() % 10000); });
};

random_numbers.connect().forall([&] (const auto& number) {
Expand All @@ -160,7 +167,7 @@ int main(int argc, char* argv[]) {
int N = atoi(N_str.c_str());

response.write_json_generator(std::max(1, std::min(N, 500)),
[&] { return world_cache.get(1 + rand() % 10000); });
[&] { return world_cache.get(1 + random_int() % 10000); });
};

my_api.get("/updates") = [&](http_request& request, http_response& response) {
Expand All @@ -180,8 +187,8 @@ int main(int argc, char* argv[]) {
#endif
for (int i = 0; i < N; i++)
{
numbers[i] = *c.find_one(s::id = 1 + rand() % 10000);
numbers[i].randomNumber = 1 + rand() % 10000;
numbers[i] = *c.find_one(s::id = 1 + random_int() % 10000);
numbers[i].randomNumber = 1 + random_int() % 10000;
}

std::sort(numbers.begin(), numbers.end(), [] (auto a, auto b) { return a.id < b.id; });
Expand Down
14 changes: 10 additions & 4 deletions frameworks/C++/lithium/lithium_batch.cc
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,12 @@ void escape_html_entities(B& buffer, const std::string_view& data)
}
}

int g_seed = 0;
inline int random_int() {
g_seed = (214013*g_seed+2531011);
return (g_seed>>16)&0x7FFF;
}

#ifdef PROFILE_MODE
void siege(int port) {
auto sockets = http_benchmark_connect(256, port);
Expand Down Expand Up @@ -98,7 +104,7 @@ int main(int argc, char* argv[]) {
std::vector<decltype(orm.find_one(s::id = 1))> results;

for (int i = 0; i < N; i++)
results.push_back(orm.find_one(s::id = 1 + (i*10000/N) + rand() % (10000/N)));
results.push_back(orm.find_one(s::id = 1 + (i*10000/N) + random_int() % (10000/N)));
for (int i = 0; i < N; i++){
// println(" read result " , i);
numbers[i] = results[i]().value();
Expand All @@ -115,7 +121,7 @@ int main(int argc, char* argv[]) {
response.write_json(s::message = "Hello, World!");
};
my_api.get("/db") = [&](http_request& request, http_response& response) {
response.write_json(random_numbers.connect(request.fiber).find_one(s::id = 1 + rand() % 10000)());
response.write_json(random_numbers.connect(request.fiber).find_one(s::id = 1 + random_int() % 10000)());
};

my_api.get("/queries") = [&](http_request& request, http_response& response) {
Expand All @@ -127,7 +133,7 @@ int main(int argc, char* argv[]) {
auto orm = random_numbers.connect(request.fiber);
std::vector<decltype(orm.find_one(s::id = 1))> results;
for (int i = 0; i < N; i++)
results.push_back(orm.find_one(s::id = 1 + (i*10000/N) + rand() % (10000/N)));
results.push_back(orm.find_one(s::id = 1 + (i*10000/N) + random_int() % (10000/N)));

int i = 0;
response.write_json_generator(N, [&] { return results[i++]().value(); });
Expand All @@ -142,7 +148,7 @@ int main(int argc, char* argv[]) {
auto numbers = select_N_random_numbers(c, N);

for (int i = 0; i < N; i++)
numbers[i].randomNumber = 1 + rand() % 10000;
numbers[i].randomNumber = 1 + random_int() % 10000;

auto req = c.bulk_update(numbers);
if (N_SQL_CONNECTIONS * nthreads > 1) c.backend_connection().end_of_batch();
Expand Down
31 changes: 29 additions & 2 deletions frameworks/C++/treefrog/benchmark_config.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
"fortune_url": "/fortune/index",
"update_url": "/world/updates/",
"plaintext_url": "/world/plain",
"cached_query_url": "/world/cached_queries/",
"port": 8080,
"approach": "Realistic",
"classification": "Fullstack",
Expand All @@ -24,16 +25,41 @@
"versus": ""
},
"postgres": {
"json_url": "/json/json",
"db_url": "/world/prandom",
"query_url": "/world/pqueries/",
"fortune_url": "/fortune/index",
"update_url": "/world/pupdates/",
"plaintext_url": "/world/plain",
"cached_query_url": "/world/cached_pqueries/",
"port": 8080,
"approach": "Realistic",
"classification": "Fullstack",
"database": "Postgres",
"framework": "treefrog",
"language": "C++",
"flavor": "None",
"orm": "Micro",
"platform": "None",
"webserver": "None",
"os": "Linux",
"database_os": "Linux",
"display_name": "treefrog-postgres",
"notes": "",
"versus": ""
},
"epoll": {
"json_url": "/json/json",
"db_url": "/world/random",
"query_url": "/world/queries/",
"fortune_url": "/fortune/index",
"update_url": "/world/updates/",
"plaintext_url": "/world/plain",
"cached_query_url": "/world/cached_queries/",
"port": 8080,
"approach": "Realistic",
"classification": "Fullstack",
"database": "Postgres",
"database": "MySQL",
"framework": "treefrog",
"language": "C++",
"flavor": "None",
Expand All @@ -42,7 +68,7 @@
"webserver": "None",
"os": "Linux",
"database_os": "Linux",
"display_name": "treefrog-postgres",
"display_name": "treefrog-epoll",
"notes": "",
"versus": ""
},
Expand All @@ -53,6 +79,7 @@
"fortune_url": "/fortune/mindex",
"update_url": "/world/mupdates/",
"plaintext_url": "/world/plain",
"cached_query_url": "/world/cached_mqueries/",
"port": 8080,
"approach": "Realistic",
"classification": "Fullstack",
Expand Down
23 changes: 22 additions & 1 deletion frameworks/C++/treefrog/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ urls.db = "/world/random"
urls.query = "/world/queries/"
urls.update = "/world/updates/"
urls.fortune = "/fortune/index"
urls.cached_query = "/world/cached_queries/"
approach = "Realistic"
classification = "Fullstack"
database = "MySQL"
Expand All @@ -25,6 +26,7 @@ urls.db = "/world/mrandom"
urls.query = "/world/mqueries/"
urls.update = "/world/mupdates/"
urls.fortune = "/fortune/mindex"
urls.cached_query = "/world/cached_mqueries/"
approach = "Realistic"
classification = "Fullstack"
database = "MongoDB"
Expand All @@ -38,13 +40,32 @@ versus = "treefrog"
[postgres]
urls.plaintext = "/world/plain"
urls.json = "/json/json"
urls.db = "/world/prandom"
urls.query = "/world/pqueries/"
urls.update = "/world/pupdates/"
urls.fortune = "/fortune/index"
urls.cached_query = "/world/cached_pqueries/"
approach = "Realistic"
classification = "Fullstack"
database = "Postgres"
database_os = "Linux"
os = "Linux"
orm = "Micro"
platform = "None"
webserver = "None"
versus = ""

[epoll]
urls.plaintext = "/world/plain"
urls.json = "/json/json"
urls.db = "/world/random"
urls.query = "/world/queries/"
urls.update = "/world/updates/"
urls.fortune = "/fortune/index"
urls.cached_query = "/world/cached_queries/"
approach = "Realistic"
classification = "Fullstack"
database = "Postgres"
database = "MySQL"
database_os = "Linux"
os = "Linux"
orm = "Micro"
Expand Down
8 changes: 4 additions & 4 deletions frameworks/C++/treefrog/config/application.ini
Original file line number Diff line number Diff line change
Expand Up @@ -242,16 +242,16 @@ ActionMailer.smtp.DelayedDelivery=false

# Specify the settings file to enable the cache module.
# Comment out the following line.
#Cache.SettingsFile=cache.ini
Cache.SettingsFile=cache.ini

# Specify the cache backend, such as 'sqlite', 'mongodb'
# or 'redis'.
Cache.Backend=sqlite
Cache.Backend=redis

# Probability of starting garbage collection (GC) for cache.
# If 100 is specified, GC will be started at a rate of once per 100
# sets. If 0 is specified, the GC never starts.
Cache.GcProbability=100
Cache.GcProbability=10000

# If true, enable LZ4 compression when storing data.
Cache.EnableCompression=true
Cache.EnableCompression=no
30 changes: 30 additions & 0 deletions frameworks/C++/treefrog/config/cache.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
#
# Cache settings
#

[sqlite]
DatabaseName=tmp/cachedb
HostName=
Port=
UserName=
Password=
ConnectOptions=
PostOpenStatements=PRAGMA journal_mode=WAL; PRAGMA busy_timeout=5000; PRAGMA synchronous=NORMAL; VACUUM;

[redis]
DatabaseName=
HostName=localhost
Port=
UserName=
Password=
ConnectOptions=
PostOpenStatements=SELECT 1;

[mongodb]
DatabaseName=mdb
HostName=localhost
Port=
UserName=
Password=
ConnectOptions=
PostOpenStatements=
4 changes: 2 additions & 2 deletions frameworks/C++/treefrog/controllers/fortunecontroller.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ void FortuneController::index()
fortune.setMessage(QStringLiteral("Additional fortune added at request time."));
fortuneList << fortune;
// Sort
qSort(fortuneList.begin(), fortuneList.end(), caseSensitiveLessThan);
std::sort(fortuneList.begin(), fortuneList.end(), caseSensitiveLessThan);
texport(fortuneList);
render();
}
Expand All @@ -32,7 +32,7 @@ void FortuneController::mindex()
fortune.setMessage(QStringLiteral("Additional fortune added at request time."));
fortuneList << fortune;
// Sort
qSort(fortuneList.begin(), fortuneList.end(), caseSensitiveMngFortuneLessThan);
std::sort(fortuneList.begin(), fortuneList.end(), caseSensitiveMngFortuneLessThan);
texport(fortuneList);
render("mindex");
}
Expand Down
Loading