Mastodonなど、大量の投稿が飛び交っているシステムでは、まず処理をキューに入れます。
キューというのは順番待ちをする列で、ひとまず最後尾に並んでもらって、順番に処理をすすめることで、一度に大量の処理が来てもサーバがパンクしないようにし、かつ全ての処理を漏らさずにこなすことができるようにする工夫です。
Mastodonでは、リモートから投稿を受け取ると、まずそれを処理するジョブをキューに入れます。
このジョブは、まず投稿の元になる情報を処理してデータベースに保存し、次にみんなのホームやリストに投稿を追加する処理を行います。
ホームやリストへの追加は、それぞれ別々のジョブとしてキューに入れ、順番に処理します。
たとえばUN_NERVの投稿を受け取ったサーバは、投稿に含まれる添付画像をUN_NERVのメディアサーバに取りに行って保存し、投稿の情報が揃ったらデータベースに保存します。
次に投稿をローカルや連合のストリーミングに流し、UN_NERVをフォローしている人のために必要な数だけタイムライン挿入ジョブを生成してキューに入れます。
タイムライン挿入ジョブは、順番に処理されるので少し待つことになりますが、この処理が終わったら投稿がタイムラインに挿入されます。