Работая в G-WAN, я также ценю возможность использовать C для сервера.
Ваш выбор Raphters
(как, кстати, Nginx
) был также * 1006.* запущено "только одним разработчиком" .
Но Raphters
запущен в 2011 г. (более ли он более зрел, чем G-WAN, начиная с 2009 г.?), а последнее обновление - почти годстарый (он лучше поддерживается, чем G-WAN?).
Автор Raphters говорит «G-WAN поставляется с большим количеством, хотя» .Возможно, он знает лучше нас.
Если вы ищете "более серьезных фреймворков, которые позволяют писать веб-сервисы в ANSI C" , тогда посмотрите на Tuxedo
, разработанный AT & Tв 80-е годы.
Через 30 лет Tuxedo
«зрелый», «ухоженный», и ORACLE (новый владелец), скорее всего, останется здесь.
Но Tuxedo
не обеспечивает производительность G-WAN (850,000 TPS
).Ниже приведен тот же weightp
тест на той же машине для Tuxedo
(15,000 TPS
и быстро умирающий, несмотря на мощное оборудование):
Concurrency / min / average / max
---------------------------------
1, 5477, 6151, 8161
10, 7894, 11416, 15451
20, 8177, 11894, 15578
30, 10064, 13246, 15499
40, 1, 909, 8885
50, 1, 18, 130
60, 1, 1, 1
70, 1, 1, 1
80, 1, 1, 1
90, 1, 1, 1
100, 1, 1, 1
An ApacheBench
(AB) тест Tuxedo
подтверждает тест выше (AB медленнее, чем weighttp
, использованный выше):
ab -n 100000 -c 10 -k "http://127.0.0.1:8080/"
Server Software: Oracle
Server Hostname: 127.0.0.1
Server Port: 8080
Document Path: /
Document Length: 266 bytes
Concurrency Level: 10
Time taken for tests: 12.462 seconds
Complete requests: 100000
Failed requests: 0
Write errors: 0
Keep-Alive requests: 0
Total transferred: 48400000 bytes
HTML transferred: 26600000 bytes
Requests per second: 8024.45 [#/sec] (mean)
Time per request: 1.246 [ms] (mean)
Time per request: 0.125 [ms] (mean, across all concurrent requests)
Transfer rate: 3792.80 [Kbytes/sec] received
Глядя на это, возможно, вы понимаете, почему G-WAN был создан его автором: он могне нашел ни одного веб-фреймворка, способного портировать Windows Desktop applications
его компании на Web applications
, продаваемый как SaaS.