Web Benchソース学習1

1709 ワード

Web benchはオープンソースで、C言語で書かれたテストサーバやエージェントのツールです.
fork()でテストして、コードの量は大きくなくて、絶対に1つの学習の教材です
Webサイト
http://home.tiscali.cz/~cz210552/webbench.html
しかし、更新されていないし、これを使う人も少ないと思います.最新のバージョンは2004年の1.5バージョンですが、良い学習プロジェクトでもあります.
紹介では、このテストは真実ではありませんが、少なくともサーバのパフォーマンスをシミュレートすることができます.
ファイル構造
. ├── ChangeLog -> debian/changelog ├── COPYRIGHT -> debian/copyright ├── debian │   ├── changelog │   ├── control │   ├── copyright │   ├── dirs │   └── rules ├── Makefile ├── socket.c ├── tags ├── webbench ├── webbench.1 ├── webbench.c └── webbench.o 1 directory, 14 files
Makefile
CFLAGS?=	-Wall -ggdb -W -O
CC?=		gcc
LIBS?=
LDFLAGS?=
PREFIX?=	/usr/local
VERSION=1.5
TMPDIR=/tmp/webbench-$(VERSION)

all:   webbench tags

tags:  *.c
	-ctags *.c

install: webbench
	install -s webbench $(DESTDIR)$(PREFIX)/bin	
	install -m 644 webbench.1 $(DESTDIR)$(PREFIX)/man/man1	
	install -d $(DESTDIR)$(PREFIX)/share/doc/webbench
	install -m 644 debian/copyright $(DESTDIR)$(PREFIX)/share/doc/webbench
	install -m 644 debian/changelog $(DESTDIR)$(PREFIX)/share/doc/webbench

webbench: webbench.o Makefile
	$(CC) $(CFLAGS) $(LDFLAGS) -o webbench webbench.o $(LIBS) 

clean:
	-rm -f *.o webbench *~ core *.core tags
	
tar:   clean
	-debian/rules clean
	rm -rf $(TMPDIR)
	install -d $(TMPDIR)
	cp -p Makefile webbench.c socket.c webbench.1 $(TMPDIR)
	install -d $(TMPDIR)/debian
	-cp -p debian/* $(TMPDIR)/debian
	ln -sf debian/copyright $(TMPDIR)/COPYRIGHT
	ln -sf debian/changelog $(TMPDIR)/ChangeLog
	-cd $(TMPDIR) && cd .. && tar cozf webbench-$(VERSION).tar.gz webbench-$(VERSION)

webbench.o:	webbench.c socket.c Makefile

.PHONY: clean install all tar