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.

Wednesday, April 4, 2012

Communicating

Previously...
  • I changed the format exchanged by ECM and megaphone.
  • I was able to send and receive messages.
  • I changed the pass-through from single to multi-threaded.

I found and resolved the problem that was preventing the system from working: in this case it was prepending the last character from the previous message to the front of the next message.  After that change everything magically worked.

IT ACTUALLY WORKED!

I was able to send messages without waiting for an incoming message, I could connect several times through the same port.  It was beautiful.

The actual code for doing this is depressingly small.  I attribute this to
  1. My incredible programming skill
  2. (mostly) The task wasn't that complex
A lot of time got used up trying to understand what was going on in ejabberd and becoming more familiar with erlang and nodejs.

At any rate...

IT ACTUALLY WORKED!

(muhahahahaha!)

Next time: some interesting observations on active vs. passive TCP modes in erlang.


No comments:

Post a Comment