Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amazon ElastiCache〜運用を考えて〜
Search
daiki.mori
February 07, 2015
Technology
0
8
Amazon ElastiCache〜運用を考えて〜
JAWS-UG KANSAI特別編
「AWSを使い倒せ。AWSのフルマネージドサービス活用によるネイティブクラウドシステムへの誘い」
でAmazon ElastiCacheについてお話します。
daiki.mori
February 07, 2015
Tweet
Share
More Decks by daiki.mori
See All by daiki.mori
いい感じにグラフを表示、やっぱWebでやりたいね。それをAWSで実現!
daikimori
0
140
サーバーレスアーキテクチャを使って、小さく作って大きくする取り組み
daikimori
0
3.7k
AWS RDK 〜AWS ConfigのカスタムルールをLambdaで書くときに使うツールキット〜
daikimori
0
450
JAWS-UG Osaka ZERO-ETL/jawsug osaka zero-etl
daikimori
0
64
JAWS DAYS 2022/Osaka/プログラムは作ったら終わり︖︖ その後が⼤事なんだよ︕︕/20221008_X-Ray_LambdaPowertools
daikimori
0
130
データを受け取って、データを加工して、データを可視化する直前までのお話 / AWS DATA ETL
daikimori
0
170
[JAWS DAYS 2021] Amazon Connect and Serverless
daikimori
1
230
JAWS-UG Kansai Meetup(2020/11) Amazon Connectの今
daikimori
0
77
Playing in re:Invent
daikimori
0
130
Other Decks in Technology
See All in Technology
TODAY 看世界(?) 是我們在看扣啦!
line_developers_tw
PRO
0
770
Rubyで作る論理回路シミュレータの設計の話 - Kashiwa.rb #12
kozy4324
1
320
Cloud Native Scalability for Internal Developer Platforms
hhiroshell
2
490
Observability в PHP без боли. Олег Мифле, тимлид Altenar
lamodatech
0
150
原則から考える保守しやすいComposable関数設計
moriatsushi
3
480
從四件事帶你見識見識 事件驅動架構設計 (EDA)
line_developers_tw
PRO
0
650
DroidKnights 2025 - Jetpack XR 살펴보기: XR 개발은 어떻게 이루어지는가?
heesung6701
1
150
マルチテナント+マルチプロダクト SaaS への AI Agent の組み込み方
kworkdev
PRO
2
390
脅威をモデリングしてMCPのセキュリティ対策を考えよう
flatt_security
5
1.8k
自分を理解するAI時代の準備 〜マイプロフィールMCPの実装〜
edo_m18
0
110
Workflows から Agents へ ~ 生成 AI アプリの成長過程とアプローチ~
belongadmin
3
170
CI/CDとタスク共有で加速するVibe Coding
tnbe21
0
220
Featured
See All Featured
Facilitating Awesome Meetings
lara
54
6.4k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Adopting Sorbet at Scale
ufuk
77
9.4k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Music & Morning Musume
bryan
46
6.6k
Designing for humans not robots
tammielis
253
25k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.4k
A better future with KSS
kneath
239
17k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.3k
Transcript
Amazon ElastiCache ʙӡ༻Λߟ͑ͯʙ
森 ⼤樹 (もり だいき) 業務系エンジニア ⼤阪⽣まれ⼤阪育ちの浪速っ⼦ 今、AWSを利用したシステムの 開発と運用をやってます facebook : /areaz.daiki
twitter : @areaz_ slideshare: http:/ /www.slideshare.net/areazdaiki/ hobby:スノボ(アルペンボーダー) お酒(毎日コンビニで購⼊) →C3(Can Convinience Club)会長 Who am I ?
ハッシュタグ #jawsug #fullmanaged JAWS-UG KANSAI特別編 「AWSを使い倒せ。 AWSのフルマネージドサービス活用 によるネイティブクラウドシステム への誘い」
この裏で 東急ハンズ執⾏役員 & ハンズラボ代表 長⾕川 秀樹さん 「東急ハンズが実践する小売り業界のクラウドパターン」
Amazon ElastiCache
Amazon ElastiCache Memcached Redis
メモリ内キャッシュのデプロイ、運用、スケーリングを クラウド内で簡単に実⾏できるウェブサービスです。 このサービスは、低速のディスクベースのデータベースに 完全に依存せずに、⾼速の管理されたメモリ内のキャッシュ から情報を取得できるようにすることで、 ウェブアプリケーションのパフォーマンスを向上させます。
DBにアクセスしてると遅いから、 メモリキャッシュしてる情報を getでデータ取得して、⾼速返却。
データ取得 値を返す [メモリにデータキャッシュあり] DBから取得 [メモリにデータキャッシュなし] メモリに キャッシュ get(key)で キャッシュ検索 select⽂で検索
set(key, value)で キャッシュへ設定 メモリキャッシュを使った仕組み
Memcached Redis データは全てメモリ上に保存 GETやSET等のシンプルな操作に特化 LRU(Least Recently Used)順に古いデータを自動削除 基本的にデータをメモリに保存 データをハードディスク上に書き込むこと valueに⽂字列だけでなく、リスト/ハッシュも可能
コマンドで明示的に削除もしくは、timeoutで削除
主な用途 セッション管理 同じデータをよく使う システムパフォーマンス 向上
今日のテーマ ʙӡ༻Λߟ͑ͯʙ ◦稼働状況 / 負荷など 監視 ◦障害発⽣時のリカバリ
今日のテーマ ʙӡ༻Λߟ͑ͯʙ モニタリング 可用性 自動障害検出 復旧
今日のテーマ ʙӡ༻Λߟ͑ͯʙ モニタリング 可用性 自動障害検出 復旧
Cloud Watch モニタリング ホストレベルのメトリックス Memcachedのメトリックス Redisのメトリックス
Cloud Watch モニタリング ホストレベルのメトリックス CPU使用率 ホストで使用可能な空きメモリの量 ネットワークから読み書きしたバイト数 AWS Documentation :
http:/ /amzn.to/1EgUC10
Cloud Watch モニタリング Memcachedのメトリックス AWS Documentation : http:/ /amzn.to/1EgTJFL get
/ set / Hit した数 現時点のキャッシュ数 / 接続数 期限切れ等で削除した項目数
Cloud Watch モニタリング Redisのメトリックス maxmemory の制限のため排除されたキーの数 期間内にサーバーによって受け⼊れられた接続の総数 Redis によって割り当てられた総バイト数 AWS
Documentation : http:/ /amzn.to/1EhcvNp
Cloud Watch モニタリング iOS nodeJS Ruby AWS SDK / CLIを利用
メトリックスを取得 メトリックス情報を渡す Webで確認 メールで通知
モニタリング 可視化
今日のテーマ ʙӡ༻Λߟ͑ͯʙ モニタリング 可用性 自動障害検出 復旧
Multi - AZ Availability Zone - b Availability Zone -
a
Cluster
Multi - AZ & Cluster Availability Zone - a Availability
Zone - b
Availability Zone - a Availability Zone - b Multi -
AZ & Cluster Master Master Read Read Read Read Read Read Read Read Read Master Nodeで障害発⽣
ElastiCache Redis Multi-AZ Availability Zone - a Availability Zone -
b Master Master Read Read Read Read Read Read Read Read 自動フェイルオーバー(Redis) Masterに 昇格
今日のテーマ ʙӡ༻Λߟ͑ͯʙ モニタリング 可用性 自動障害検出 復旧
Auto Discovery (Memcached) Cacheノード全てに アクセス Cache Cluster
Con fi guration Endpoint Auto Discovery (Memcached) 全Endpointを 自動取得/設定/接続する Cache
Cluster Auto Discovery Client (Java / PHP / .NET)
今日のテーマ ʙӡ༻Λߟ͑ͯʙ モニタリング 可用性 自動障害検出 復旧
Backup / Restore (Redis) 復旧 定期的なバックアップ ⼿動バックアップ リストア Backup Restore
AWS Management Console AWS CLI
今日のテーマ ʙӡ༻Λߟ͑ͯʙ モニタリング 可用性 自動障害検出 復旧
運用として iOS nodeJS Ruby AWS SDK / CLIを利用 運用監視
運用例 これ以上、何も思いつきません。
まとめ 可用性 耐障害性 パフォーマンス向上
まとめ 冗長化はコストがかかる [CacheNodeType] Cost / h ($) Cost / m
($) Cost / m (¥) cache.t2.micro $0.026 $18.7 ¥2,247 cache.t2.small $0.052 $37 .4 ¥4,493 cache.t2.medium $0.104 $74.9 ¥8,986 cache.m3.medium $0.120 $86.4 ¥10,368 cache.m3.large $0.240 $172.8 ¥20,736 cache.m3.xlarge $0.485 $349.2 ¥41,904 cache.m3.2xlarge $0.965 $694.8 ¥83,376 cache.r3.large $0.273 $196.6 ¥23,588 cache.r3.xlarge $0.546 $393.1 ¥47,175 cache.r3.2xlarge $1.092 $786.2 ¥94,349 cache.r3.4xlarge $2.184 $1,572.5 ¥188,698 cache.r3.8xlarge $4.368 $3,145.0 ¥377,396 表1. [東京リージョン] オンデマンドキャッシュノードの料⾦
まとめ Small Start Small Success New Challenge
なんとなく 理解できましたか?
教えてもらうより、 まずは使ってみよう!!
新たな世界へ!!
次はあなたがスピーカー よ。
ご清聴 有り難う御座いまし た。