C语言 G-WAN类似物

qojgxg4l  于 2023-03-29  发布在  其他
关注(0)|答案(4)|浏览(125)

今天我发现了用ANSI C - G-WAN编写的Web框架。
我喜欢它,但它不是开源的,只由一个开发人员维护,我害怕在生产中使用它。
你知道有什么更严肃的框架,允许用ANSI C编写Web服务吗?
我只对ANSI C感兴趣,而不是C++。
我在谷歌上搜索了Raphters框架。现在我正在检查它。

woobm2wo

woobm2wo1#

如果你不想使用G-WAN,可以试试NGINX,它被广泛部署,是目前最快的Web服务器之一,即使根据G-WAN作者的判断,它也是一个相当不错的产品。

u7up0aaq

u7up0aaq2#

在G-WAN上工作时,我也很重视将C用于服务器的能力。
你选择的Raphters(顺便说一句,就像Nginx一样)也是“由一个开发人员启动的”。
但是Raphters始于2011年(它比始于2009年的G-WAN更成熟吗?),最后一次更新已经快一年了(它比G-WAN维护得更好吗?)。
Raphters的作者说 “G-WAN带来了更多”。他可能比我们更清楚。
如果你正在寻找“任何更严肃的框架,允许用ANSI C编写Web服务”,那么看看Tuxedo,由AT&T在20世纪80年代开发的。
30年后,Tuxedo已经“成熟”,“维护良好”,ORACLE(新主人)很可能会留下来。
但是Tuxedo并不提供G-WAN(850,000 TPS)的性能。下面是Tuxedo15,000 TPS,尽管硬件强大,但很快就死了)的相同weightp测试 * 在同一台机器上 *:

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

TuxedoApacheBench(AB)测试证实了上述测试(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是由它的作者创建的:他找不到任何Web框架能够将他公司的Windows Desktop applications移植到作为SaaS销售的Web applications

owfi6suc

owfi6suc3#

也许,在为自己的网站和许多其他网站服务了3年之后,你可以停止对G-WAN的“恐惧”。
而且,对于 “任何更严肃的框架”,选择受到限制:

  • G-WAN比我迄今为止看到的所有(几十个)都更快,可扩展性更强
  • G-WAN提供ANSI C、C++、Objective-C、Java中的(编辑和播放)脚本。
  • G-WAN包含在150 KB的单个可执行文件中,无需配置即可工作。

为了解决其中一个评论,Lua,Go,Python,Javascript已经被G-WAN支持,PHP将很快推出。

q8l4jmvw

q8l4jmvw4#

我现在正在使用GWAN处理不同的东西,但环顾四周,我也发现了monkey(http://monkey-project.com/)。它真实的的缺点似乎是缺乏文档和功能,但除此之外,它也应该能够做你想做的事情。
不幸的是,我不知道任何目前的基准GWAN与猴子,并没有理由做一个自己,只要我会继续使用GWAN,但猴子的作者似乎认为它甚至比GWAN更快。
关于脚本,如果需要的话,应该可以实现自己的管道,因为我找不到任何关于monkey的信息(请参阅:缺少文件)。
由于这已经得到了回答,我只是张贴完整性。
P.S.:如果你对它感兴趣,你可能还想看看http://duda.io/,这是一个实现webservices的框架,比如websockets for monkey。

相关问题