で実装していたが, パフォーマンスに難があり Redis を利用して push 型のタイムラインを生成することに … ElastiCache (Redis) Dynamo DB Article Feed Service Categorize Service Propagate Service Vowpal Wabbit Scikit Learn etc … Java Java Java CPP Categorize Queue Propagate Queue ① RSS etc の更新 ③ Enqueue ③ Save ② Poll 機械学習 エンジン ユーザー毎の タイムライン
で実装していたが, パフォーマンスに難があり Redis を利用して push 型のタイムラインを生成することに … ElastiCache (Redis) Dynamo DB Article Feed Service Categorize Service Propagate Service Vowpal Wabbit Scikit Learn etc … Java Java Java CPP Categorize Queue Propagate Queue ① RSS etc の更新 ③ Enqueue ③ Save ④ Subscribe ② Poll 機械学習 エンジン ユーザー毎の タイムライン
で実装していたが, パフォーマンスに難があり Redis を利用して push 型のタイムラインを生成することに … ElastiCache (Redis) Dynamo DB Article Feed Service Categorize Service Propagate Service Vowpal Wabbit Scikit Learn etc … Java Java Java CPP Categorize Queue Propagate Queue ① RSS etc の更新 ③ Enqueue ③ Save ④ Subscribe ⑤ Calculate Score ② Poll 機械学習 エンジン ユーザー毎の タイムライン ⑥ Fetch Data
原因 ・API の後方互換性を保つために同じモデルがひたすら拡張されていた ・全く異なる API でも同じモデルが使い回されていた ・業務レイヤのモデルが API の I/O と共有されていた 解決 ・業務レイヤと Web レイヤをきちんと分離 ・カジュアルに API のバージョンアップが出来る仕組みをつくる