2 mimemoがどうやって動いているか #mimemo #dev #heroku みんなに公開
mimemo - 10mado | StackShare にまとめてある通り。
開発ツールとか
- 開発言語: Node.js(4系)
- 5系ではなくLTSなほうを
- フレームワーク: Express
- テンプレートエンジン: Nunjucks
- Herokuの構成管理: Terraform
- add-onについてはherokuコマンドで管理している
- 理由はadd-onのプラン変更をterraformでスムーズに行えないケースがあるため
- なので使っている一番の理由はconfig、つまり環境変数の管理用
- remoteとしてAmazon S3を利用している
- フロントエンド開発タスクランナー: gulp.js
- Markdownパーサー: markdown-it
サーバーとかインフラ面
- サーバー: Heroku
- 1 Dyno
- データベース: Heroku Postgres(Heroku add-on)
- セッションストレージ&時限ストレージ: Redis Cloud(Heroku add-on)
- Heroku Redisを使っていないのは無料の範囲で使える容量に差があるため
- 課金・決済: PAY.JP
- npmのpayjpを初期から利用させていただいてる
- メール送信: SendGrid
- 他のサービス・案件でも利用しているのでHeroku add-onとしてではない利用
- 画像のストレージおよび配信: Amazon S3
- 東京リージョン
- 画像をメモに添付する際はS3にダイレクトアップロードしている
- 定期実行: Heroku Scheduler(Heroku add-on)
- DNS: DNSimple
- HerokuでNaked domainを扱うため
- ログの収集と管理: Papertrail(Heroku add-on)
- エラーとかHeroku SchedulerのログをSlackに通知するようにしている
- モニタリング: Librato(Heroku add-on)
- お手軽
- 外形監視: Uptime Robot
- ページのレスポンス監視ができる
コメント(0)