{"action":"closed","issue":{"url":"https://api.github.com/repos/drenfr01/unionCapital/issues/267","labels_url":"https://api.github.com/repos/drenfr01/unionCapital/issues/267/labels{/name}","comments_url":"https://api.github.com/repos/drenfr01/unionCapital/issues/267/comments","events_url":"https://api.github.com/repos/drenfr01/unionCapital/issues/267/events","html_url":"https://github.com/drenfr01/unionCapital/issues/267","id":95973707,"number":267,"title":"Move databases from Modulus to Compose + general infrastructure","user":{"login":"drenfr01","id":508707,"avatar_url":"https://avatars.githubusercontent.com/u/508707?v=3","gravatar_id":"","url":"https://api.github.com/users/drenfr01","html_url":"https://github.com/drenfr01","followers_url":"https://api.github.com/users/drenfr01/followers","following_url":"https://api.github.com/users/drenfr01/following{/other_user}","gists_url":"https://api.github.com/users/drenfr01/gists{/gist_id}","starred_url":"https://api.github.com/users/drenfr01/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/drenfr01/subscriptions","organizations_url":"https://api.github.com/users/drenfr01/orgs","repos_url":"https://api.github.com/users/drenfr01/repos","events_url":"https://api.github.com/users/drenfr01/events{/privacy}","received_events_url":"https://api.github.com/users/drenfr01/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/drenfr01/unionCapital/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-07-20T03:01:54Z","updated_at":"2015-09-07T21:08:57Z","closed_at":"2015-09-07T21:08:57Z","body":"Modulus is beginning to make me nervous about their DB hosting for the following 4 reasons:\r\n\r\n1) They *still* haven't really answered my support ticket from 3 weeks ago, despite me asking for updates every week (\"we're working on it\" has been their only response). This means that we aren't being billed for storage (which is good...unless we have an expensive delayed bill coming...), but also have 0 metrics on how our database is performing. \r\n\r\n2) Modulus doesn't do daily backups. They have \"disaster recovery\" backups every 12 hours, but it's not clear we can use them. So right now before each deploy I manually do backups, but this has historically been ~1 week apart. \r\n\r\n3) Modulus doesn't do oplog tailing. This, according to both Kadira and Meteor (http://info.meteor.com/blog/david-glasser-on-scaling-meteor-with-the-mongodb-oplog) has huge performance benefits, ~2.5x - 10x. \r\n\r\nGiven all the following, here's what I propose our new infrastructure looks like:\r\n\r\n1) Move databases to Compose. This gives us daily backups for free (up to 7 rolling days), great metrics, and oplog tailing. The cost here is $18/GB, which is a bit pricey given that we have 4 GB. However, the vast majority (like 3.5+ GB) lives in images, which leads me too:\r\n\r\n2) Store images in Amazon S3 instead of in the DB. This *might* improve performance, but most importantly this makes storage super cheap so we can always keep images and pay like a crazy low rate per GB (I saw on Amazon's web site like $.00003 per GB or something...)\r\n\r\nBottom line: slight increase in price, probably on the order of $10 a month (although we might be able to decrease our cost by moving back down to 1 servo on Modulus, because I'm not sure if it's really helping performance...) Slight increase in complexity of our infrastructure, because we're now using 3 services. But...more confidence, better performance, and probably a more stable platform to scale. \r\n\r\n@TylerSheffels @drewproud @ballek @unioncapitalboston Thoughts?\r\n"}}