More Related Content What's hot (20)
マイクロにしすぎた結果がこれだよ! マイクロにしすぎた結果がこれだよ!
mosa siru
This document summarizes a microservices meetup hosted by @mosa_siru. Key points include:
1. @mosa_siru is an engineer at DeNA and CTO of Gunosy.
2. The meetup covered Gunosy's architecture with over 45 GitHub repositories, 30 stacks, 10 Go APIs, and 10 Python batch processes using AWS services like Kinesis, Lambda, SQS and API Gateway.
3. Challenges discussed were managing 30 microservices, ensuring API latency below 50ms across availability zones, and handling 10 requests per second with nginx load balancing across 20 servers.
オープンソースのAPIゲートウェイ Kong ご紹介 オープンソースのAPIゲートウェイ Kong ご紹介
briscola-tokyo
オープンソースのAPIゲートウェイソフトウェア「Kong」のご紹介スライドです。Kongはnginxをベースとした高性能・高可用性アーキテクチャを備えており、世界で200万以上ダウンロードされています。パブリック/オンプレミスのREST APIを一元管理し安全に実行することができるようになります。
データベース設計徹底指南 データベース設計徹底指南
Mikiya Okuno
DBエンジニアのための技術勉強会(第3回)で使用した資料です。主にリレーショナルモデルと正規化について解説しています。リレーショナルモデルの限界について正しく認識してこそ、リレーショナルモデルを理解したと言えると思います。
More from Drecom Co., Ltd. (20)
html5conf2018-sponsor-session html5conf2018-sponsor-session
Drecom Co., Ltd.
Drecom is sponsoring an HTML5 conference in 2018. They will give a 5 minute introduction about their company, which works on social and HTML5 games, game platforms, AR platforms, blockchain services, and building things on the web. Drecom loves coding, technology, and hacking. They want to give back to the tech community and sponsor events like this conference. They are also hiring and encourage people to enjoy both the conference and hacking.
Recently uploaded (9) 【修士論文】競輪における注目レース選定とLLMを用いたレース紹介記事生成に関する研究 【修士論文】競輪における注目レース選定とLLMを用いたレース紹介記事生成に関する研究
harmonylab
本研究では,競輪における意思決定支援の重要性と課題に焦点を当てている.
競輪では,出走表やオッズ情報,ライン情報などのレース前情報が膨大であり,
注目すべきレースや車券の選択肢が多岐にわたるため,意思決定が複雑である.
さらに,情報が段階的に公開される特性から,各タイミングで異なる意思決定
が求められる状況にある.特に初心者や新規ユーザーにとっては,どの情報を
基にレースや車券を選択すべきかがわかりにくいという課題がある.
これらの課題を解決するために,本研究ではレース選定を基軸としたアプロー
チを提案する.具体的には,Transformer を利用して各車券の的中する生起確
率を予測し,その予測結果や出走表公開時点での情報を活用して,注目度の高
いレースを効率的に選定する手法を構築した.次に,選定したレースに基づき,
大規模言語モデルを用いて,ユーザーが意思決定を容易に行えるような紹介記
事を自動生成した.生成された記事には,レース情報,ライン情報,予測結果
といった情報を含むことで,ユーザーが分かりやすく有用となるような情報提
供を目指している.
生成記事に対してアンケート調査を実施し,記事の品質や有効性について評
価を行った.車券代理販売業者の方々である競輪に詳しいユーザーを対象に,
意思決定支援としての有効性や使いやすさを検証し,改善点を抽出した.今後
は,この評価結果と提案された課題を基に,記事生成の精度向上やレース選定
ルールの改善を進め,より実用的かつ信頼性の高い意思決定支援システムの構
築を目指す.
IoT Devices Compliant with JC-STAR Using Linux as a Container OS IoT Devices Compliant with JC-STAR Using Linux as a Container OS
Tomohiro Saneyoshi
Security requirements for IoT devices are becoming more defined, as seen with the EU Cyber Resilience Act and Japan’s JC-STAR.
It's common for IoT devices to run Linux as their operating system. However, adopting general-purpose Linux distributions like Ubuntu or Debian, or Yocto-based Linux, presents certain difficulties. This article outlines those difficulties.
It also, it highlights the security benefits of using a Linux-based container OS and explains how to adopt it with JC-STAR, using the "Armadillo Base OS" as an example.
Feb.25.2025@JAWS-UG IoT
【修士論文】帝国議会および国会議事速記録における可能表現の長期的変遷に関する研究 【修士論文】帝国議会および国会議事速記録における可能表現の長期的変遷に関する研究
harmonylab
本研究は,帝国議会議事速記録という数億文字規模の会議録資料をテキスト
化し大規模コーパスとして活用するための基盤構築と,帝国議会および国会の
会議録を用いて可能表現の長期変遷の分析を目的とした.従来は OCR 処理や
人手での入力に依存していた作業を効率化するため,OCR 後の誤認識を効率よ
く修正することができるシステムを開発した.このシステムは日本語教科書を
はじめとする他の歴史的資料のテキスト化を目指している.さらに,帝国議会・
国会の会議録全体に対し,品詞のパターンマッチングを用いて可能表現を自動
抽出し,1890 年から 1970 年頃の約 80 年間にかけて可能表現が減少傾向にある
ことや,「出来る」を利用した表現が徐々に短い形に移行していることを明らか
にした.これにより,人手での精読では把握しにくかった大規模テキスト上で
の長期変遷を定量的に捉えることができた.
ソーシャルゲームスケールアウトの歴史1. ソーシャルゲーム
スケールアウトの歴史
gussan@Drecom Co., Ltd.
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
2. 提供
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
3. 自己紹介
• gussan
• ソーシャルゲーム事業本部 ※顔出しNG
• ICTグループ
• アーキテクト
• twitter: @gussan
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
4. 仕事内容
• ミドルウェア選定・導入等
• ライブラリ開発
• トラブルシュート
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
6. 2009/08 2010/01 2011/01 2012/01
なう
ドリコムが
ソーシャルゲームに参入して
2年半
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
7. 2009/08 2010/01 2011/01 2012/01
なう
累計ユーザ数
1000万+
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
8. 2009/08 2010/01 2011/01 2012/01
なう
2011/12実績
月間PV
50億+
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
9. 2009/08 2010/01 2011/01 2012/01
なう
なう
サーバ台数
400+
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
10. 2009/08 2010/01 2011/01 2012/01
なう
たった2年半
累計ユーザ数 サーバ台数
1000万+ 400+
月間PV
50億+
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
11. 2009/08 2010/01 2011/01 2012/01
なう
大規模トラフィック
に魅せられる毎日
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
12. 2009/08 2010/01 2011/01 2012/01
なう
サービス安定稼働
ユーザさんが喜ぶ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
13. 2009/08 2010/01 2011/01 2012/01
なう
まさにソーシャルゲーム
の手口・・・ッ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
14. 2009/08 2010/01 2011/01 2012/01
なう
どのように
サービスをスケールして
いったのか
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
15. ソーシャルゲーム
スケールアウトの歴史
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
16. 2009/08 2010/01 2011/01 2012/01
なう
ココ
2009年夏
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
17. 2009/08 2010/01 2011/01 2012/01
なう
ココ
mixiアプリオープン
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
18. 2009/08 2010/01 2011/01 2012/01
なう
ココ
合わせて我々も
アプリリリース
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
19. 2009/08 2010/01 2011/01 2012/01
なう
ココ
万全の準備をした
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
20. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 1.0
LB LB
Web Web • Apache 2.2
App App App App • mongrel
• Rails 2.3
M
• MySQL 5.0
S
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
21. 2009/08 2010/01 2011/01 2012/01
なう
ココ
大丈夫だ、問題ない
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
22. 2009/08 2010/01 2011/01 2012/01
なう
ココ
万全だと思っていた・・・
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
23. 2009/08 2010/01 2011/01 2012/01
なう
ココ
* + 巛 ヽ
〒 !
リリース 。
+ 。 | |
* + / /
∧_∧ / /
(´∀` / / +
,- f
/ ュヘ | *
〈_} ) |
/ ! +
./ ,ヘ |
ガタン ||| j / | | |||
――――――――――――
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
24. 2009/08 2010/01 2011/01 2012/01
なう
ココ
次の瞬間
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
25. 2009/08 2010/01 2011/01 2012/01
なう
ココ
繋がんなくね・・?
運営しっかりしろやゴルァ
サービス停止: :: :::: :: :: : :::::::::::::::::
. .: : : : : : :
. . : : : :: : : :: : ::: :: : :::: ::
繋がらないのでやめます
. . .... ..: : :: :: ::: :::::: :::::::::::
Λ_Λ . . . .: : : :::
そんなことより野球やろうぜ /:彡ミ゛ヽ;)ー、 . . .:
/ :::/:: ヽ、ヽ、 ::i . .:: :.
/ :::/;;: ヽ ヽ ::l . :.
 ̄ ̄ ̄(_,ノ  ̄ ̄ ̄ヽ、_ノ ̄ ̄
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
26. 2009/08 2010/01 2011/01 2012/01
なう
ココ
100,000 install/day
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
27. 2009/08 2010/01 2011/01 2012/01
なう
ココ
その後1週間眠れぬ
日々が続いた・・・
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
28. 2009/08 2010/01 2011/01 2012/01
なう
ココ
一体何が起きていた
のか
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
29. 2009/08 2010/01 2011/01 2012/01
なう
ココ
撃沈理由(1)
• 同じような種類のクエリが溜まる
• MyISAMのテーブルロック
• => InnoDB化することで解決
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
30. 2009/08 2010/01 2011/01 2012/01
なう
ココ
撃沈理由(2)
•slowクエリ出まくり
•=> 地道に潰す
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
31. 2009/08 2010/01 2011/01 2012/01
なう
ココ
撃沈理由(3)
•
特定のカラムへの更新が
多い
•=> Memcached,
TokyoTyrantへ逃す
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
32. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 1.1
LB LB • Apache 2.2
Web Web • mongrel
App App App App • Rails 2.3
• MySQL 5.0
Mem M TT
• Memcached
S
• TokyoTyrant
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
33. 2009/08 2010/01 2011/01 2012/01
なう
ココ
教訓
• 事前準備足りなかった
• 十分大きなデータを利用して負荷試験
を行うことができなかった
• => JMeterでの負荷試験をリリース手
順に追加
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
34. 2009/08 2010/01 2011/01 2012/01
なう
ココ
2009/冬
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
35. 2009/08 2010/01 2011/01 2012/01
なう
ココ
DBマスター負荷増
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
36. 2009/08 2010/01 2011/01 2012/01
なう
ココ
DBマスタ
• 更新量増
• コストの高い参照処理が足を引っ
張る
• ランキング
• 同一レベル帯のユーザ検索
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
37. 2009/08 2010/01 2011/01 2012/01
なう
ココ
コストの高い参照ク
エリをslaveへ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
38. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 1.2
LB LB • Apache 2.2
Web Web • mongrel
App App App App • Rails 2.3
• MySQL 5.0
Mem M TT
• Memcached
S
• TokyoTyrant
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
39. 2009/08 2010/01 2011/01 2012/01
なう
ココ
どちらかが死んだ時
にキャパオーバ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
40. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 1.3
LB LB • Apache 2.2
Web Web • mongrel
App App App App • Rails 2.3
• MySQL 5.0
Mem M TT
• Memcached
S
S • TokyoTyrant
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
41. 2009/08 2010/01 2011/01 2012/01
なう
ココ
結果
• masterの負荷下がった!
• slaveの負荷上がりすぎた・・
• クエリチューニングは引き続き
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
42. 2009/08 2010/01 2011/01 2012/01
なう
ココ
2010/夏
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
43. 2009/08 2010/01 2011/01 2012/01
なう
ココ
これまで騙し騙し
使ってきたMySQL
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
44. 2009/08 2010/01 2011/01 2012/01
なう
ココ
MySQLがピンチ
• 更新量増によるIO Wait増
• BufferPool溢れ
• CPU Usage増
• レプリケーション遅延
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
45. 2009/08 2010/01 2011/01 2012/01
なう
ココ
重いよー
運営やる気あんの?
すでにキャパシティ
は限界・・・
繋がらないのでやめます
そんなことより野球やろうぜ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
46. 2009/08 2010/01 2011/01 2012/01
なう
ココ
チューニングも
手を尽くした
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
47. 2009/08 2010/01 2011/01 2012/01
なう
ココ
よろしい、
ならば分散だ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
48. 2009/08 2010/01 2011/01 2012/01
なう
ココ
垂直か水平か
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
49. 2009/08 2010/01 2011/01 2012/01
なう
ココ
垂直分散
• テーブルごとに使用するDBを分ける
• Railsではmodel毎に接続を切り替える
• 実装は簡単
• 関連が切れてしまう
• plugin: data_fabric, octopus
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
50. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 2.0
LB LB • Apache 2.2
Web Web • mongrel
App App App App • Rails 2.3
• MySQL 5.0
Mem M1 M2
• Memcached
TT S S
S S • TokyoTyrant
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
51. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 2.1
LB LB • Apache 2.2
Web Web • mongrel
App App App App • Rails 2.3
• MySQL 5.0
Mem M1 M2 M3
• Memcached
TT S S S
S S S • TokyoTyrant
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
52. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 2.2
LB LB • Apache 2.2
Web Web • mongrel
App App App App • Rails 2.3
• MySQL 5.0
Mem M1 M2 M3 M4
• Memcached
TT S S S S
S S S S • TokyoTyrant
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
53. 2009/08 2010/01 2011/01 2012/01
なう
ココ
垂直分散の結果
• 5分割まで突入
• ある程度負荷は分散できた
• 運用コスト増
• メンテナンス大変
• 限界が見えてきた
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
54. 2009/08 2010/01 2011/01 2012/01
なう
ココ
2010/秋
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
55. 2009/08 2010/01 2011/01 2012/01
なう
ココ
比較的サービスが
安定している日々
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
56. 2009/08 2010/01 2011/01 2012/01
なう
ココ
突如
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
57. 2009/08 2010/01 2011/01 2012/01
なう
ココ
レスポンスが遅くなる
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
58. 2009/08 2010/01 2011/01 2012/01
なう
ココ
遅くなる原因
• サービス内部要因
• Datastoreが遅い
• 処理内容が大きい
• サービス外部要因
• 外部APIの応答が遅い
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
59. 2009/08 2010/01 2011/01 2012/01
なう
ココ
それResqueでできるよ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
60. 2009/08 2010/01 2011/01 2012/01
なう
ココ
非同期処理導入
• 時間のかかる処理をリクエスト処理と
分離
• Resque gem
• github内で使われている
• キューとしてRedisを使用
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
61. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 3.0
LB LB • Apache 2.2
Web Web • mongrel
App App App App • Rails 2.3
• Redis+Resque
Mem M1 M2 Redis
• MySQL 5.0
S S worker
S S • Memcached
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
62. 2009/08 2010/01 2011/01 2012/01
なう
ココ
Resque
• ヘビーな処理を後ろに回せるように
なった
• Redisの安定運用は意外と難しい
• クセやハマりどころを知っていれば。
• Resque workerは1job 1forkしている
のでそれなりにコスト高い
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
63. 2010/冬
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
64. 2009/08 2010/01 2011/01 2012/01
なう
ココ
フロントの構成を
刷新した
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
65. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 4.0
LB LB • Nginx 1.0.x
Web Web Web Web • Unicorn
App App App App
• Rails 3.0
• Redis+Resque
Mem M1 M2 Redis
• MySQL 5.1
S S worker
S S • Memcached
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
66. 2009/08 2010/01 2011/01 2012/01
なう
ココ
モダンな構成( ^ω^)
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
67. 2009/08 2010/01 2011/01 2012/01
なう
ココ
2011/夏
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
68. 2009/08 2010/01 2011/01 2012/01
なう
ココ
3度目の夏
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
69. 2009/08 2010/01 2011/01 2012/01
なう
ココ
ヒットアプリも
増えて迎えた夏
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
70. 2009/08 2010/01 2011/01 2012/01
なう
ココ
カードバトルシステムに
洗礼を受ける
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
71. 2009/08 2010/01 2011/01 2012/01
なう
ココ
カードバトルのPV
•農園系など
• 150 250PV/Day/User
•カードバトル
• 350 750PV/day/user
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
72. 2009/08 2010/01 2011/01 2012/01
なう
ココ
•150 250PV/Day/User
•350 750PV/day/user
( ゚д゚)
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
73. 2009/08 2010/01 2011/01 2012/01
なう
ココ
(つд )ゴシゴシ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
74. 2009/08 2010/01 2011/01 2012/01
なう
ココ
•150 250PV/Day/User
•350 750PV/day/user
( ゚д゚)三倍・・?
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
75. 2009/08 2010/01 2011/01 2012/01
なう
ココ
平均30ポチ/1h
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
76. 2009/08 2010/01 2011/01 2012/01
なう
ココ
_, ._
(;゚ Д゚)
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
77. 2009/08 2010/01 2011/01 2012/01
なう
ココ
ギリギリの運用
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
78. 2009/08 2010/01 2011/01 2012/01
なう
ココ
SQLチューニングが
続くある日
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
79. 2009/08 2010/01 2011/01 2012/01
なう
ココ
MySQLが悲鳴を上げ
る
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
80. 2009/08 2010/01 2011/01 2012/01
なう
ココ
あれ?つながらない
またかよー・・
数時間置きに
運営はやくしろ
数分アクセス
できなくなる事象
そんなことより野球やろうぜ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
81. 2009/08 2010/01 2011/01 2012/01
なう
ココ
通称
「ちゅどる」※社内呼称
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
82. 根本的解決には
数週間を要した
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
83. そしてあろうことか
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
84. あれーまたかーしょうがないなぁ
5分待つか・・・
ユーザさんが障害に
馴れてしまった・・
別なゲームやっとくか
そんなことより野球やろうぜ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
85. 2009/08 2010/01 2011/01 2012/01
なう
ココ
調査の結果
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
86. 2009/08 2010/01 2011/01 2012/01
なう
ココ
MySQLが
ある処理を行なっている
ことが判明した
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
87. 2009/08 2010/01 2011/01 2012/01
なう
ココ
full checkpointing
http://www.mysqlperformanceblog.com/
2008/11/13/adaptive-checkpointing/
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
88. 2009/08 2010/01 2011/01 2012/01
なう
ココ
full checkpointing
• 更新処理が数時間に一回、数分ほど更
新が完全に停止する
• 更新量に応じて発生
• データ領域へのflush処理
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
89. 2009/08 2010/01 2011/01 2012/01
なう
ココ
解決策を探していた
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
90. 2009/08 2010/01 2011/01 2012/01
なう
ココ
誰かが言った
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
91. 2009/08 2010/01 2011/01 2012/01
なう
ココ
「Percona使おうぜ」
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
92. 2009/08 2010/01 2011/01 2012/01
なう
ココ
Percona Server
• MySQLをベースにしている
• 特にInnoDB部分に多数のpatchが当
たっている
• flush処理の高速化、SSD最適化等
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
93. 2009/08 2010/01 2011/01 2012/01
なう
ココ
Percona Server
• innodb_flush_neighbor_pages = 0
• innodb_adaptive_checkpoint =
keep_avarage
• innodb_io_capacity = xxxx;
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
94. 2009/08 2010/01 2011/01 2012/01
なう
ココ
しかし
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
95. 2009/08 2010/01 2011/01 2012/01
なう
ココ
導入したとしても
先が見えない
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
96. 2009/08 2010/01 2011/01 2012/01
なう
ココ
IOは既に限界突破
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
97. 2009/08 2010/01 2011/01 2012/01
なう
ココ
また誰かが言った
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
98. 2009/08 2010/01 2011/01 2012/01
なう
ココ
「Fusion-io 使おう」
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
99. 2009/08 2010/01 2011/01 2012/01
なう
ココ
Fusion-io ioDrive
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
100. 2009/08 2010/01 2011/01 2012/01
なう
ココ
Fusion-io ioDrive
• 200,000+iops >> 600 iops(RAID10)
• レイテンシ低
• 弊社の検証でPercona Server5.5 +
ioDrive では、MySQL5.1+RAID10の
約5倍の性能(参照:更新=10:1)
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
101. 2009/08 2010/01 2011/01 2012/01
なう
ココ
version 5.0
LB LB • Nginx 1.x
Web Web Web Web • unicorn 4.1
App App App App
• Rails 3.0
• Percona Server
Mem M1 M2 Redis 5.5
S S worker • Memcached,
S S Redis...
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
102. 2009/08 2010/01 2011/01 2012/01
なう
ココ
Percona + ioDrive
• 問題は解決
• Fusion-ioは甘え
• キャパシティに余裕ができた
• なんとコストが下がった (5cluster =>
1 2cluster)
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
103. 2009/08 2010/01 2011/01 2012/01
なう
ココ
そして現在に至る
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
104. 未来への投資
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
105. スケーラブルで安定した
システムを作るため
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
106. 2009/08 なう
投資
•
稼働率の向上
•スケーラビリティの向上
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
107. 2009/08 なう
稼働率の向上
• シングルポイントを潰す
• 自動フェイルオーバー
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
108. シングルポイント
LB LB
Web Web Web Web
App App App App
Mem M1 M2 Redis
S S worker
S S
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
109. 2009/08 なう
CacheサーバのHA化
• Memcached
• マシンのメンテができない
• Replication
• kyototycoonのmemcached protocol
• dual master構成
• monit+keepalived
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
110. RedisサーバのHA化
• Redis
• replication
• monit+keepalived
• 多少のデータロストは諦める
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
111. 2009/08 なう
DBサーバのHA化
• Semi-Sync Replication(on
MySQL5.5)
• monit+keepalived
• スペアサーバが自動的にスレーブに
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
112. 現在の構成
LB LB
Web Web Web Web
App App App App
KT M1 M2 Redis Redis
KT S S worker worker
S S
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
113. 2009/08 なう
スケーラビリティ
• 水平分散
• MySQL Spiderを検討していたが、
更新性能、JOIN性能の部分で断念
• ActiveRecord Sharding pluginの検
討
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
114. 2009/08 なう
Turntable(仮)
• ActiveRecord Sharding plugin
• MySQL Spiderにインスパイアされた
• shardingはほぼ自動化されているた
め、本質的なコードに集中できる
• 他のpluginに比べ、コードの変更が少
ない
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
115. 2009/08 なう
Turntable(仮)は
本年度内に公開予定
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
116. ドリコムでは、
このような取り組みを
行なって
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
117. 想定しうるトラフィック
への対応を進めています
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
118. まとめ
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
119. 話したこと
• ソーシャルゲーム怖い
• ドリコムのサービススケーリングのこれ
まで
• ソーシャルゲーム怖い
• ドリコムのサービススケーリングの未来
• ソーシャルゲーム怖い
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
120. これからも引き続き
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
121. ユーザさんに
満足頂けるサービス
を提供
Copyright © Drecom Co., Ltd.
12年2月20日月曜日
123. Thank you
ドリコムでは、
大規模トラフィックが大好きな
仲間を募集しています
Copyright © Drecom Co., Ltd.
12年2月20日月曜日