Let's talk about SCALE

Hi friends, I wanted to know about Meteor’s technical scalability.

Hosting

I’m hosting on Meteor Galaxy, which seems like it’s totally built for CPU, RAM 1 click speed boosts. Right?

I’ve also got cloudinary and amazon s3 for image and file storage, so, scale isn’t a problem there. Just pay more.

Database

So, I ended up going with ONE collection, it makes things easy for me. It’s like having data-object-orientation. So I ended up with one collection.

It’s like Wordpress, you have one giant MySQL table called posts. It houses potentially millions of records.

Scenario

I have 250,000 users on my Meteor app.

My collection has 3,200,000 entries.

A user searches for their friend, Chuck. The Meteor server then does a find Meteor.Users.Find({ first_name:“Chuck” })

One would assume tens of thousands of these searches at the same time.

This is why Meteor was built, right?

I know on PHP and MySQL my organization pays something like $2,000 for hosting. We get about 16 million hits a month. It’s quite affordable (so I’m told lol). I can only imagine Meteor will be in a similar position.

But in my opinion so far with Meteor, is that it’s MORE efficient than Wordpress and it’s backend system. Once the resources download, there are less CPU calls to serve resources, especially if they’re from a database?

Now Meteor’s connection be soley used for database collection subscriptions, at a reduced overhead.

Am I in the right direction?

I doubt Meteor (Node 4) is faster than PHP7.

For what you need (a simple search), I’d go php and mongodb, and use XHR (Ajax) to only fetch the data you need.

If you have more and more complex things to do, except a simple search, then Meteor comes in very handy, but the cost of keeping active connections may be to high if your app is not built for that.

Interesting solution to searches!

It’s possible to set up the Ajax call using Meteor and a JsonRoutes endpoint, or via a Meteor method (basically an RPC connection). There won’t be the memory overhead of the publication/subscription, and Meteor will perform as fast as the underlying Node implementation. Add in the efficiencies of using a single language and isomorphic APIs, and the cost of implementation and maintenance will be lower with Node than PHP.