RE: Is Proton a lightweight alternative to Qpid?

2013-01-16 Thread Eagy, Taylor
Rafael and Ted,



Thanks for your help on this. I'm excited to see that proton is getting a 
Windows port since I wasn't able to build it in VS2012 successfully.



Thanks,

Taylor


From: Rafael Schloming [r...@alum.mit.edu]
Sent: Tuesday, January 15, 2013 8:13 PM
To: proton@qpid.apache.org
Subject: Re: Is Proton a lightweight alternative to Qpid?

If you run cmake this way you can build the minimal code needed for just
the proton library and its python bindings:

cmake -DCMAKE_INSTALL_PREFIX=/usr -DBUILD_PYTHON=ON -DBUILD_PHP=OFF
-DBUILD_PERL=OFF -DBUILD_RUBY=OFF path_to_src_tree

A quick test on my system shows that a make install based on the above
build works out to about 1.4MB. Stripping out header files and some package
config stuff would get you down to about 1.2MB if you want to go super
barebones.

--Rafael

On Tue, Jan 15, 2013 at 5:38 PM, Ted Ross tr...@redhat.com wrote:

 Taylor,

 You need the following files:

 proton.py  (from proton-c/bindings/python)
 cproton.py (from $BUILD/bindings/python)
 _cproton.so(from $BUILD/bindings/python)
 libqpid-proton.so  (from $BUILD)

 -Ted



 On 01/15/2013 03:35 PM, Eagy, Taylor wrote:

 Ted,



 Proton is more lightweight and the systems that it runs on won't have
 Java installed. While I would prefer a more Pythonic portable solution, as
 long as Proton-c builds within 5MB, then it should work. However, I'm
 getting a bunch of undefined reference messages from pythonPYTHON_wrap.c
 when trying to make install it. So if I just want to use the p2p messaging
 between Python processes, what are the minimum amount of files that I need
 to create a Python queue server to handle the queues between processes?
 (i.e. proton.py, cproton.py, etc)



 Thanks,

 Taylor





RE: Is Proton a lightweight alternative to Qpid?

2013-01-16 Thread Mary Hinton
For anyone interested in a Windows port of the qpid amqp 1.0, I have Visual
Studio 10 snapshots available on my github webpage.
 (Visual Studio port of proton and a qpid port loading proton)

I placed my Visual Studio port of the qpid project on my github website.
https://github.com/MaryDHinton/qpid/tree/qpidWinSnap

 You can download a zip file by selecting the ZIP button on the Webpage.

 To compile and run this code you will also need to download, compile, and
run the Snapshot code of the proton Windows port. 

It is located at:
https://github.com/MaryDHinton/qpid-proton/tree/protonWinSnap

Both projects are set up  for Visual Studio 10 and debug mode. I don't know
any reason why they wouldn't work for Visual Studio 12.

== Proton ===

 To compile and run the proton port code, all you should need to do is:

Select the zip button on the page above and extract the code.
Select the proton.sln file in the proton-c folder and open it in Visual
Studio 2010.

Compile the qpid-proton and proton projects.

Go to the Debug folder and run proton (the debug version is the only mode
set up, the release will have to be set up).

I set up an environment variable for the proton after building the proton
dll, then added this environment variable to the qpid project in the C/C++
properties page (Additional Include Directories).

Set the environment variable 

PROTON_INCLUDE --- to your environment. Mine is set to:
 
C:\proton\protonWinSnap\qpid-proton\proton-c\include;C:\proton\protonWinSnap
\qpid-proton\proton-c

I also have the path to proton executable set in my environment path

c:\qpid\qpid\proton\proton-c\Debug

After the proton dll and proton executable are compiled, you can run proton
in server and client mode.

Server mode:

Open up a dialog box and change to the proton path and run   
proton
Client mode:

Open up a second dialog box and change to the proton path and run   
proton -c 127.0.0.1

 You should be able to see messages passed between a proton client and
server.  

 QPID AMQP 1.0 ===

For QPID, I used Boost 1.51.0.

I have a solution file (qpid-cpp-Snap.sln) for the qpid port that includes
only the projects to compile, run, and test the qpid amqp 1.0 for Visual
Studio.

projects included:
amqp
amqpc
hello_world
qpid-client-test
qpidbroker
qpidclient
qpidcommon
qpidd
qpidmessaqing
qpidtypes
  
You may need to check the Visual Studio Properties for the 10 projects in
this solution and make sure the paths are correct on your pc.

I used the path C:\qpidWin to put the extracted files from the zip.

 After building both the proton Windows port and the QPID port for the
server and client, the amqp 1.0 can be loaded in the server with the
following command from the path where your dlls and executables are located.
The path setup in this solution is:
c:\qpidWin\Debug

 server
c:\qpidWin\qpidWinSnap\qpid\qpid\cpp\output\Debugqpidd
--load-module amqpd --auth no

clients 
set the environment variable
QPID_LOAD_MODULE to amqpcd  
hello_world client
hello_world

qpid-client-test client
qpid-client-test --verbose
response:
Opened connection.
Opened session.
Declared exchange.
Declared queue.
Bound queue to exchange.
Published message: abcdefghijklmnop...
Received the exepected message.
Closed session.
Closed connection.  

If you are using Norton's antivirus, you may have to disable checking for
the Suspicious.Cloud.7.F signature.
Original email on these snapshots was sent as:
Windows Snapshot of QPID that loads the  AMQP 1.0 module (proton windows
port)
on 12/18/2012 
to d...@qpid.apache.org
and 
Proton Port for Windows
on 11/14/2012
proton@qpid.apache.org
So both ports need to be rebased. I'm planning to do this soon,  since a new
release is out for proton
Thanks,
Mary Hinton

-Original Message-
From: Eagy, Taylor [mailto:te...@blackbirdtech.com] 
Sent: Wednesday, January 16, 2013 12:13 PM
To: