Re: Use FIFO in preference to TCP for redirectors.

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Wed, 22 Aug 2001 22:52:04 +0200

I prefer using UNIX domain sockets. These are available in both stream and
datagram forms, where pipes are only available as streams. Also, buffering
generally is better on UNIX domain sockets than pipes.

See the unix_sockets branch, which also includes some cleanups of how/when
different types of IPC channels are selected. Instead of having each and
every ipc user select the transport domain, it is selected globally what
domains to use for stream or datagram communicaton.

--
Henrik
Robert Collins wrote:
> Still feeling my way as to what needs group review :]. This is in
> response to the problem reported by Mike Kiernan with squid redirectors
> losing stdin during peak load.
>
> Objections?
>
> Rob
>
> Index: redirect.c
> ===================================================================
> RCS file: /server/cvs-server/squid/squid/src/redirect.c,v
> retrieving revision 1.88
> diff -u -p -r1.88 redirect.c
> --- redirect.c  2001/03/03 10:39:33     1.88
> +++ redirect.c  2001/08/22 09:13:07
> @@ -158,7 +158,12 @@ redirectInit(void)
>         redirectors = helperCreate("redirector");
>      redirectors->cmdline = Config.Program.redirect;
>      redirectors->n_to_start = Config.redirectChildren;
> +#if HAVE_POLL && defined(_SQUID_OSF_)
> +    /* pipes and poll() don't get along on DUNIX -DW */
>      redirectors->ipc_type = IPC_TCP_SOCKET;
> +#else
> +    redirectors->ipc_type = IPC_FIFO;
> +#endif
>      helperOpenServers(redirectors);
>      if (!init) {
>         cachemgrRegister("redirector",
Received on Wed Aug 22 2001 - 15:02:56 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:14:15 MST