Reputation: 347
Say your app gets hit with enough users to grind to a halt, does it fire up another instance? How do you plan to get around this in the future?
Ian
Upvotes: 30
Views: 5206
Reputation: 1555
Theoretically Meteor scales just fine, but if it really works for you in practise all depends on how you handle your data. This is an excellent post on scalability in Meteor: https://www.discovermeteor.com/blog/scaling-meteor-the-challenges-of-realtime-apps/
Upvotes: 1
Reputation: 1302
In general, Meteor can scale using by bundling and use your own infrastructure, like mongo, application server. Like @n1mmy said, when the application is bundled, you can specify a certain mongo end point from which you can scale the data storage. In addition, when the bundle is running, it is actually running on nodejs, which means you can scale your web application like nodejs apps. I think in both way can ease your problem if your application has too many users.
Upvotes: 1
Reputation: 856
I'm precisely not clear with your question. aren't asking about the meteor framework capability for scalability or meteor app hosting environment scalability. never mind, here it goes
As Meteor framework ecosystem grows, your question of scalability will be answered, currently you can invoke as many as small modules of code through Packages.
Meteor has something called meteor bundle
for more which eventually let deploy your application any where around the globe, then you can have your own infrastructure set-up to run your app (something like a network load balancer hosted NodeJS servers and scalable multiple MongoDB instance)
Upvotes: 1
Reputation: 2489
Not sure if you mean apps built with 'meteor bundle' or apps deployed on the free hosting with 'meteor deploy'.
Apps deployed to the hosted servers with 'meteor deploy' do not yet have any guarantees or SLAs about scaling. However, the servers can handle a fair bit of load. meteor.com is hosted on meteor deploy, and it survived the Meteor launch.
A server bundle generated with 'meteor bundle' is basically a single process app. It is up to you wire it up to multiple instances, or however you want to implement auto-scaling.
Upvotes: 17