What is Megaphone?

What is Megaphone?
The Megaphone project is about enhancing open source chat software. Specifically, the goal is to allow ejabberd to support 1,000,000 simultaneous users. See The Plan page for more details on how I plan to solve this problem. See the About this Blog page for more details on why I created this blog.

Monday, January 2, 2012

New Module on the Block

Previously...

  • Things did not work: I resolved to go to a more basic level
  • I identified several alternatives to pursue
  • I identified how to put a new module into the system.
So I tried adding the new module to the system.  This module was just a copy of ejabberd_http.  When I tried to login with pidgin it got an error.  Investigating with wireshark, it appears that I got a 404 from the new module.  

While not the outstanding success I might have wanted, it does show that the module is working --- since I had nothing registered with the new module as far as URLs that it was supposed to handle, and because it is set up to serve URLs, it make sense that when presented with a request that does not match anything it came back with a 404.

The next steps are therefore to:
  • Create a megaphone module that understands the megaphone protocol and register it for the port number.
  • Point ECM at the new port so both of them have something to talk to.
  • Have megaphone hand off processing to the HTTP module when it gets something.
  • Change the sockmod that is used for the HTTP module to use megaphone instead of gen_tcp
  • Define the methods that the HTTP module will expect the sockmod to have.

No comments:

Post a Comment