SlideShare a Scribd company logo
1 of 75
Download to read offline
RDB脳でCassandra/MSAを始めた僕達が、
分散Drivenなトランザクション管理に
たどり着くまで
Kota Futami
AC Div. Expense Dept.
Works Applications CO., LTD
Cassandra Summit 2017
ざっくりどんなストーリー?
Season 1:不整合問題をロールバックで解決するまで
1. Cassandra使って、Monolithicなアプリ
2. (途中から) MSAだーーー!
3. MSAまたぐところで、データの不整合
4. ひとまずRollback処理を書いて回避(ここがRDB脳)
Season 2: 分散Drivenへ
1. Rollbackのデメリットが多すぎる、根本解決しよう
2. Rollfoward, Choreographyの方針で、再設計
3. 1サービスで実装&検証 ←今ここ
4. 別サービスに展開
コンテンツ紹介
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
聞くメリット1
プロダクション開発の最前線で
起きている生々しい話が聞ける
聞くメリット2
実構成に限りなく同じ内容で説明
→「うちはもっと複雑だから」が起きにくい
ゆえに後半は細かい話で眠くなるかも
「概要だけ知れればいい」という方は
前半のQAで帰ることをおすすめします
1. 文脈の共有
Who am I?
二見 広太
株式会社ワークスアプリケーションズ
AC Div. Expense Dept.
ソフトウェアエンジニア / DBアーキテクト
2015年からビジネスアプリケーション「 HUE」の経費精算アプリの開発に参加、フロントからサーバーサイドまで手
掛ける。
RDBからの移行に苦労する人が多いなか、特に詳しくもないのに「 Cassandra Meister」を自称し始める。
徐々に知識をつけ、レビューや勉強会開催などを通じ、データモデリングの品質向上に努める。
Cassandra Summit プロフィールより
HUE Expense: どんなプロダクト?
BtoB BtoC CtoC
HUE Expense: どんなプロダクト?
freee
楽楽精算
concur
フルラインナップ
経費精算専用
チームスピリット
Workday
会計,人事,SCM...
大企業向け中小企業向け
新製品
- 1300社以上での実績
- 無償バージョンアップ
- Consumerアプリと同じUX
- 圧倒的な速度
技術が大きく変わった
- Monolithic
- Client: Delphi, WEB
- Server: Java
- MW: RDBMS, Tomcat
- オンプレ
- MSA
- Client: WEB
- Server: Java
- MW: Cassandra, Kafka, Elasticsearch,
Redis….
- SaaS
- Other: OCR, 自然言語処理, 機械学習...
もとからDB寄りではない
Base
Technolog
y
Product
- 技術選定
- フレームワーク実装
- アーキテクチャ設計
- etc.
- AC
- HR
- SCM
- EC
- etc.
基本この辺の人間
ごりごりDBな人はこっち
Fullstack
Front side
Server side
CI
UIデザイン
設計
実装 etc.
×
余談:
Cassandra はキャリアの面で、
投資効率のいいトピックだったなー、
という話
最初は「なんかCassandraとか詳しくなっとけばお
得かも」くらいなノリで、
Cassanra Meisterってアダ名もらう
知識のキャッチアップに使った時間は、
大して多くない
の割には、けっこうデカイ顔できるようになった
データベース以外にも、
● 他の人があんまり興味持っていない
● けど重要
というトピックあるはず
そういうのを探して、
「◯◯大臣」とか自称してみるといいよ
2. 前半: メインストーリー
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
最初期はMonolithic (2015年あたりまで)
ひとつのAP Server
Expense
Talent
SearchTimeline
Cassandra
ESS
(途中から) MSAにするぞーーー!
Expense Service A
Service B
Cassandra
Cassandra
Cassandra
2016年春あたり
Expenseがそれを始めた歴史的 MR
http://product-ci/company/hue-ac-expense/commit/c15dac05a5d8e58b311b1211952e49a44166d00d
「出張旅費精算」って・・・
出張時に
立替えた領収書をまとめ
て提出
会社からお金を返しても
らう
出張旅費精算書を1枚提出したとき
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
POST
単純に呼ぶだけだと
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
Timeout
データ無
し
エラーが起きると、申請したのに・・
- 支払い予定日が決まらない
- 出張者にお金が返ってこない
- 仕訳が立たない
- 決算の数字が正しくない
会計システムとして
致命的な不具合
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
最低限
不整合が起きないようにしよう
エラーが起きたら
Rollbackしよう
(これがRDB脳・・)
Rollbackを実装して止血
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
DELETE
Timeout
データ無
し
Rollback
DELETE 削除
削除
これでめでたしめでたし?
NO
Rollback実装のデメリット
1. 関わるmicroserviceが増えるほど、速度が遅くなる、可用性が下
がる
2. Rollbackの質は、各プロダクトの開発者の腕任せ
3. 不整合が起きるパターンが引き続き残り、手動リカバリが必要
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
基本的なアイデア
経費申請書のデータがDBに入ったら、
自動仕訳や支払い予定って、
ちょっと経った後でインサートされてもいいじゃん
Rollback から Roll-forward へ
非同期でPOST + リトライ
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
全部非同期
でPOST
クライアントには
すぐ成功で返す
これでOK?
NO
非同期でPOST + リトライ のデメリット
1. 成功するまでスレッドを専有し続ける
2. Expenseのサーバー落ちたら復旧できない
直接HTTPで呼ぶことに限界
orchestration with point-to-point から
Choreography へ
Source: Introduction into Microservices by Oliver Wolf
https://specify.io/concepts/microservices#choreography
Kafkaを間にはさむ
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
PRODUCE
CONSUME
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
3. 後半: もっと細かい話
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
3.1.1 成功パターン
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
3 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
4 Insert
5 「申請成功したぜ」
1 Consume
3 Produce
4 Consume
5 INSERT
支払予定も仕訳と同様
なので省略
2 SELECT
3.1.2 呼び先のAPがダウン
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
3 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
4 Insert
5 「申請成功したぜ」
1 Consume
3 Produce
4 Consume
5 INSERT
復旧したタイミングで
Consumeされる
2 SELECT
この期間ダウン
3.1.3 Kafkaがダウン
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
3 「システムエラーだよ・・」
Error
3.1.4 二つ目のProduce時に
Kafkaがダウン
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
3 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
4 「システムエラーだよ・・」
1 Consume
精算書データがないので、
仕訳データを作りに行かない
2 SELECT
Error
No
data
3.1.5 申請書データの
INSERTが遅延
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
3 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
4 Insert
5 「申請成功したぜ」
1 Consume
3 Produce
4 Consume
5 INSERT
2 SELECT
No
data
成功するまでリトライ
→ ということは3.1.4のパターン
でもリトライが発生する
リトライに関する補足
1. 当然有限回数しかリトライしない
2. リトライ中にAPが落ちた場合、MessageをCommitしていないので
復旧後再実行される
3. 有限回数内ですべてエラーになった場合は別途リカバリが必
要
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
リトライがすべて失敗した場合
- リカバリバッチが必要
- 直近の申請データをつってきて、突き合わせ?
- ここは現在設計中
2重Consume問題
- Kafkaのキューは「1度しかConsumeされない」保証無し
- 冪等性の確保が必要
- LWT
- Counterカラムは使わない
- 既存のAPIがすでに使っているので改修必要
仕訳データを作る前にバリデーションしたい
- 仕訳作成APIの呼び出しが非同期になった
- 不正なデータだったら仕訳作らず、エラーにしたい
- 確認画面に行くときに、予めバリデーションが必要
すべてのサービスを同時に直す余裕がない
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
POST
ひとまずこの2つから置き換え
残りはロールバックのまま
KafkaのConsumeが極端に遅れた場合は?
- 仕訳など作成期限ある
- リカバリバッチでなんとかする
- あるいは、何かトリガーがあるなら、そこで同期実行
デバッグしにくい
- 今のところ妙案なし・・・
- いい案知ってる方教えてください
リグレッションテストが大変
- 自動テストなども遅延込みで見直す
他のサービスは?
- どこまで同様のパターンでいけるのか調査必要
- ドキュメントに落とす
- 社内エバンジェリストをたて、啓蒙してもらう
まだまだ戦いは続く・・
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)

