Performance Tuning
Remarks#
It should be noted that Meteor is simply Javascript and Node.js. Yes, it’s a very specific implementation of those two technologies, and has it’s own unique ecosystem, and leverages isomorphic APIs and a JSON datastore to achieve some truly amazing results. But, at the end of the day, Meteor is a web technology, and it’s written in Javascript. So all of your typical javascript performance techniques still apply. Start there.
25 Javascript Performance Techniques
Performance Optimizations for High Speed Javascript
Optimizing JavaScript Code
Performance Tips for JavaScript in V8
10 Javascript Performance Boosting Tip
Write Efficient JavaScript
Improving the Performance of your Meteor JS projects
Designing and Deploying Production Ready Software
Remember, all the best practices of typical web architecture still apply. For an excellent overview on the subject, please refer to Michael Nygard’s excellent book Release It! Design and Deploy Production-Ready Software. Writing your app in Meteor doesn’t absolve you of auditing third party libraries, writing circuit breakers, wrapping calls in timeouts, monitoring your resource pools, and all the rest. If you want your application to perform well, you need to make sure you’re using stability patterns, and avoiding anti-patterns.
Stability Patterns
- Timeouts
- Circuit Breakers
- Bulkheads
- Handshaking
- Stability Anti-Patterns
Integration Points
- Third Party Libraries
- Scaling Effects
- Unbalanced Capabilities
- Capacity Anti-Patterns
Resource Pool Contention
- AJAX Overkill
- Overstaying Sessions
- Excessive White Space
- Data Eutropification
If these concepts are unfamiliar and don’t seem like second-nature to you, it means that you haven’t brought bigger production systems online. Buy a copy of the book. It will be time and money well spent.