7/30/2019 Meteor & Mongodb: Supercharge Your App
1/16
Meteor & Mongo, a Case StudyPresented by: David Wihl
7/30/2019 Meteor & Mongodb: Supercharge Your App
2/16
What is Meteor?
a 14 month old very ambitious JavaScript
framework
Include client and server side
Uses Mongo as default / only persistence
7/30/2019 Meteor & Mongodb: Supercharge Your App
3/16
Meteor Highlights
Reactivity
Super easy data sync
Client and server consistency Hot Code Pushes
Smart packages / NPM happiness
7/30/2019 Meteor & Mongodb: Supercharge Your App
4/16
Gander
Next-gen mobile email triage client
Hoped to use HTML5 to be multiplatform
Ref: http://www.emailmonday.com/mobile-email-usage-statistics
7/30/2019 Meteor & Mongodb: Supercharge Your App
5/16
GANDER DEMO
7/30/2019 Meteor & Mongodb: Supercharge Your App
6/16
Our Experience with Meteor
Started as UX prototype only in Sept
After security added in Oct, added real users
By no means experts at Mongo Pushing platform pretty hard
7/30/2019 Meteor & Mongodb: Supercharge Your App
7/16
Gander Architecture
7/30/2019 Meteor & Mongodb: Supercharge Your App
8/16
We Mongo
Centerpiece of our app
Myriad of hosting and on prem options
Currently using MongoHQ + EC2
Changed schema numerous times
Good for semi-structured data like email
7/30/2019 Meteor & Mongodb: Supercharge Your App
9/16
Goodness of Meteor
Easy to prototype
Symmetric on client and server (minimongo)
Nice pub/sub model, DDP Great bunch of guys, moving quickly
Easy deploy, wrapped Mongo
All open source
7/30/2019 Meteor & Mongodb: Supercharge Your App
10/16
Not so Goodness
Work in progress: 0.6.3 < 1.0
Performance
cf. findOne
Missing Mongo features, e.g Replica set
https://github.com/meteor/meteor/blob/master/packages/mongo-livedata/mongo_driver.jshttps://github.com/meteor/meteor/blob/master/packages/mongo-livedata/mongo_driver.js7/30/2019 Meteor & Mongodb: Supercharge Your App
11/16
Here Be Dragons
Doesnt use Mongo security model
Uses Fibers to wrap async node calls
Can still access Mongo directly
Young MVC Design Patterns
Need to host Mongo elsewhere than
meteor.com for direct access
7/30/2019 Meteor & Mongodb: Supercharge Your App
12/16
Aggregation Example
7/30/2019 Meteor & Mongodb: Supercharge Your App
13/16
Meteor Corp Biz Model
Eventually enter the hosting biz via Galaxy
How will that relate to Mongos advanced
options and current hosting choices?
What about on-prem?
7/30/2019 Meteor & Mongodb: Supercharge Your App
14/16
Learn More
www.meteor.com
http://www.discovermeteor.com/
http://www.ripariandata.com/blog/meteor-resources
SO, Google Groups (meteor-core, meteor-talk), Google+
http://www.discovermeteor.com/http://www.ripariandata.com/blog/meteor-resourceshttp://gplus.meteor.com/http://gplus.meteor.com/http://www.ripariandata.com/blog/meteor-resourceshttp://www.ripariandata.com/blog/meteor-resourceshttp://www.ripariandata.com/blog/meteor-resourceshttp://www.discovermeteor.com/7/30/2019 Meteor & Mongodb: Supercharge Your App
15/16
Questions for the Audience
Should we store attachments in S3 or GridFS?
What gotchas exist in a REST front end to
Mongo? Node.js or Rails?
Anyone used Mongo 2.4 full text search yet?
7/30/2019 Meteor & Mongodb: Supercharge Your App
16/16
Conclusions
In our opinion, Meteor is the best JS
framework out there
Symmetric data is super useful
Its a work-in-progress with great potential
Worth trying some prototype apps
Top Related