2024-03-21 09:41:40 のえるの投稿 noellabo@fedibird.com
icon

@makihara えとね、ざっくり3ステップあるわけ。

最初にWebサーバが外部からの投稿データを受け取って、

1. ActivityPub::ProcessingWorker
2. DistributionWorker
3. FeedInsertWorker

という順序でワーカーが起動。

(1)は投稿データを解析して、投稿データとしてデータベースに記録+通知+(2)の起動

(2)はそれを全員共通のタイムラインに配送+(3)の起動

(3)はひとりひとりのタイムラインに配送

で、処理が詰まっている(順番待ちになっている)と、ひとりひとりのタイムラインに表示されるまでに3回待たないといけないのね。だから2倍も3倍も遅延するっていう。

購読とフォローはどちらも(3)で処理するから同じだよ。

ハッシュタグタイムラインは(2)で処理される。

内部の投稿は(1)の代わりに投稿APIの処理が走って、あと(2)以降は同じ。

2024-03-21 08:03:54 matsuuの投稿 matsuu@fedibird.com
icon

このアカウントは、notestockで公開設定になっていません。