マイクロサービス化するならこれを読め!モノタロウのマイクロサービス化と速度向上の秘策 #pyconjp 2016 #pyconjp_201
JavaScript/TypeScript, Python, Awkあたりをよく書きますが、心の支えはLispです。40代ですが Mrs. GREEN APPLEにどハマり中のJAM’S おっさん。 ※掲載内容は個人の見解であり、所属する企業を代表するものではありません。
我が社のエース 金谷敦志が登壇するモノ!c(・∀・)c #pyconjp #pyconjp_201 #monotaro
2016-09-21 11:03:28#pyconjp #pyconjp_201 始まりました! pic.twitter.com/N6S4V4BxT0
2016-09-21 11:03:47#monotaro の人の発表なう。 #pyconjp #pyconjp_201 Jenkins的なポーズしたモノタロウ侍、はじめて見た気がする……。
2016-09-21 11:05:43#pyconjp #pyconjp_201 まずはモノタロウの説明。 pic.twitter.com/jAaALpoVwh
2016-09-21 11:06:25#pyconjp #pyconjp_201 しかし結果としてAPIコール回数が増え、とある画面では最大12回がコールされている→負荷が集中し、レスポンス待ちが発生する
2016-09-21 11:10:21#pyconjp #pyconjp_201 対策1.memcached アプリケーションサーバーに共有することでAPIコールの5-6割がキャッシュから呼ばれるように
2016-09-21 11:11:09#pyconjp #pyconjp_201 APIコールといえばIO処理 APIコール→レスポンス→お客様を待たせてしまう
2016-09-21 11:14:39#pyconjp #pyconjp_201 通常のIO処理 pic.twitter.com/YXsKPjSpIE
2016-09-21 11:17:38#pyconjp #pyconjp_201 gevent greenletを用いたコルーチンベースのネットワーキングライブラリ Futureを仕様 標準ライブラリを非同期IOに置き換えるモンキーパッチ
2016-09-21 11:19:42#pyconjp #pyconjp_201 モンキーパッチの対象。 今回はSocketとSSLを使用 pic.twitter.com/R2GmOjs5x9
2016-09-21 11:21:05#pyconjp_201 geventを使うと標準ライブラリのIO周りのモジュールが非同期化できる。導入が楽そう
2016-09-21 11:22:23#pyconjp #pyconjp_201 geventを使ったときのコードの変更てん pic.twitter.com/iFi2AePRWY
2016-09-21 11:23:31