Show more

そもそも他のインスタンスと通信しまくる都合上Pawooだけ最適化してもダメで、全インスタンス最適化しなければならない。ゆえにpixivはプルリク投げまくる。次にやるのは、リモートがメンテで落ちてると巻き添えでキューが詰まるの改善とSidekiqのバッチ化

マストドン最適化の話。マストドンはPawoo当初は重かった。DBはIndexを張ることでメッチャ速くなった。タイムアウトは60秒とか長かったので、貧弱なインスタンス相手だと待ち時間が無駄なので短くした。この辺はプルリク投げて本家に取り込んでもらってる

次は一週間で!Androidクライアントアプリを作った話。最初にアプリバージョンアップボタンポチってて会場騒然。Webビュー貼っただけじゃなくてちゃんとネイティブアプリ。最初は一人で最後は4人になった。ぶっ続けでハッカソンやってるような感じで疲れたとの事

じゃあnodeをマルチコア対応させればいいじゃんと言うことで、clusterモジュールを使ってマルチプロセス化させた。これは公式にもプルされてて、例のgargron氏に感謝されてたコミットのやつ。歩かにも2件ほどのプルリク事例紹介があった

nodeが1コア食い潰してタイムラインを手遅らせてたのを何とかした話。mastodon-streamingはnodeでwebsocketやってる。nodeはシングルスレッドだから他のコアに余裕があっても1コアしか使えなくて一杯一杯になる。なってた。

マストドンの構成図。頭で隠れてるのはnode.js。メイン処理はSidekiqが行っている。リモートインスタンスが一杯一杯だとこっちまで巻き添えで詰まる。トゥートするたびにフォロワー全員にプッシュするのも負荷ヤバい。バニラな実装なので最適化の余地はある

昨日の夜から計測したVPSのメモリ消費のグラフ。 

Mastodon

海行の個人インスタンスです。
よろしくどうぞ。

ホームページ
http://soysoftware.sakura.ne.jp/