Daily Note 2022-09-19

この記事は僕が Slack にメモした内容を日次で自動的に記事として投稿したものです。

2022-09-19 15:13:05

ASP.NET Core MVCチュートリアルを丁寧にやってみた①(プロジェクトの作成からビューの追加まで)

hirahira.blog

2022-09-19 15:14:13

ASP.NET Core を使って Web API を作成する

learn.microsoft.com

RDS と Aurora Serverless に関するメモ

RDS に関するメモ

RDS で使えるエンジンに関して

RDS では以下のエンジンを使用することができる。

Amazon Aurora

RDS で選択できるエンジンのうちの1つで、Amazon が独自に開発したもの。

Aurora は MySQLPostgreSQL に互換性がある。

Aurora のメリット

  • 通常の MySQL/PostgreSQL よりも Aurora MySQL/PostgreSQL の方が早い
  • クラスター管理ができる(リードレプリカのオートスケーリングが楽ちん)
  • バックトラック機能等 Aurora にしかい無い機能等が存在する

Aurora のデメリット

  • Aurora の方がちょっと高い
    • 例)東京リージョン
      • RDS MySQL db.t4g.medium: 0.101USD
      • RDS AUrora MySQL db.t4g.medium: 0.113USD
  • 最新の MySQL/PostgreSQL バージョンを使えない
  • 使える DB エンジンが MySQL/PostgreSQL に限定される

以上の理由が気にならなければ Aurora でないエンジンを使うメリットは現状存在しない。

Amazon Aurora Serverless に関するメモ

Aurora Serverless には現状 V1 と V2 が存在する。

Aurora Serverless V1 の特徴

  • 開始容量が 1 ACU
  • 使用されていない時は自動停止される (0 ACU になる)
  • 初回起動が遅い
  • マルチ AZ 機能が無い
  • スケーリングが遅い
  • 1 日または 1 週間に数回、数分間のみ使用されるアプリケーションにお勧め

Aurora Serverless V2 の特徴

  • 開始容量が 0.5 ACU
  • 自動停止機能が無い
  • マルチ AZ 機能が有る
  • スケーリングが早い
  • 突発的に予測不可能なアクティビティの増加が発生するアプリケーション等にお勧め

ACU (Aurora Capacity Unit) について

Aurora Serverless の容量は Aurora capacity unit (ACU) で測定されます。各 ACU は、約 2 ギビバイト (GiB) のメモリ、対応する CPU、およびネットワークを組み合わせたものです。

aws.amazon.com

つまり ACU が大きければ大きいほどパフォーマンスが上がる。

RDS Aurora インスタンスと同じパフォーマンスを出したい時は以下のような計算を行えば良い。

例えば、クラスターのワークロードが高い場合に db.r6g.4xlarge DB インスタンスクラスを使用するとします。その DB インスタンスクラスのメモリは 128 GiB です。したがって、ACU の最大設定を 64 に指定すると、ほぼ同じ容量にスケールアップできる Aurora Serverless v2 DB インスタンスを設定できます。これは、各 ACU が約 2 GiB のメモリに対応するためです。db.r6g.4xlarge DB インスタンスにワークロードを効果的に処理するのに十分な容量がないことがあり、DB インスタンスをよりスケールアップさせるために多少大きい値を指定することができます。

docs.aws.amazon.com

1 ACU あたり約 2 ギビバイト (GiB) のメモリが備わっているので、RDS Aurora インスタンスの db.r6g.4xlarge(128 GiB)と同等のパフォーマンスを Aurora Serverless で出す場合は 128 / 2 GiB = 64 ACU を設定すれば良い。

ACU の料金

  • 例)東京リージョン
    • Aurora Serverless v1
      • 0.10 USD/ACU 時間
    • Aurora Serverless v2
      • 0.20 USD/ACU 時間
      • 開始容量 0.5 ACU で1ヶ月(720時間)稼働すると 73 USD

※参考

RDS Aurora で一番小さいインスタンスサイズ db.t4g.medium (vCPU: 2, メモリ (GiB):4) を東京リージョンで1ヶ月稼働した場合 81.36 USD の課金が発生する。

db.t4g.medium と同等のパフォーマンスを Aurora Serverless V2 で出すためには、2 ACU 必要(1ヶ月で 292 USD のコストが発生)。

Daily Note 2022-09-18

この記事は僕が Slack にメモした内容を日次で自動的に記事として投稿したものです。

2022-09-18 21:19:43

Heroku無料枠廃止で路頭に迷う開発者に捧ぐ、次世代PaaS「Render.com」の使い方 - Qiita

qiita.com

Daily Note 2022-09-17

この記事は僕が Slack にメモした内容を日次で自動的に記事として投稿したものです。

2022-09-17 12:58:39

aws.amazon.com

aws.amazon.com

aws.amazon.com

aws.amazon.com

2022-09-17 13:37:12

t.co

2022-09-18 01:56:15

DenoでDiscordのBOTを作ってみた - discordeno - Qiita

qiita.com

2022-09-18 01:56:45

GitHub - discordeno/discordeno: Discord API library for Deno

github.com