今日、私はANSIC-G-WANで書かれたWebフレームワークを見つけました。
私はそれが好きですが、それはオープンソースではなく、1人の開発者によってのみ維持されています。本番環境で使用するのが怖いです。
ANSI CでWebサービスを作成できる、より深刻なフレームワークを知っていますか?
私はANSICにのみ興味があり、C++には興味がありません。
UPD:Raphtersフレームワークをグーグルで検索しました。今、私はそれをチェックしています。
今日、私はANSIC-G-WANで書かれたWebフレームワークを見つけました。
私はそれが好きですが、それはオープンソースではなく、1人の開発者によってのみ維持されています。本番環境で使用するのが怖いです。
ANSI CでWebサービスを作成できる、より深刻なフレームワークを知っていますか?
私はANSICにのみ興味があり、C++には興味がありません。
UPD:Raphtersフレームワークをグーグルで検索しました。今、私はそれをチェックしています。
G-WANに取り組んでいる私は、サーバーにCを使用できることも高く評価しています。
ちなみにRaphters
、あなたの選択も「1人の開発者のみ」によって開始されました。Nginx
しかしRaphters
、2011年に開始され(2009年に開始されたG-WANよりも成熟していますか?)、最後の更新はほぼ1年前です(G-WANよりも保守が優れていますか?)。
Raphtersの作者は、 「G-WANにはもっと多くのものが付属しています」と述べています。彼は私たちよりよく知っているかもしれません。
「ANSICでWebサービスを作成できる、より本格的なフレームワーク」をお探しの場合はTuxedo
、1980年代にAT&Tによって開発されたをご覧ください。
30年後、Tuxedo
「成熟」、「手入れの行き届いた」であり、ORACLE(新しい所有者)はおそらくここにとどまります。
ただし、G-WANのパフォーマンスはTuxedo
提供されません()。以下は、同じマシンでの同じテストです(強力なハードウェアにもかかわらずすぐに死にます):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
のApacheBench
(AB)テストは、上記のテストを確認します(ABは上記で使用しTuxedo
たものよりも低速です)。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として販売するために移植できるWebフレームワークを見つけることができませんでした。
たぶん、独自のWebサイトや他の多くのWebサイトに3年間サービスを提供した後、G-WANについて「恐れる」のをやめることができます。
そして、「より深刻なフレームワーク」の場合、選択は制限されます。
G-WANは、これまでに見たすべてのもの(数十)よりも高速でスケーラブルです
G-WANは、ANSI C、C ++、Objective-C、Javaで(編集および再生)スクリプトを提供します。
G-WANは、150 KBの単一の実行可能ファイルで構成され、構成なしで機能します。
コメントの1つに対処するために、Lua、Go、Python、JavascriptはすでにG-WANでサポートされており、PHPは間もなく登場します。
現在、GWANを使用してさまざまな作業を行っていますが、周りを見回すと、サル(http://monkey-project.com/)も見つかりました。それの本当の欠点は、ドキュメントと機能が不足しているように見えますが、それ以外に、それはあなたが望むことをすることもできるはずです。
残念ながら、GWANとMonkeyの現在のベンチマークはわかりません。また、GWANを使い続ける限り、自分でベンチマークを行う理由はありませんが、Monkeyの作者はGWANよりもさらに高速であると考えているようです。
スクリプトに関しては、monkeyに関する情報が見つからなかったため、必要に応じて独自のパイプラインを実装できるはずです(ドキュメントの不足を参照)。
これはすでに回答済みなので、完全を期すために投稿しています。
PS:面白そうな場合は、サル用のWebSocketなどのWebサービスを実装するためのフレームワークであるhttp://duda.io/も参照してください。