はじめに
以前、札幌で開催されたserverless meetup sapporoでmomentoを触ったので、それ元に自身の知識を整理する記事です。
このような貴重な経験ができる機会を札幌で開催していただき、関係者のみなさまには感謝しかありません!
この記事では、Momento Cacheを取り上げます。
Momento Cache?
一言で書くと、フルマネージド型のサーバーレスキャッシュサービス。
セッション管理に利用したり、NoSQL型データベース、RDSのアクセラレータなどのパフォーマンス最適化に使用するサービスのようです。
料金は?
Momento料金体制は以下の通り。
無料枠(月間500万件まで無料)もあって、まず触ってみたい!って方から社内の小さいシステムとかでも十分無料で使えそうな大きな枠です。
Redis、Memcachedとかと違うんだっけ?
適しているシーンはそれぞれ違うものの、用途としては「キャッシュサービス」で似ています。
ただ、Momento Cacheはフルマネージドなサーバレスというところで、以下のようなメリットがあるかなと思います。
- インフラ管理不要
- サーバのセットアップ不要
- ゼロコンフィギュレーション
- バージョン管理不要
- クラスターや、フェールオーバ構成等が不要
- 従量課金制
- 使った分だけ課金される
なんと、無料でPrivateLinkも?
特に無料アカウントで対応できる旨の明記を見つけることができませんでしたが、AWS PrivateLinkにも対応していました。
検証してみたかったのですが、申し込み等が必要なので今回は断念。
以下に詳しい検証がされていました。
よし、触ってみよう!
ハンズオンでも触りましたが、もう一度気になったところを触っていきます。
まずは、APIキー発行
手順は以下にありますが、とっても簡単です。
任意の方法でアカウント作成後、鍵のアイコンのところから発行できます。
APIキーの種別は、なんでも出来るSuper User Key
と、特定の操作のみを許可するFine-Grained Access Key
がありました。
Fine-Grained Access Key
の場合、Cacheごとに権限を個別に設定していくことができるみたい。
CLI
インストール
以下からCLIをダウンロードしてきます。
(MACの場合、Linuxのapple
の名前がついているファイルです。)
あとは一例ですが、以下のようなコマンドで利用できるようにしました。
% mkdir -p ~/bin
% cp momento ~/bin/
% chmod +x ~/bin/momento
% echo 'export PATH="$HOME/bin:$PATH"' >> ~/.zshrc
% source ~/.zshrc
% moment -version
momento 0.46.0
設定
momento configure
でToken等の初期設定をします。
なお、Token=APIキーです。
% momento configure
Please paste your Momento auth token. (If you do not have an auth token, use `momento account` to generate one.)
Windows users: if CTRL-V does not work, try right-click or SHIFT-INSERT to paste.
Token [****]: hogehoge==
Default Cache [default-cache]:
Default Ttl Seconds [600]:
default-cache successfully created as the default with default TTL of 600s
キャッシュ操作
以下のような操作をしています。
直感的でわかりやすいですし、特にレイテンシを感じたりすることもありません。
-
demo-cache
という名前のキャッシュをつくる - キー
key1
に値hohoge
を登録(TTLは100秒) - キー
key1
の値をとってくる
% momento cache create demo-cache
% momento cache set key1 hogehoge --ttl 100 --cache demo-cache
% momento cache get key1 --cache demo-cache
% hogehoge
最後に。
今回はここまでにします。
次回、SDKをTypeScriptで触ってみる記事を書いてみます!