# \[ANN\] Ebb web server version 0.0.3

**URL:** <https://www.ruby-forum.com/t/ann-ebb-web-server-version-0-0-3/130894>\
**Category:** Rails\
**Created:** [March 4, 2008, 9:45am UTC](https://www.ruby-forum.com/t/ann-ebb-web-server-version-0-0-3/130894 "2008-03-04T09:45:54Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 4, 2008, 9:45am UTC](https://www.ruby-forum.com/t/ann-ebb-web-server-version-0-0-3/130894/1 "2008-03-04T09:45:54Z")

</div>

Ebb aims to be a small and fast web server, written in C, specifically  
for hosting web frameworks like Rails and Merb.

It is not meant to be a full featured web server like Lighttpd,  
Apache, or Nginx. Rather it should be used in multiplicity behind a  
load balancer and a front-end server. It is not meant to serve static  
files in production.

Because Ebb is written in C, other language bindings can be added to  
make it useful to Non-Ruby frameworks. For example, a Python WSGI  
interface is forthcoming.

Visit

[http://ebb.rubyforge.org/](http://ebb.rubyforge.org/)

for downloads and more information. Please note that Ebb depends on  
having Glib installed.

Release 0.0.3 includes many bug fixes that were encountered after the  
first release. Mostly related installation and the ebb\_rails  
executable.

If you have problems, please send me a bug report:)

ry

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 4, 2008, 2:55pm UTC](https://www.ruby-forum.com/t/ann-ebb-web-server-version-0-0-3/130894/2 "2008-03-04T14:55:08Z")

</div>

On Mar 4, 9:45 am, ry [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> If you have problems, please send me a bug report:)

I don’t know if it’s a bug, but I’ve found that Ebb uses much more  
memory than Mongrel or Thin.  
This is my application’s memory usage after 1000 requests (on my Mac,  
I’ve yet to test it on other systems):

Ebb: RSIZE=35M, VSIZE=258M (started at 255M right after launch)  
Thin: RSIZE=31M, VSIZE=47M  
Mongrel: RSIZE=33M, VSIZE=49M

what puzzles me is the abnormal VSIZE value for Ebb…

S.

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 4, 2008, 3:37pm UTC](https://www.ruby-forum.com/t/ann-ebb-web-server-version-0-0-3/130894/3 "2008-03-04T15:37:18Z")

</div>

Just a few clarifications to prevent any confusion as to what’s  
written on your website:

First: EventMachine is not a ruby binding to libevent. EM is a  
reactor-based network communication library. See it as Twisted Python  
for Ruby. EM doesn’t even use libev / libevent underneath because of  
cross-platform compatibility concerns.

Second: EventMachine is a Ruby extension written in C++ (and being  
ported over to C). There is a pure ruby version of it as well, but  
that’s for those who don’t want to deal with extensions and of course  
don’t need the speed of C++. I put this because the page seems to make  
the assumption that EM is written purely in Ruby.

Jason

On Tue, Mar 4, 2008 at 8:54 AM, Stefano C.

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 4, 2008, 4:01pm UTC](https://www.ruby-forum.com/t/ann-ebb-web-server-version-0-0-3/130894/4 "2008-03-04T16:01:35Z")

</div>

That’s correct! No, that would be not optimal. In ebb.c I’ve been  
playing with larger buffer-sizes and concurrent clients- apparently  
that wasn’t reset in the release!

#define EBB\_BUFFERSIZE (1024 \* (80 + 32) \* 2)  
#define EBB\_MAX\_CLIENTS 950

That would make EBB\_BUFFERSIZE \* EBB\_MAX\_CLIENTS = 217907200 bytes =  
207.8 megabytes.

Try something more reasonable for those values. E.G.

#define EBB\_BUFFERSIZE (1024 \* 120)  
#define EBB\_MAX\_CLIENTS 200

I will bring down these values in the next release.

Thanks,  
ry

On Mar 4, 2:54 pm, Stefano Cobianchi [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)

---

<div class="post-metadata">

**Author:** ![casper\_the\_ghost](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/c/58956e/32.png) [@casper\_the\_ghost](https://www.ruby-forum.com/u/casper_the_ghost)\
**Post date:** [March 4, 2008, 4:04pm UTC](https://www.ruby-forum.com/t/ann-ebb-web-server-version-0-0-3/130894/5 "2008-03-04T16:04:31Z")

</div>

Hi Jason,

Thank you for the correction. I’m not sure why I was under this  
impression - I’ll update the site.

ry
