WAFer
所属分类:Node.js
开发工具:C
文件大小:22KB
下载次数:0
上传日期:2017-12-07 22:32:39
上 传 者:
sh-1993
说明: WAFer是一个基于C语言的软件平台,用于可扩展的服务器端和网络应用程序。想想node.js...
(WAFer is a C language-based software platform for scalable server-side and networking applications. Think node.js for C programmers.)
文件列表:
.travis.yml (54, 2017-12-08)
LICENSE (18025, 2017-12-08)
Makefile (1158, 2017-12-08)
run.sh (44, 2017-12-08)
src (0, 2017-12-08)
src\example.c (709, 2017-12-08)
src\server.c (127, 2017-12-08)
src\wafer.c (29669, 2017-12-08)
src\wafer.h (4037, 2017-12-08)
src\waferapi.c (12063, 2017-12-08)
src\waferapi.h (2591, 2017-12-08)
[![Build Status](https://travis-ci.org/riolet/WAFer.svg?branch=master)](https://travis-ci.org/riolet/WAFer)
# WAFer
WAFer is a C language-based ultra-light scalable server-side web applications framework. Think node.js for C programmers. Because it's written in C for the C eco system, WAFer is wafer-thins with a memory footprint that is only a fraction of that of node.js and other bulky frameworks.
Just copy server.c (say, as myserver.c), put your code inside the function `void server(Request request)` in `myserver.c` and, make with `make SERVER=myserver`, and you are good to go.
WAFer can operate in many different configurations, all selected at compile time. They include:
1. Single-threaded (Default) or multi-threaded (make with `THREADS=n` where n>0)
2. Select(Default) or epoll (make with `LOOP=epoll`) based event loop
3. C10K mode (make with `LOOP=epoll MAX_CON_CONS=n` where n>10,000)
Default port is 4242. Set environment variable 'PORT' to change it.
That's really it. The source comes with a simple example `example.c` to get you started.
### Note to Contributors
Thank you for making this a wonderful project!
Here's our preferred formatting style:
```
find . \( -name '*.c' -o -name '*.h' \) -exec indent --no-tabs --linux-style --line-length 90 --indent-level 4 -bli0 \{\} \;
```
### Acknowledgements
1. [J. David Blackstone](http://sourceforge.net/u/jdavidb/profile/) and [Feng Shen](https://github.com/shenfeng), whose web servers have been repurposed to build this platform.
2. [Mark Karpeles](https://github.com/MagicalTux) for the incredible number of bug fixes!
3. [Fine folks at /r/programming](http://www.reddit.com/r/programming/) for the honest and constructive feedback.
近期下载者:
相关文件:
收藏者: