nostr:npub10pq0zyv5ngd5lry563gl7hs7ssga5w3enqv3jt8efw0jrdk8fxsszqt4mm nostr:npub1medapwfrsavqg9dddvps46yxzt0uv7kd9vr0s505czx05msp0kcs7lhvtt
弊ぼっちでは僕がたまに発言したポストのリモートへの配送がボトルネックになってる感じなので、あまり遅延が大きくならないようにSidekiqのスレッド数を調整しています。
配送の遅延は、https://github.com/zunda/mastodon/blob/use-ruby33/app/lib/worker_logger.rb みたいなmoduleを書いてあって、https://github.com/zunda/mastodon/blob/use-ruby33/app/workers/activitypub/delivery_worker.rb から配送の結果をログに流して、Libratoというサービスにいい感じにグラフにしてもらってます (僕がたまにしか発言しないのでいい感じのグラフにはならないw)
ざっくり、Sidekiq 1スレッドで1つのリモートサーバにポストを配るのに1秒弱かかっていて、弊ぼっちではメモリの制限やRedisへの接続数の制限も考慮に入れて、合計2プロセス(Pumaに相乗りしてるやつとストリーミングに相乗りしてるやつ) で8スレッドのSidekiqを走らせてます。僕が発言していない時は割と暇そうですw
https://s3.amazonaws.com/zundan-mastodon/media_attachments/files/111/169/328/699/566/898/original/7481a0fb9c3a3018.png