From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 548E5BBA7 for ; Mon, 6 Feb 2006 19:36:02 +0100 (CET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id k16Ia1jT028956 for ; Mon, 6 Feb 2006 19:36:01 +0100 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id TAA03115 for ; Mon, 6 Feb 2006 19:36:01 +0100 (MET) Received: from ciao.gmane.org (main.gmane.org [80.91.229.2]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id k16Ia0qW026791 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=NO) for ; Mon, 6 Feb 2006 19:36:00 +0100 Received: from list by ciao.gmane.org with local (Exim 4.43) id 1F6BCh-0005UK-SN for caml-list@inria.fr; Mon, 06 Feb 2006 19:35:11 +0100 Received: from 0x535f962a.boanxx20.adsl-dhcp.tele.dk ([83.95.150.42]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 06 Feb 2006 19:35:11 +0100 Received: from spam by 0x535f962a.boanxx20.adsl-dhcp.tele.dk with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Mon, 06 Feb 2006 19:35:11 +0100 X-Injected-Via-Gmane: http://gmane.org/ To: caml-list@inria.fr From: Bardur Arantsson Subject: Re: async networking Date: Mon, 06 Feb 2006 19:34:35 +0100 Message-ID: References: <1139129530.15565.3.camel@localhost.localdomain> <1139160736.10812.3.camel@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: usenet@sea.gmane.org X-Gmane-NNTP-Posting-Host: 0x535f962a.boanxx20.adsl-dhcp.tele.dk User-Agent: Mail/News 1.5 (X11/20060112) In-Reply-To: <1139160736.10812.3.camel@localhost.localdomain> Sender: news X-Miltered: at nez-perce with ID 43E79711.001 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 43E79710.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; async:01 gerd:01 stolpmann:01 buffer:01 buffer:01 sdu:01 cheers:01 sdu:01 chocolate:98 wrote:01 string:02 commenting:03 programming:03 library:03 library:03 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.3 Gerd Stolpmann wrote: > Maybe you interested in my equeue library for multiplexing I/O. There is > now a lot of code using equeue (HTTP client, FTP client, RPC > implementation), so I think it is very stable. > > http://www.ocaml-programming.de/programming/equeue.html > If you want ease of use and all-round stability I can also recommend Gerd's Equeue. However, if you want very high-performance networking you'd be better off with something closer to the metal, i.e. something like a libevent wrapper combined with a memory-mapped ring buffer to avoid unnecessary copying and minimize the costs associated with string allocation and GC. I have developed a highly efficient ring buffer library (ocaml-rbuffer) which can be downloaded at http://www.imada.sdu.dk/~bardur/personal/45-programs/index.html Cheers, -- Bardur Arantsson - Sometimes I think Trent just needs a cup of hot chocolate and a blankie. Tori Amos commenting on Nine Inch Nails