Hacker News new | ask | show | jobs
by Everhusk 4251 days ago
It's definitely a win for hackathons and getting a MVP out there that needs real time features. I can't speak much for large scale projects since I haven't had the fortune of reaching that scale yet with meteor, but I'd imagine it will be ideal for that eventually simply by extrapolating the current growth and improvement trends of the framework.
4 comments

At last months devshop in SF a speaker discussed straining the system and reaching the limits of Meteor with just hundreds of simultaneous connections:

https://www.youtube.com/watch?v=cJbGNpmE7f0&t=8m30s

Hundreds isn't really exactly "webscale", but I'm sure they'll iron it out, or it could have just been the application that was at fault. It's one data point however on how meteor scales.

[I work at Meteor and contributed to the MongoDB realtime driver]

Scaling low-latency data synchronization is a challenge for scalability for sure! We are gradually building better and better drivers with persistence to MongoDB.

The scalability can vary greatly depending on your application's data schema, usage patterns and amount of writes.

If you watch the mentioned talk carefully, the speaker describes a collaboration tool with log replay with a lot of actions and running from a single box.

The "running from a single box" at the end seems like it could be the most important part of the equation. Would you agree? Or rather, would that be the recommended place to start optimizing if your app runs into scaling problems?
Here is a very fine blog posts series on scaling Meteor horizontally, please consider looking at it: https://meteorhacks.com/pro-meteor/
Interesting, thanks. In that first blog post it mentions that Meteor serves static files. Is that a requirement?

edit: posted too soon they talk about it here https://meteorhacks.com/does-meteor-scale.html

And you can use cloudflare or some other CDN very easily. See: https://meteorhacks.com/cloudflare-meets-meteor.html
No, it is not a requirement. Meteor also supports serving static files from a CDN.
I don't know how you could load balance meteor easily, but you could put your mongodb instance anywhere and pass in its location to meteor. This doubles your risk for downtime because of hardware failure though, your uptime is no longer as good as a system that depends on the uptime of a single machine.
I like this description; "a framework for hackathons and prototypes"
In terms of complexity, the software I'm developing in Meteor has a lot of moving parts (animation, physics, artificial intelligence, and hardware integrations) and Meteor has handled it all tremendously well. In terms of user scale, I haven't had much experience, due to the nature of the project. It has made our development team tremendously happy, and provided a tremendous amount of flexibility compared to other approaches we've tried in the past including Objective-C and Java.
What would concern me is if you ever reach a scale where you need to optimize in ways that Meteor can't support. But, that probably falls into the 'problems you want to have' bucket.