Connection handling (multiple vs single requests per connection)

156 views
Skip to first unread message

Ciprian Dorin Craciun

unread,
Apr 24, 2011, 5:49:46 PM4/24/11
to bert...@googlegroups.com
Hello all!

I'm investigating the possibility to use BERT-RPC for controlling
an Erlang application, and after looking at the "reference"
implementation Ernie and at the specification it is unclear to me how
connection handling is done:
* the specification isn't clear that only one request / reply
should be handled per TCP connection;
* Ernie always closes the connection after handling one request /
reply pair;

Isn't this behaviour impacting performance? (I'm asserting the
case in which the same client has a lengthier dialog with the server.)

Thanks,
Ciprian.

P.S.: The BERT library "ecosystem" seems to be a little thin
especially in maintained libraries, and especially for other languages
than Ruby / Python. (For example there is no Java implementation, and
the Node.JS one seems to be broken (at least from the notice on the
repository). Even for Erlang there is only Ernie.) Am I missing some
important implementations?

Jared "Lucky" Kuolt

unread,
Apr 27, 2011, 11:44:46 AM4/27/11
to bert...@googlegroups.com
Ciprian,

The idea that one request/response per connection bothered me as well.
As you have mentioned this would severely impact performance. I wrote
bertlet (a python/eventlet server) and bertclient (a ruby client),
both of which persist connections. Because the protocol is
length-header delimited, I can also see the possibility for pipelining
like HTTP 1.1.

https://github.com/luckythetourist/bertlet
https://github.com/luckythetourist/bertclient

--
Lucky ☘ http://luckythetourist.com

Reply all
Reply to author
Forward
0 new messages