オーソドックスな三層構造だけれどもtornado-web + mongodbのようにちょこちょこ珍しい構成も挟んでいるアーキテクチャ
アーキテクチャの工夫ポイント
アーキテクチャ選択の背景や意図
先行自社サービスがオンプレミスからVPS、AWS/EC2と変遷を辿っており、元々はEC2単体にロードバランス用Nginx、用途別のpython/tornado
アプリ、mongodbを内包した運用でした。
サービス伸長や要求拡大、運用コスト増大にあわせてマネージドなDocumentDBに変更したり、S3をファイルのストレージに留めずアップロード/ダウンロードのインターフェースとして活用したり、Nginxとアプリを別インスタンスに切り離してきました。
なかなか利益が出ない中でコストとのバランスに苦心しつつ、サービス信頼性低下や開発集中を阻害するような急激なインフラ構成の変更は避けながら、サービスのネックになる箇所を少しずつ少しずつ改善を重ねています。
現在の課題と今後の改善予定
運用を重ねるにつれて大容量/多数ファイルのダウンロードにはDocumentDB/GridFSのチャンク読出&連結がネックになることが分かってきたので、S3をより活用する構成への置き換えを考えています。
また、サービス利用がビジネス時間帯に偏っているので集中時間帯のスケールアップによるアクセス緩和と閑散時間帯のスケールダウンによるコスト削減を自律的にできる構成へ変更し利便性とコストの両立もはかっていきたいです。
◆執筆:飯伏政樹
アーキテクチャを構成するツール
会社情報

株式会社現場サポート
従業員規模 101名〜300名
エンジニア組織規模 11名〜50名
全国の建設業法人向けに自社開発のクラウドサービス「現場クラウド」を提供するITソリューション企業です。企画、開発、販売、サポートを一貫して行い、建設業の働き方改革と業務効率化をSaaSで実現しています。 チームの生産性向上には、相互理解、相互信頼、相互作用が不可欠です。私たちの理念「チームを活かす、だれもが活きる」に基づき、私たちの社内はもちろん、お客様の相互理解を事業を通して促進していきます。