【らうんどろびん】
ラウンドロビン とは?
💡 「みんな平等に順番ね」の精神で回すタスク配分術
📌 このページのポイント
ラウンドロビンって面白い名前だけど、何のこと?
タスクやリクエストを「順番に1つずつ」均等に割り振る方式だよ。回転寿司に例えると、全員に同じペースでお皿が回ってくるイメージだね。誰かだけたくさん食べるってことがないんだ。
どういう場面で使われるの?
タイムスライスって何なの?
1回の順番で割り当てる時間の長さのことだよ。例えば10ミリ秒ずつ割り当てると、プロセスAに10ms、次にBに10ms、次にCに10ms……と回していくんだ。この長さが短すぎると切り替えコストが大きくなり、長すぎると待ち時間が増えるんだよ。
欠点はないの?
全タスクを均等に扱うから、「この処理は急ぎ!」という優先度をつけられないのが弱点だね。緊急のタスクも普通のタスクも同じ扱いになっちゃう。だから優先度スケジューリングと組み合わせて使うことも多いんだよ。
ロードバランサーでのラウンドロビンはちょっと違うの?
まとめ:ざっくりこれだけ覚えればOK!
「ラウンドロビン」って出てきたら「順番に均等に割り振る方式」と思えればだいたいOK!
📖 おまけ:英語の意味
「Round-Robin」 = 総当たり・順繰り
💬 もともとはフランス語の ruban rond(丸いリボン)が由来とされていて、署名者が分からないよう丸く名前を書いた連判状のことだよ