Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 37AD5200C68 for ; Wed, 3 May 2017 21:43:36 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 364F8160BB5; Wed, 3 May 2017 19:43:36 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 7BD2D160BA1 for ; Wed, 3 May 2017 21:43:35 +0200 (CEST) Received: (qmail 79816 invoked by uid 500); 3 May 2017 19:43:29 -0000 Mailing-List: contact users-help@qpid.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@qpid.apache.org Delivered-To: mailing list users@qpid.apache.org Received: (qmail 79805 invoked by uid 99); 3 May 2017 19:43:29 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 03 May 2017 19:43:29 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 10D011882FB for ; Wed, 3 May 2017 19:43:29 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -4.048 X-Spam-Level: X-Spam-Status: No, score=-4.048 tagged_above=-999 required=6.31 tests=[RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_PASS=-0.001, SPF_SOFTFAIL=0.972, URIBL_BLOCKED=0.001] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id voi-_mxOX71c for ; Wed, 3 May 2017 19:43:28 +0000 (UTC) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id E0CD95F36F for ; Wed, 3 May 2017 19:43:27 +0000 (UTC) Received: from smtp.corp.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.15]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 986CF79917; Wed, 3 May 2017 19:43:26 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 986CF79917 Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=apache.org Authentication-Results: ext-mx01.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=astitcher@apache.org DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 986CF79917 Received: from ovpn-120-141.rdu2.redhat.com (ovpn-120-141.rdu2.redhat.com [10.10.120.141]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 374F662923; Wed, 3 May 2017 19:43:26 +0000 (UTC) Message-ID: <1493840605.5473.6.camel@apache.org> Subject: Re: Alternatives to pn_messenger (QPID Proton C) From: Andrew Stitcher To: users@qpid.apache.org, fquinn.ni@gmail.com Date: Wed, 03 May 2017 15:43:25 -0400 In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.79 on 10.5.11.15 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Wed, 03 May 2017 19:43:26 +0000 (UTC) archived-at: Wed, 03 May 2017 19:43:36 -0000 On Wed, 2017-05-03 at 17:27 +0100, Robbie Gemmell wrote: > On 3 May 2017 at 08:55, Frank Quinn wrote: > > Hi Folks, > > > > I look after the OpenMAMA bridge for Qpid Proton C and we > > originally built > > our API based on the pn_messenger interface. However I see that > > interface > > is now marked for deprecation, so I'm looking for alternatives. I'd > > appreciate any feedback on my assessment of the options available > > which are > > listed below. > > > > When I look at the alternative options available in > > https://github.com/apache/qpid-proton/tree/master/examples/c, the > > options > > seem to be between: > > > > *Messenger:* Deprecated - so let's assume that's going away and not > > an > > option > > *Proactor: *Looks interesting, though no subscription level support > > and > > looks to be experimental > > *Reactor: *I think the proactor pattern looks like a better fit for > > us due > > to its asyncronous nature, but this looks to be more stable? (or at > > least > > not marked as experimental?) Again, light on subscription > > integration > > though. > > To emphasize Robbie's points: * We are actively working on the proactor as a replacement IO layer for reactor which will be deprecated in due course. * The messenger API is high level and not really comparable with the proactor/reactor APIs which are significantly lower level. * The closest API to the same level of abstraction is the C++ binding, however it does split apart the concept of network connection address from message address, which makes for a different "API feel". It sounds that in your case this might fit your requirements better. The C++ API is mostly stable currently, especially for client purposes. But we plan that when we release 0.18 the API will stabilize further and will shift on top of the proton proactor IO rather than the reactor IO. HTH Andrew --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org For additional commands, e-mail: users-help@qpid.apache.org