More Related Content

What's hot

Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
Amazon Web Services Korea
 

What's hot (20)

Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Aurora - Auroraの止まらない進化とその中身Amazon Aurora - Auroraの止まらない進化とその中身
Amazon Aurora - Auroraの止まらない進化とその中身
 
Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...
Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...
Big Data Analytics Architectural Patterns and Best Practices (ANT201-R1) - AW...
 
インフラ専任エンジニアが一人もいないSmartNewsにおけるクラウド活用法
インフラ専任エンジニアが一人もいないSmartNewsにおけるクラウド活用法インフラ専任エンジニアが一人もいないSmartNewsにおけるクラウド活用法
インフラ専任エンジニアが一人もいないSmartNewsにおけるクラウド活用法
 
2017 AWS DB Day | Amazon Aurora 자세히 살펴보기
2017 AWS DB Day | Amazon Aurora 자세히 살펴보기2017 AWS DB Day | Amazon Aurora 자세히 살펴보기
2017 AWS DB Day | Amazon Aurora 자세히 살펴보기
 
AWS Black Belt Online Seminar 2017 Amazon Relational Database Service (Amazon...
AWS Black Belt Online Seminar 2017 Amazon Relational Database Service (Amazon...AWS Black Belt Online Seminar 2017 Amazon Relational Database Service (Amazon...
AWS Black Belt Online Seminar 2017 Amazon Relational Database Service (Amazon...
 
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service20210216 AWS Black Belt Online Seminar AWS Database Migration Service
20210216 AWS Black Belt Online Seminar AWS Database Migration Service
 
Parquetはカラムナなのか?
Parquetはカラムナなのか?Parquetはカラムナなのか?
Parquetはカラムナなのか?
 
aws health organizations notifications
aws health organizations notificationsaws health organizations notifications
aws health organizations notifications
 
Jawsdays2021 Amazon Connect愛について語り尽くす
Jawsdays2021 Amazon Connect愛について語り尽くすJawsdays2021 Amazon Connect愛について語り尽くす
Jawsdays2021 Amazon Connect愛について語り尽くす
 
分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)
分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)
分散処理基盤ApacheHadoop入門とHadoopエコシステムの最新技術動向(OSC2015 Kansai発表資料)
 
AWS Black Belt Techシリーズ Amazon EMR
AWS Black Belt Techシリーズ  Amazon EMRAWS Black Belt Techシリーズ  Amazon EMR
AWS Black Belt Techシリーズ Amazon EMR
 
AWS Black Belt Online Seminar Amazon Aurora
AWS Black Belt Online Seminar Amazon AuroraAWS Black Belt Online Seminar Amazon Aurora
AWS Black Belt Online Seminar Amazon Aurora
 
[Pgday.Seoul 2018] Greenplum의 노드 분산 설계
[Pgday.Seoul 2018]  Greenplum의 노드 분산 설계[Pgday.Seoul 2018]  Greenplum의 노드 분산 설계
[Pgday.Seoul 2018] Greenplum의 노드 분산 설계
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
 
Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...
Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...
Cloud Data Warehousing presentation by Rogier Werschkull, including tips, bes...
 
codecentric AG: CQRS and Event Sourcing Applications with Cassandra
codecentric AG: CQRS and Event Sourcing Applications with Cassandracodecentric AG: CQRS and Event Sourcing Applications with Cassandra
codecentric AG: CQRS and Event Sourcing Applications with Cassandra
 
AWS Blackbelt 2015シリーズ RDS
AWS Blackbelt 2015シリーズ RDSAWS Blackbelt 2015シリーズ RDS
AWS Blackbelt 2015シリーズ RDS
 
Twitch Plays Pokémon: Twitch's Chat Architecture
Twitch Plays Pokémon: Twitch's Chat ArchitectureTwitch Plays Pokémon: Twitch's Chat Architecture
Twitch Plays Pokémon: Twitch's Chat Architecture
 
インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~
インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~
インフラ運用の観点から考えるAWS~運用における利点と移行のポイント~
 
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
Amazon Aurora 성능 향상 및 마이그레이션 모범 사례 - AWS Summit Seoul 2017
 

Similar to RDB脳でCassandra / MSAを始めた僕達が、分散Drivenなトランザクション管理にたどり着くまで / A journey to achieved a KVS Driven Transaction Management, Started with Cassandra / MSA from RDB driven'

インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Akihiro Kuwano
 
クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性
Masayoshi Hagiwara
 
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし
Oonishi Takaaki
 

Similar to RDB脳でCassandra / MSAを始めた僕達が、分散Drivenなトランザクション管理にたどり着くまで / A journey to achieved a KVS Driven Transaction Management, Started with Cassandra / MSA from RDB driven' (14)

RDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまで
RDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまでRDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまで
RDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまで
 
分割と整合性と戦う
分割と整合性と戦う分割と整合性と戦う
分割と整合性と戦う
 
NATS on VCAP
NATS on VCAPNATS on VCAP
NATS on VCAP
 
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
 
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性
 
Cloudnative online-2021-stepfunction
Cloudnative online-2021-stepfunctionCloudnative online-2021-stepfunction
Cloudnative online-2021-stepfunction
 
Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築
 
負荷対策はCloudFront
負荷対策はCloudFront負荷対策はCloudFront
負荷対策はCloudFront
 
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし
 
20120914 aws summit_lt
20120914 aws summit_lt20120914 aws summit_lt
20120914 aws summit_lt
 
Movable Type for AWS を用いた環境構築のポイント
Movable Type for AWS を用いた環境構築のポイントMovable Type for AWS を用いた環境構築のポイント
Movable Type for AWS を用いた環境構築のポイント
 
あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点
あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点
あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点
 
日本語環境におけるWordPressの高速化
日本語環境におけるWordPressの高速化日本語環境におけるWordPressの高速化
日本語環境におけるWordPressの高速化
 

More from Works Applications

More from Works Applications (11)

Gitで安定マスターブランチを手に入れる
Gitで安定マスターブランチを手に入れるGitで安定マスターブランチを手に入れる
Gitで安定マスターブランチを手に入れる
 
Javaでつくる本格形態素解析器
Javaでつくる本格形態素解析器Javaでつくる本格形態素解析器
Javaでつくる本格形態素解析器
 
新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫
新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫
新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫
 
Cassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak point
Cassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak pointCassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak point
Cassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak point
 
形態素解析
形態素解析形態素解析
形態素解析
 
Erpと自然言語処理
Erpと自然言語処理Erpと自然言語処理
Erpと自然言語処理
 
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
 
Enterprise UI/UX - design as code
Enterprise UI/UX - design as codeEnterprise UI/UX - design as code
Enterprise UI/UX - design as code
 
Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)
 
Demystifying kubernetes
Demystifying kubernetesDemystifying kubernetes
Demystifying kubernetes
 
Global Innovation Nights - Spark
Global Innovation Nights - SparkGlobal Innovation Nights - Spark
Global Innovation Nights - Spark
 

RDB脳でCassandra / MSAを始めた僕達が、分散Drivenなトランザクション管理にたどり着くまで / A journey to achieved a KVS Driven Transaction Management, Started with Cassandra / MSA from RDB driven'