エンジニアブログです。Fargateで動作しています。今回の記事ではそのコスト最適化手法について解説したいと思います。インボイスではオーソドックスに費用の削減とタスク数の最適化という2つの方法でコスト最適化を行っています。Plansを活用した費用の削減Fargateは使った分だけ料金が請求されます(vCPU数×メモリサイズ×起動時間)。この料金体系はクラウドの最も優れた特性の一つで、事業がうまくいくかどうか分からなかったり、その負荷の量が読めないときには非常にありがたいです。Plansを活用することで、さらなる費用の削減を実現できます。東京リージョンでの削減額は1年全額前払いで22%削減、3年全額前払いで47%削減です(2021年7月18日時点)。削減額は減りますが毎月払いも可能です。料金1時間あたりの利用金額での契約なので、定常的に利用する分の利用料に合わせて契約するのが良いようです。インボイスでは多くの企業が休日となる土日など、タスク数が少ない時間の利用料に合わせて契約しています。Explorerを見るとちょうどいい購入金額を教えてくれるので、そちらも参考に決定しましょう。Spotを活用することでさらなる費用の削減を実現できます。SpotはAWSの余剰キャパシティを活用してタスクを実行することで、最大70%の割引を受けられます。Spotは余剰キャパシティで稼働しているため、AWSにキャパシティが必要になるとデフォルトで30秒、最大で2分前に警告が送信され、実行中のタスクにSIGTERMシグナルが送信され、アプリケーションが終了します。Spotの終了が通知されても安全にアプリケーションを終了できます。Spotで稼働するような構成にしています。このような設定はECSサービスのキャパシティプロバイダ戦略設定によって調整できます。Spotで起動するような構成を実現できます。ECSのドキュメントをご参照ください。Scalingは多くのサービスで利用されていると思うので詳細は省略しますが、サービスの負荷に応じてタスク数を自動的に増減することで負荷分散をコントロールするとともに、コスト最適化を実現するものです。Scalingを行っています。scalingという仕組みも併用しています。scalingにより最小タスク数を増加させるようにしています。最小タスク数を増やすとコストも増えますが、お客様にご不便をおかけしないよう可用性を高めるために実施しています。これまでコスト削減ではなくコスト最適化という言葉を使ってきたのにはこういう理由もあるのです。scalingによるタスク数の最適化を組み合わせたコスト最適化手法について解説しました。コストをうまくコントロールすることは、利益率を高め、ひいてはサービス再投資による顧客の満足につながるものです。基本的な取り組みではありますが、こういったことこそ大切にしていかねばなと思います。基本に忠実に、製品を磨き、顧客に向き合う。そんな仲間を募集しています。id:sadayoshi_tadaです。ポリシー設計について紹介します。Engineering部DevOpsチームに入社したid:itkqです。インフラを担当している高江です。読者になるこのブログについてはてなブログをはじめよう!layerxさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。