⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 changelog

📁 一个WEB服务器的性能测试工具
💻
📖 第 1 页 / 共 2 页
字号:
	on the sendq and recvq by calling call_dec_ref().  Call conn_dec_ref()	at the end.	(core_loop): Obtain a reference to the connection object for the	duration of read & write processing.	* conn.h: Include <object.h>.	(MAX_HDR_LINE_LEN): New macro.	(struct Conn): Remove member first_owned and line_size.  Replace	line_buf pointer with line_buf array.	(conn_init): Declare.	(conn_deinit): Ditto.	(conn_new): New macro.	(conn_inc_ref): Ditto.	(conn_dec_ref): Ditto.	* conn.c: Remove include of <errno.h> and <event.h>.	(conn_new): Remove.	(conn_destroy): Ditto.	(conn_init): New function.	(conn_deinit): Ditto.	* call.h: (enum HTTP_Method): Remove.	Include <object.h>.	(struct Call): Remove members loc_len, loc, uri_len, uri,	orig_host, extra_hdrs, contents_len, contents.  New member:	iov_saved.	(call_init): Declare.	(call_deinit): Ditto.	(call_new): New macro.	(call_inc_ref): Ditto.	(call_dec_ref): Ditto.	(call_set_method): Ditto.	(call_set_location): Ditto.	(call_set_uri): Ditto.	(call_set_contents): Ditto.	* call.c (call_method_name): Remove.	(free_call_list): Remove.	(call_new): Remove.	(call_init): New function.	(call_deinit): Ditto.	(call_append_request_header): Fill req.iov[IE_FIRST_HEADER +	num_hdrs] instead of req.extra_hdrs[num_hdrs].	* Makefile (HTTPERF): Mention object and sess.1998-05-29  David Mosberger  <davidm@hpl.hp.com>	* Version 0.5 released.	* core.c (core_send): Fix setup of IE_METHOD and insert blank	character in IE_BLANK.	* call.h (enum IOV_Element): Add IE_BLANK.1998-05-27  David Mosberger  <davidm@hpl.hp.com>	* timer.c: Rename t_next to t_curr.	(timer_tick): Set t_next _after_ invoking the callback.  This	allows the callback to cancel all other timers (except itself).	(timer_cancel): Add assertion to ensure that timer_cancel() is	not called from within the handler of a given timer.	* httperf.h (enum Dist_Type): New type.	(struct Rate_Info): Ditto.	(struct Cmdline_Params): Change type of RATE member from Time to	Rate_Info.  New member WSESSLOG.	(panic): Declare.	* httperf.h (VERSION): Up version number to 0.5.	* httperf.c: Include <ctype.h> and <stdarg.h>.  New options:	close-with-reset, period, wsesslog.	(usage): Add usage message for new options.	(panic): New function.	(main): Declare wsesslog, uri_wsesslog, and wsesslog_stat.	Initialize param.rate.dist with DETERMINISTIC.  Handle --period	and --wsesslog options.  Fix typo: user think time is 3rd, not 4th	parameter in wsess parameter list.	(main): Call timer_tick() after initializating the statistic	collectors and workload generators so our notion of the current	time is reasonably accurate.	* gen/wsess.c (req_create): Use call_append_request_header().	(start): Initialize rg_sess.rate with &param.rate.	* gen/uri_wsesslog.h: New file (by Dick Carter).	* gen/uri_wsesslog.c: Ditto.	* gen/wsesslog.h: Ditto.	* gen/wsesslog.c: Ditto.	* gen/uri_wlog.c: Drop inclusion of <stdarg.h>.	Move panic() from here to httperf.c.	* gen/sess_rate.c (start): Initialize rg.rate with &param.rate.	* gen/rate.h: New member next_interarrival_time.  New member	xsubi.  Replace PERIOD member with RATE member.	(rate_generator_stop): Drop second argument (RATE).	* gen/rate.c: Include <math.h>, <stdio.h>, and <stdlib.h>.	(next_arrival_time_det): New function.	(next_arrival_time_uniform): Ditto.	(next_arrival_time_exp): Ditto.	(tick): Invoke (*next_arrival_time)() to determine next delay.	(rate_generator_start): Initialize rg->xsubi based on	param.client.id.  Initialize rg->next_interarrival_time based on	desired distribution.	* gen/Makefile (libgen.a): Mention wsesslog.o and uri_wsesslog.o	* core.c (core_connect): Don't rely on realloc(0, SIZE) doing the	right thing.	(core_connect): Clear newly allocated sd_to_conn elements after	allocating them.	(core_send): Use call_method_name.  Copy in defined	c->req.extra_hdrs[i] iovecs.  Copy in IE_CONTENT iovec.	* call.h: New value HM_LEN.	(MAX_EXTRA_HEADERS): New macro.  Replace IE_HEADERS with	IE_FIRST_HEADER and IE_LAST_HEADER.  Make extra_hdrs an array of	`struct iovec'.  New member num_extra_hdrs.	(call_append_request_header): Declare new function.	* call.c: New array.	(call_append_request_header): New function.1998-05-26  David Mosberger  <davidm@hpl.hp.com>	* COPYRIGHT: Add 1998 as copyright year.	* stat/basic.c (dump): If no connections have been created, print	0.0 for minimm connection lifetime.  This avoids a core-dump under	FreeBSD, which seems to have a problem printing IEEE infinity.1998-05-22  David Mosberger  <davidm@hpl.hp.com>	* call.c (method_name): New variable.1998-04-27  David Mosberger  <davidm@hpl.hp.com>	* core.c (do_recv): Ignore EAGAIN errors---Linux 2.0.32 sometimes	returns EAGAIN on a read() if a previous write() resulted in	EAGAIN.	* AUTHORS: New file.1998-03-24  David Mosberger  <davidm@hpl.hp.com>	* gen/wsess.c (call_done): Also fall back to non-persistent	session if c->req.version < HTTP/1.1.1998-03-18  David Mosberger  <davidm@hpl.hp.com>	* httperf.c (usage): Fix typo: --recv-buffer -> --send-buffer.	* gen/wsess.c (dump): Rename "Sess" to "Session" in statistics	output.	* core.c (core_connect): Turn on closing with RESET only when	param.close_with_reset is set.1998-03-17  David Mosberger  <davidm@hpl.hp.com>	* stat/basic.c (dump): In "Total" line, rename "call" to "req".	* Version 0.41 released.	* core.c: Include <sys/resource.h> after <sys/types.h> to get it	to compile under FreeBSD (which seems to have a broken libc).	* stat/basic.c (dump): Complete renaming of "session" to "call".	Rename "Call" to "Request".1998-03-16  David Mosberger  <davidm@hpl.hp.com>	* Version 0.4 released.	* httperf.h (VERSION): Change version number to 0.4.	* httperf.c: (longopts): Add --http-version.	(main): Initialize param.http_version to HTTP/1.  Support parsing	of --http-version option.  Echo --http-version option if version	other than 1.1 is selected.	* httperf.h (struct Cmdline_Params): New member HTTP_VERSION.	* core.c (core_send): Support generation of HTTP/1.0 requests.	* Patches by Stephane Eranian:	* httperf.man: Mention --wlog parameter.	* Makefile (clean): Use $(MAKE) instead of make.1998-03-12  David Mosberger  <davidm@hpl.hp.com>	* httperf.c: Renamed Session to Conn to avoid confusion between	user sessions and TCP connections.1998-03-02  David Mosberger  <davidm@hpl.hp.com>	* gen/wsess.c (user_destroy): Signal EV_USER_DESTROYED.	(user_create): Signal EV_USER_NEW.	(start): Register rate-generator with event EV_USER_DESTROYED	instead of EV_SESSION_DESTROYED.	* event.h: New events EV_USER_NEW and EV_USER_DESTROYED.	* event.c: Ditto.1998-02-27  David Mosberger  <davidm@hpl.hp.com>	* session.h: Remove unused first_call member.1998-02-26  David Mosberger  <davidm@hpl.hp.com>	* gen/wsess.c (call_recv_hdr): Always check for Connection: and	Set-Cookie: headers (not just for first call).	(req_create): Modify to support bursts.	(user_connect): Ditto.	(sess_destroyed): Ditto.	(call_destroyed): Ditto.1998-02-25  David Mosberger  <davidm@hpl.hp.com>	* core.c (lffs): Fix lffs() so it returns 0 when no bits at all	are set in a 64 bit long.	(set_active): Set recvq timeout if timeout==0.0 (the old code failed	to timeout connections that were waiting for replies).1998-02-23  David Mosberger  <davidm@hpl.hp.com>	* Version 0.3 released.	* timer.c (timer_now_forced): New function.	* httperf.h (Cmdline_params): New member burst_len.	* httperf.c: New option --burst-length.  At present, only	gen/call_seq.c supports this (gen/wsess does not).	* gen/wsess.c (struct User): New members: found_close_hdr,	conn_start, call_start, and cookie.	(req_create): Insert cookie as extra header if there is one.	(call_recv_hdr): New function.  Looks for "Connection: close" and	"Set-Cookie:" headers.	* gen/call_seq.c (Sess_Private_Data): New member "num_finished".	(issue_calls): Add support for --burst-len parameter.	(call_destroyed): Ditto.	* core.c (SYSCALL): Call timer_now_forced() instead of timer_now().	(core_connect): Keep track of longest back-to-back burst.	(core_connect): Set SO_LINGER option so that TCP RST is sent when	closing the socket.  This avoids the client melting down on	HP-UX 10.20 due to a large number of TCP connections in TIME_WAIT	state (HP-UX is broken as far as bind()/connect() is concerned when	there are many TCP control blocks).	(core_exit): Print maximum connect burst length.	* core.c (max_burst_len): New variable to keep track of longest	back-to-back burst generated (large bursts are usually a sign of	the client being overloaded).1998-02-13  David Mosberger  <davidm@hpl.hp.com>	* stat/basic.c (sess_fail): Print one unexpected error number per	execution, independent of DBG.1998-02-06  David Mosberger  <davidm@hpl.hp.com>	* core.c (do_send): Maintain sendq_tail & recvq_tail.	(core_send): Ditto.	(recv_done): Ditto.	* session.h (Session): New members SENDQ_TAIL and RECVQ_TAIL.	* core.c (set_active): Set watchdog timer to the minimum of the	timeout of the request being sent and that being received (if such	requests exist).	(do_send): Set c->timeout.	(core_connect): Ditto.	(core_send): Ditto.	* call.h: Replace (unused) WATCHDOG member with TIMEOUT.	* timer.c (timer_schedule): Handle negative delays gracefully.1998-01-28  David Mosberger  <davidm@hpl.hp.com>	* Version 0.2 released to SixFlags team.1998-01-26  David Mosberger  <davidm@hpl.hp.com>	* gen/call_seq.c (sess_closed): New function.	(init): Register sess_closed() so we notice when session closes	prematurely.1998-01-21  David Mosberger  <davidm@hpl.hp.com>	* httperf.c (main): Don't quit after printing version	information---it's useful to run a test and have this info as	well.1998-01-14  David Mosberger  <davidm@hpl.hp.com>	* stat/basic.c (dump): Add num_sock_reset to total error count.1998-01-12  David Mosberger  <davidm@hpl.hp.com>	* stat/basic.c (struct basic): New member num_sock_reset.	(sess_fail): Increment num_sock_reset for ECONNRESET.	(dump): Print num_sock_reset.	* core.c (do_recv): Call session_failure() when reading < 0 bytes.	* stat/basic.c (sess_fail): Print error number when getting an	unexpected errno and DBG > 0.1998-01-09  David Mosberger  <davidm@hpl.hp.com>	* httperf.c (main): Print only one newline (second newline is	printed by stat collectors).	* stat/basic.c (dump): Print session lifetime histogram first	(so it goes right after the rate output).1998-01-08  David Mosberger  <davidm@hpl.hp.com>	* core.c (port_get): Recode so port numbers are returned in	strictly increasing order (until a wraparound after 65535 occurs).	This avoids problems with NT 4.0 which disallows reusing the port	pair of a properly shut down TCP connection (which creates	problems when testing an NT server with clients running on HP-UX	or similar platforms).1998-01-07  David Mosberger  <davidm@hpl.hp.com>	* gen/sess_rate.c: Adapt to use rate.c.	* timer.c (timer_schedule): Adjust "delay" if realtime has grown	bigger than next_tick (meaning that "spoke" is behind).	* call.c (call_destroy): prev wasn't updated in the search loop.1998-01-06  David Mosberger  <davidm@hpl.hp.com>	* stat/basic.c (dump): Print minmum rate as zero if there are no	rate samples.1997-12-23  David Mosberger  <davidm@hpl.hp.com>	* stat/basic.c (struct basic): Add members num_reply_rates,	reply_rate_sum, reply_rate_sum2, reply_rate_min, and	reply_rate_max.	(interval_start, num_replies): New vars.	(sample_rate): New function to sample reply rate.	(init): Schedule rate sampler.	(dump): Print min, avg, max, and stddev of sampled reply rate.	* httperf.c: Add --client and --think-timeout options.1997-12-17  David Mosberger  <davidm@hpl.hp.com>	* http.c (parse_data): Return TRUE to indicate that all bytes	(of present chunk) have been received (instead of setting	state to S_REPLY_DONE).	* httperf.h (ALIGN): Fix macro (need AND with _complement_...).	* http.c (xfer_chunked): Fix typo: check for content_bytes >=	content_length (not vice versa).	* uri_wset.c (set_uri): Fix uri_len computation.	* sess_rate.c (destroyed): Fix typo: test for param.rate <= 0 (not	<0).

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -