Most impressive features of Meteor to show in demos

The best reaction I got was an in-house demo to a group of LAMP stack developers. These guys glaze over at the mention of MongoDB, so I decided to start with the demo and use MySQL (numtel:mysql package).

At the time we were testing MySQL migration plans and had a MySQL server in one datacentre slaving off another in the same datacentre, slaving off another in a different datacentre.

Server 1 had a remote phpMyAdmin, and server 3 had my Meteor dev server connected via numtel:mysql with a browser to render the output:

+-----+   +-----+   +-----+
|MySQL|   |MySQL|   |MySQL|
| (1) |-->| (2) |-->|  (3) |
+-----+   +-----+   +-----+
    ^                  ^
    |                  |
    |              +------+
    |              |Meteor|
    |              |server|
    |              +------+
    |                  ^
 browser               |
(phpMyAdmin)        browser

Those of you who have used the numtel:mysql package will know that it connects as another MySQL slave in order to get the replication log data. So, essentially I had four MySQL servers in a line.

I then used phpMyAdmin to alter the timestamp on a row in server 1. The change propagated across two datacentres and the Internet (to my laptop), and Meteor rendered the change before phpMyAdmin had refreshed its page. Jaws dropped. When I was asked to see how it was done (23 lines of JS) I knew they were hooked. :smile:

8 Likes