孊習遅延キュヌむング理論

時間の経過に䌎う埅ち時間のテヌマは、Yandexのさたざたなシステムで興味深いものになりたす。 これは、これらのシステムにサヌビス保蚌が衚瀺されるずきに発生したす。 明らかに、ナヌザヌに䜕らかの機䌚を玄束するだけでなく、劥圓な応答時間で受信を保蚌するこずも重芁であるずいう事実です。 もちろん、応答時間の「合理性」はシステムごずに倧きく異なりたすが、すべおのシステムで遅延が珟れる基本原則は共通しおおり、詳现から切り離しお考えるこずができたす。



私の名前はSergey Trifonovです。YandexのReal-Time Map Reduceのチヌムで働いおいたす。 2番目および1秒未満の応答時間を備えたリアルタむムデヌタフロヌ凊理甚のプラットフォヌムを開発しおいたす。 このプラットフォヌムは内郚ナヌザヌが利甚でき、垞に受信するデヌタストリヌムでアプリケヌションコヌドを実行できたす。 過去100幎および10幎のレむテンシ分析のトピックに぀いお、人類の基本抂念の抂芁を簡単に説明したす。次に、キュヌむング理論を䜿甚しおレむテンシに぀いお正確に孊習できるこずを理解しようずしたす。



埅ち時間の珟象は、電話通信ネットワヌクである埅ち行列システムの出珟に関連しお、私の知る限り䜓系的に調査され始めたした。 キュヌむング理論は、1909幎のA.K.アヌランの研究から始たり、ポア゜ン分垃がランダムな電話トラフィックに適甚可胜であるこずを瀺したした。 アヌランは、電話ネットワヌクを蚭蚈するために䜕十幎も䜿甚されおきた理論を開発したした。 この理論により、サヌビス拒吊の確率を刀断できたす。 回線亀換チャネルを備えた電話ネットワヌクでは、すべおのチャネルがビゞヌであり、コヌルを発信できない堎合に障害が発生したした。 このむベントの確率を制埡する必芁がありたした。 たずえば、すべおの通話の95が凊理されるこずを保蚌したかったのです。 Erlangの匏を䜿甚するず、通話の時間ず数がわかっおいる堎合に、この保蚌を満たすために必芁なサヌバヌの数を決定できたす。 実際、このタスクは品質保蚌に過ぎず、今日でも人々は同様の問題を解決しおいたす。 しかし、システムははるかに耇雑になっおいたす。 キュヌむング理論の䞻な問題は、ほずんどの斜蚭で教えられおおらず、通垞のM / M / 1キュヌ以倖の質問を理解しおいる人はほずんどいないこずです 以䞋の衚蚘を参照 が、人生はこのシステムよりもはるかに耇雑であるこずはよく知られおいたす。 したがっお、M / M / 1をバむパスしお、最も興味深いものにすぐに行くこずを提案したす。



平均倀



システム内の確率分垃に関する完党な知識を埗ようずせず、より単玔な質問に焊点を合わせれば、興味深く有甚な結果を埗るこずができたす。 最も有名なものは、もちろん、 リトルの定理です。 任意の入力ストリヌム、任意の耇雑さの内郚デバむス、および内郚の任意のスケゞュヌラヌを備えたシステムに適甚できたす。 唯䞀の芁件は、システムが安定しおいるこずです。平均応答時間ずキュヌの長さが存圚する必芁があり、それらは単玔な匏で接続されたす





L = \ラムダ W

ラムダ





どこで L -システムの察象ずなる郚分のリク゚ストの平均時間数[pcs]、 W -芁求がシステムのこの郚分を通過する平均時間[s]、 \ラムダラムダ -システムでのリク゚ストの受信速床[pcs / s]。 定理の長所は、キュヌ、゚グれキュヌタヌ、キュヌ+゚グれキュヌタヌ、たたはネットワヌク党䜓に適甚できるこずです。 倚くの堎合、この定理はおおよそ次のように䜿甚されたす。「1Gbit / sのストリヌムが私たちに向かっお流れおおり、平均応答時間を枬定したした。これは10ミリ秒です。したがっお、平均1.25 MBが飛行しおいたす。」 したがっお、この蚈算は正しくありたせん。 より正確には、すべおのリク゚ストのサむズがバむト単䜍で同じ堎合にのみ圓おはたりたす。 リトルの定理は、ク゚リをバむト単䜍ではなく小片単䜍でカりントしたす。



リトルの定理の䜿甚方法



数孊では、倚くの堎合、真の掞察を埗るために蚌拠を研究する必芁がありたす。 これはたさにその通りです。 リトルの定理は非垞に優れおいるので、ここで蚌明のスケッチを瀺したす。 着信トラフィックは機胜によっお蚘述されたす A  t  -その時点でログむンしおいるリク゚ストの数 t 。 同様に D  t  -その時点でログアりトされたリク゚ストの数 t 。 芁求の゚ントリ終了の瞬間は、最埌のバむトの受信送信の瞬間ず芋なされたす。 システムの境界はこれらの時点でのみ決定されるため、定理は広く適甚できたす。 これらの関数のグラフを同じ軞に描くず、簡単にわかりたす  T  - D  T  時刻tにおけるシステム内のリク゚ストの数です。 W n n番目の芁求の応答時間です。



定理は1961幎にのみ正匏に蚌明されたしたが、その関係自䜓はそのずっず前から知られおいたした。



実際、システム内で芁求を䞊べ替えるこずができる堎合、すべおが少し耇雑になりたす。そのため、簡単にするために、これは起こらないず仮定したす。 この堎合も定理は真実ですが。 次に、グラフ間の面積を蚈算したしょう。 これを行うには2぀の方法がありたす。 たず、列によるず-積分が通垞考えるように。 この堎合、被積分関数はキュヌのサむズであるこずがわかりたす。 第二に、行ごずに-すべおのリク゚ストのレむテンシを単玔に加算したす。 䞡方の蚈算が同じ面積を䞎えるこずは明らかであるため、それらは等しくなりたす。 この等匏の䞡方の郚分を、面積を蚈算した時間Δtで割るず、巊偎に平均キュヌ長がありたす。 L 平均の定矩による。 右偎には少し泚意が必芁です。 分子ず分母に別の数のク゚リNを远加する必芁があり、成功したす。





 frac sumWi Deltat= frac sumWiN fracN Deltat=W lambda





十分に倧きいΔtたたは1぀の雇甚期間を考慮するず、端の質問は削陀され、定理は蚌明枈みず芋なされたす。



蚌明では、確率の分垃を䜿甚しなかったず蚀うこずが重芁です。 実際、リトルの定理は決定論的な法則です このような法埋は、操䜜法のキュヌむング理論で呌ばれおいたす。 これらは、システムの任意の郚分およびさたざたなランダム倉数の任意の分垃に適甚できたす。 これらの法則は、ネットワヌクの平均倀を分析するために䜿甚できるコンストラクタヌを圢成したす。 欠点は、それらがすべお平均にのみ適甚され、分垃に関する知識を提䟛しないこずです。



リトルの定理をバむトに適甚できない理由の質問に戻るず、 At そしお Dt 珟圚、それらは小片ではなくバむト単䜍で枬定されたす。 次に、同様の匕数を実行するず、代わりに W 奇劙なこずは、合蚈バむト数で割った領域です。 それはただ数秒ですが、それはより倧きなリク゚ストがより倚くの重みを取埗する少しの加重平均レむテンシです。 この倀は、バむトの平均レむテンシヌず呌ぶこずができたす-ピヌスをバむトで眮き換えたため、䞀般に論理的ですが、リク゚ストのレむテンシヌではありたせん。



リトルの定理によるず、特定の芁求のストリヌムでは、システム内の応答時間ず芁求の数は比䟋したす。 すべおの芁求が同じように芋える堎合、電力を増加させなければ平均応答時間を短瞮できたせん。 ク゚リのサむズが事前にわかっおいる堎合は、内郚の順序を倉曎しお、間の領域を枛らすこずができたす At そしお Dt したがっお、平均システム応答時間。 この考え方を続けるず、最短凊理時間アルゎリズムず最短残り凊理時間アルゎリズムは、それぞれ混雑する可胜性なしに、1台のサヌバヌの最小平均応答時間を䞎えるこずを蚌明できたす。 しかし、副䜜甚がありたす-倧きなリク゚ストは無期限に凊理されないかもしれたせん。 この珟象は「飢v」ず呌ばれ、公平性蚈画の抂念ず密接に関連しおいたす。これは、以前のスケゞュヌリングの投皿である神話ず珟実から孊ぶこずができたす。



リトルの法則の理解に関連するもう1぀の䞀般的なトラップがありたす。 ナヌザヌリク゚ストに察応するシングルスレッドサヌバヌがありたす。 䜕らかの方法でL-このサヌバヌぞのキュヌ内のリク゚ストの平均数、S-サヌバヌが1぀のリク゚ストを凊理した平均時間を枬定したずしたす。 次に、新しい着信リク゚ストを怜蚎したす。 平均しお、圌は圌の前にLク゚リを芋る。 それぞれにサヌビスを提䟛するには、平均しおS秒かかりたす。 平均埅ち時間は W=LS 。 しかし、定理により、 W=L/\ラムダラムダ 。 匏を同等にするず、ナンセンスがわかりたす。 S=1/\ラムダラムダ 。 この掚論の䜕が問題になっおいたすか



  1. あなたの目を匕く最初のもの定理による応答時間はSに䟝存したせん。実際、もちろん、䟝存したす。 サヌバヌの速床が速いほど、キュヌの長さが短くなり、応答時間が短くなるずいうこずは、平均キュヌの長さがすでにこれを考慮しおいるずいうこずです。
  2. キュヌが氞久に蓄積されるのではなく、定期的にリセットされるシステムを怜蚎したす。 これは、サヌバヌの䜿甚率が100未満であり、すべおの着信芁求をスキップし、これらの芁求が到着したのず同じ平均速床で、぀たり単䞀の芁求を凊理するのに平均しおS秒ではなく、 1/\ラムダラムダ 単にリク゚ストを凊理しない堎合があるためです。 事実、損倱のない安定したオヌプンシステムでは、スルヌプットはサヌバヌの速床に䟝存せず、入力ストリヌムによっおのみ決定されたす。
  3. 着信リク゚ストがシステム内でリク゚ストの時間平均数を認識するずいう仮定は、垞に正しいずは限りたせん。 反䟋着信リク゚ストは定期的に送信され、次のリク゚ストが到着する前に各リク゚ストを凊理したす。 リアルタむムシステムの兞型的な状況。 着信芁求は垞にシステム内でれロの芁求を芋たすが、平均しおシステムには明らかにれロ以䞊の芁求がありたす。 芁求が完党にランダムな時間に来る堎合、実際には「芁求の平均数を芋る」 。







  4. 䞀定の確率で、サヌバヌに「拡匵」する必芁がある芁求が既に1぀ある可胜性があるこずを考慮したせんでした。 䞀般的な堎合、「アフタヌサヌビス」の平均時間はサヌビスの最初の時間ずは異なり、時には逆説的に 、はるかに長くなるこずがありたす。 最埌にこの問題に戻り、マむクロバヌストに぀いお説明したすので、ご期埅ください。


したがっお、リトルの定理は、倧小のシステム、キュヌ、サヌバヌ、および単䞀の凊理スレッドに適甚できたす。 しかし、これらすべおの堎合、リク゚ストは通垞​​䜕らかの方法で分類されたす。 異なるナヌザヌのリク゚スト、異なる優先床のリク゚スト、異なる堎所からのリク゚スト、たたは異なるタむプのリク゚スト。 この堎合、クラスによっお集玄された情報は面癜くありたせん。 はい、混合リク゚ストの平均数ずそれらすべおの平均応答時間は再び比䟋したす。 しかし、特定のクラスのリク゚ストの平均応答時間を知りたい堎合はどうでしょうか 驚くべきこずに、リトルの定理は特定のクラスのク゚リに適甚できたす。 この堎合、次のように取る必芁がありたす \ラムダラムダ すべおではなく、このクラスが芁求する割合。 ずしお L そしお W -システムの調査察象郚分におけるこのクラスのリク゚ストの数ず滞留時間の平均倀。



オヌプンシステムずクロヌズドシステム



閉じたシステムの堎合、結論に至る「間違った」掚論の行が存圚するこずは泚目に倀したす S=1/\ラムダラムダ 本圓であるこずが刀明。 クロヌズドシステムずは、リク゚ストが倖郚から送信されず、倖郚に送信されず、内郚に埪環するシステムです。 たたは、フィヌドバックシステムリク゚ストがシステムを離れるずすぐに、新しいリク゚ストが実行されたす。 これらのシステムも重芁です。なぜなら、開いおいるシステムはすべお、閉じたシステムに没頭しおいるず芋なすこずができるからです。 たずえば、サむトは、芁求が絶えず泚がれ、凊理され、取り䞋げられるオヌプンシステムず考えるこずができたす。逆に、サむトの芖聎者党員がいるクロヌズドシステムず考えるこずもできたす。 その埌、圌らは通垞、ナヌザヌの数は固定されおいるず蚀い、圌らはリク゚ストぞの応答を埅぀か「考える」。圌らは自分のペヌゞを手に入れ、リンクをクリックするたで。 思考時間が垞にれロである堎合、システムはバッチシステムずも呌ばれたす。



閉じたシステムのリトルの法則は、倖郚からの到着の速床が \ラムダラムダ それらは閉じたシステムではありたせんシステム垯域幅に眮き換えたす。 䞊蚘のシングルスレッドサヌバヌをバッチシステムでラップするず、次のようになりたす。 S=1/\ラムダラムダ そしお100リサむクル。 倚くの堎合、このようなシステムの倖芳は予期しない結果をもたらしたす。 90幎代には、指数関数的分垃以倖の分垃の研究に匟みを぀けた単䞀のシステムずしお、ナヌザヌず䞀緒にむンタヌネットを考慮するだけでした。 分垃に぀いおさらに説明したすが、ここでは、ほがすべおの堎所が指数関数的であるず考えられおいたこずに泚意しおください。 ただし、実際に重芁なすべおの分垃が同じように長いテヌルを持぀わけではなく、分垃のテヌルの知識を詊すこずができるこずが刀明したした。 しかし、今のずころ、平均倀に戻りたしょう。



盞察論的効果



オヌプンシステム、぀たり耇雑なネットワヌクたたは単玔なシングルスレッドサヌバヌがあるずしたす-それは重芁ではありたせん。 芁求の到着を2倍にし、すべおのシステムコンポヌネントの凊理胜力を2倍にするなど、凊理を半分に高速化するずどうなりたすか 䜿甚率、スルヌプット、システム内の平均リク゚スト数、および平均応答時間はどのように倉化したすか シングルスレッドサヌバヌの堎合、数匏を取埗しお「額に」適甚しお結果を埗るこずができたすが、任意のネットワヌクで䜕をするのでしょうか。 盎感的な解決策は次のずおりです。 時間が2倍になったず仮定するず、「高速化された参照システム」では、サヌバヌの速床ず芁求の流れは倉わらないように芋えたした。 したがっお、加速時間のすべおのパラメヌタヌは以前ず同じ倀になりたす。 蚀い換えれば、システムのすべおの「可動郚」の加速床は、時蚈の加速床に盞圓したす。 次に、通垞の時間で倀をシステムに倉換したす。 無次元の数量䜿甚率ず平均リク゚スト数は倉わりたせん。 次元に1次の時間因子が含たれる倀は、比䟋しお倉化したす。 [requests / s]のスルヌプットは2倍になり、応答ず埅機時間[s]は半分になりたす。



この結果は、次の2぀の方法で解釈できたす。



  1. k回加速されたシステムは、タスクフロヌをk回以䞊消化し、平均応答時間をk回短瞮できたす。
  2. パワヌは倉化しなかったが、単玔にタスクのサむズがk倍枛少したず蚀えたす。 同じ負荷をシステムに送信しおいたすが、小さな断片で切断されおいるこずがわかりたす。 そしお...ああ奇跡 平均応答時間が短瞮されたした


繰り返したすが、これは単玔なサヌバヌだけでなく、幅広いクラスのシステムに圓おはたるこずに泚意しおください。 実甚的な芳点からは、2぀の問題のみがありたす。



  1. システムのすべおの郚分を簡単に加速できるわけではありたせん。 䞀郚に圱響を䞎えるこずはできたせん。 たずえば、光の速床。
  2. すべおのタスクが1ビット未満の郚分で情報を送信する方法を孊習しおいないため、すべおのタスクをたすたす小さなものに分割できるわけではありたせん。


限界ぞの移行を怜蚎しおください。 同じオヌプンシステムで、解釈番号2を想定したす。各着信芁求を半分に分割したす。 応答時間も半分に分割されたす。 分割を䜕床も繰り返したす。 そしお、システム内の䜕も倉曎する必芁さえありたせん。 着信芁求を十分に倚数のパヌツに分割するだけで、応答時間を任意に短くするこずができたす。 限界では、ク゚リの代わりに「ク゚リフルむド」を取埗し、それをサヌバヌでフィルタリングするず蚀うこずができたす。 これは、いわゆる流䜓モデルであり、単玔化された分析に非垞に䟿利なツヌルです。 しかし、なぜ応答時間がれロなのでしょうか 䜕が悪かったのですか レむテンシを考慮しなかったのはどこですか 私たちは光の速床だけを考慮しなかったこずがわかりたす。倍にするこずはできたせん。 ネットワヌクチャネルでの䌝播時間は倉曎できず、我慢できたす。 実際、ネットワヌクを介した䌝送には、䌝送時間ず䌝播時間の2぀の芁玠が含たれたす。 1぀目は、電力チャネル幅を増やすか、パケットのサむズを小さくするこずで加速でき、2぀目は圱響を䞎えるのが非垞に困難です。 私たちの「液䜓モデル」では、液䜓を蓄積するためのリザヌバヌはありたせんでした。぀たり、䌝播時間がれロではない䞀定のネットワヌクチャネルです。 ずころで、それらを「液䜓モデル」に远加するず、遅延は䌝播時間の合蚈によっお決定され、ノヌド内のキュヌは空のたたになりたす。 キュヌは、パケットサむズず入力ストリヌムの倉動性読み取りバヌストのみに䟝存したす。



レむテンシヌに関しお蚀えば、ストリヌム蚈算では察応できず、デバむスを砎棄しおもすべおが解決されるわけではありたせん。 リク゚ストのサむズを考慮し、配信時間を忘れないようにする必芁がありたす。配信時間はキュヌむング理論ではしばしば無芖されたすが、蚈算に远加するこずはたったく難しくありたせん。



分垃



キュヌむングの理由は䜕ですか 明らかに、システムには十分な容量がなく、過剰な芁求が蓄積されおいたすか 本圓じゃない キュヌは、十分なリ゜ヌスがあるシステムでも発生したす。 十分な容量がない堎合、理論家が蚀うように、システムは安定しおいたせん。 キュヌむングには2぀の䞻な理由がありたす。芁求の䞍芏則性ず芁求サむズの倉動性です。 これらの理由の䞡方が排陀された䟋、぀たり、同じサむズのリク゚ストが厳密に定期的に来るリアルタむムシステムに぀いおは、すでに怜蚎したした。 キュヌは圢成されたせん。 平均キュヌ時間はれロです。 この動䜜を実珟するこずは、䞍可胜ではないにしおも非垞に困難であるため、キュヌが圢成されるこずは明らかです。 キュヌむング理論は、䞡方の原因が本質的にランダムであり、いく぀かのランダム倉数によっお説明されるずいう仮定に基づいおいたす。



䜿甚されるさたざたなシステムを説明するには ケンドヌル衚蚘 A / S / k / K、ここでAはリク゚スト間の時間の分垃、Sはリク゚ストサむズの分垃、kはサヌバヌの数、Kはシステム内の同時リク゚スト数の制限です制限がない堎合は省略。 たずえば、既知のM / M / 1は次のように埩号化されたす。最初のMMarkovianたたはMemorylessは、タスクのポア゜ンストリヌムがシステムに䟛絊されるこずを意味したす。 読み取りメッセヌゞは䞀定の平均速床でランダムに到着したす \ラムダラムダ 1秒あたりの芁求-攟射性厩壊のように-たたは、より正匏には、2぀の隣接するむベント間の時間には指数分垃がありたす。 2番目のMは、これらのメッセヌゞのサヌビスにも指数分垃があり、平均で1秒あたりのΌ芁求が凊理されるこずを意味したす。 最埌に、最埌のナニットは、サヌビスが単䞀のサヌバヌによっお実行されるこずを瀺したす。 衚蚘の4番目の郚分が欠萜しおいるため、キュヌは制限されたせん。 この衚蚘法で䜿甚される文字はかなり奇劙に遞択されおいたす。Gは任意の分垃いいえ、ガりスではない、ず思うかもしれたせん、Dは決定論的です。 リアルタむムシステム-D / D / 1。 アヌランが1909幎に決定した最初のキュヌむングシステムは、M / D / 1でした。 しかし、分析的にただ解決されおいないシステムは、k> 1の堎合M / G / kであり、M / G / 1の解は1930幎に発芋されたした。



なぜ指数分垃を䜿甚するのですか



䞻な理由は、埌で説明するように、数孊者がすでに倚くのこずを知っおいるマルコフ連鎖を䜿甚できるようになるため、ほずんどすべおのキュヌの問題を解決可胜にするためです。 指数分垃には、メモリがないため、理論に適した倚くの特性がありたす。 ここでは、このプロパティの定矩は行いたせん;開発者にずっおは、 倱敗率による説明の方が圹立ちたす。 デバむスがあり、実際にはそのようなデバむスの寿呜の分垃を知っおいるず仮定したす寿呜の初めに故障するこずが倚く、その埌比范的たれに故障し、保蚌期間の終了埌に再び故障し始めるこずがよくありたす。 正匏には、この情報は正確に故障率関数に含たれおおり、分垃に非垞に単玔に関連しおいたす。 実際、これは、デバむスがある皋床たで生き残っおいるずいう事実を考慮した「敎合した」確率密床です。 実甚的な芳点から、これはたさに私たちが興味を持っおいるものです。぀たり、デバむスがすでに皌働しおいる時間の関数ずしおのデバむスの故障率です。 たずえば、故障率が䞀定である堎合、぀たり、デバむスの故障の頻床が動䜜時間に䟝存せず、故障が䞀定の頻床でランダムに発生する堎合、デバむスの寿呜の分垃は指数関数的です。 この堎合、デバむスの動䜜時間を予枬するために、デバむスが䜿甚されおいた時間、デバむスの皮類、その他を知る必芁はありたせん。 これが「メモリ䞍足」です。



短い尟ず長い尟



故障率はどの分垃でも蚈算できたす。 キュヌむング理論においお、ク゚リの実行時間を分散したす。 倱敗率は、すでに実行されおいる量に基づいお、芁求が実行される時間を瀺したす。 倱敗率が増加しおいる堎合、リク゚ストが完了する時間が長いほど、すぐに終了する可胜性が高くなりたす。 倱敗率が䜎䞋しおいる堎合、リク゚ストの実行時間が長いほど、実行時間が長くなる可胜性が高くなりたす。 これら2぀のオプションのどちらが、コンピュヌティングシステム、デヌタベヌス、および゜フトりェアずハ​​ヌドりェアに関連する他のものに最も兞型的であるず思いたすか そもそも、なぜこれがさらに重芁なのですか 日垞生掻の䟋。 , , - . ? , — . ( failure rate) . « » .



, , failure rate, , , unix- . , .



RTMR , . LWTrace - . . , . , P{S>x} . , failure rate , , : .











P{S>x}=x−a , — . , « », 80/20: , . . , . , RTMR -, , . パラメヌタ a=1.16 , 80/20: 20% 80% .





, . . , , , - . , — . « » , « » — . : , ? , ( , ), . , 0 . , , ÎŒN1 λN0 。 , , — . . , . M/M/1 P{Q=i}=(1−ρ)ρi どこで ρ=λ/ÎŒ — . 物語の終わり。 , , , .



, , , , , . — . , , — failure rate.



, , . — . , . , , P{response_time>t}=e−(Ό−λ)t 1/(Ό−λ) 。





, , . , . , -, , . . , , , — . , , . , , . , , .





, , . . , . , . M/M/k/k M/M/k, . , . , , , , . M/M/k/k , , , , . , .



M/M/k , , , — . , M/M/1. , , , . . M/M/k/k M/M/k, B . , , , square root staffing rule. , M/M/k - λ . , . : , ? , ? , . , : ( ) , . — , . , M/M/1 , « » Ό−λ . , , : 2Ό−2λ 。 , , M/M/k . , « », . « » , : .



, , . , — M/M/k-. , , , — M/M/k, M/M/k , , . , , FIFO-. , , . , 10 , , . : .





, M/M/k, , . : . , , , . , M/M/k, . , , .



— . — . , , , , product-form solution . , — . . :



  1. . , , . , , « »: , № 1, № 2 , № 2, № 1 № 3 . , 100%- .
  2. . , , . , , . . — . , , , , .
  3. .






ゞャク゜ンネットワヌクの䟋。



フィヌドバックが存圚する堎合、ポア゜ンストリヌムは取埗されないこずに泚意しおください。これは、フロヌが盞互に䟝存しおいるこずが刀明したためです。 フィヌドバックノヌドからの出口では、非ポア゜ンストリヌムも取埗されるため、すべおのフロヌが非ポア゜ンになりたす。 ただし、驚くべきこずに、䞊蚘の制限が満たされおいる堎合、これらの非ポア゜ンフロヌはすべお、ポア゜ンフロヌああ、この確率理論ずたったく同じように動䜜するこずがわかりたす。 そしお、再び補品圢匏の゜リュヌションを取埗したす。 このようなネットワヌクはJacksonネットワヌクず呌ばれ、フィヌドバックを提䟛できるため、任意のサヌバヌに耇数回アクセスできたす。 より倚くの自由が蚱可されおいる他のネットワヌクもありたすが、結果ずしお、ネットワヌクに関するキュヌむング理論の重芁な分析的成果はすべお、入力および補品圢匏の゜リュヌションでポア゜ンフロヌを含み、これはこの理論によっお批刀され、90幎代に導かれたした他の理論の開発、実際に配垃が必芁なものずそれらをどのように扱うかの研究。



ゞャク゜ンネットワヌクのこの理論党䜓の重芁なアプリケヌションは、IPネットワヌクおよびATMネットワヌクでのパケットモデリングです。 モデルは非垞に適切です。サヌビス時間はパケットがチャネルに送信された時間に察応するため、パケットサむズはあたり倉化せず、パケット自䜓に䟝存せず、チャネル幅のみに䟝存したす。 ランダムな送信時間はワむルドに聞こえたすが、実際にはそれほど倧きな倉動性はありたせん。 さらに、確定的なサヌビス時間を備えたネットワヌクでは、遅延を同様のゞャク゜ンネットワヌクより長くするこずはできないため、このようなネットワヌクを安党に䜿甚しお䞊から応答時間を掚定できるこずがわかりたす。



非指数分垃



説明したすべおの結果は指数分垃に関連しおいたしたが、実際の分垃は異なるこずも蚀及したした。 この理論党䜓はたったく圹に立たないずいう感じがありたす。 これは完党に真実ではありたせん。 さらに、他の分垃をこの数孊的装眮に統合する方法がありたす。さらに、実際には任意の分垃を統合する方法がありたすが、コストがかかりたす。 いく぀かの興味深いケヌスを陀いお、明瀺的な圢匏で゜リュヌションを取埗する機䌚が倱われ、補品圢匏の゜リュヌションが倱われ、コンストラクタヌで倱われたす。各問題は、マルコフ連鎖を䜿甚しおれロから完党に解決する必芁がありたす。 理論䞊、これは倧きな問題ですが、実際には単に数倀的手法の適甚を意味し、はるかに耇雑で珟実に近い問題を解決するこずを可胜にしたす。



䜍盞法



アむデアはシンプルです。 マルコフ連鎖では、1぀の状態内にメモリを保持するこずはできたせん。したがっお、すべおの遷移は、2぀の遷移間の時間の指数分垃でランダムでなければなりたせん。 しかし、状態が耇数のサブ状態に分割されおいる堎合はどうでしょうか 構造党䜓をマルコフ連鎖のたたにしたい堎合、サブステヌト間の遷移はただ指数分垃である必芁がありたす。本圓にそうしたいのは、そのような連鎖を解く方法を知っおいるからです。 サブステヌトは、盎列に配眮されおいる堎合、倚くの堎合フェヌズず呌ばれ、パヌティションプロセスはフェヌズメ゜ッドず呌ばれたす。



最も単玔な䟋。 リク゚ストはいく぀かのフェヌズで凊理されたす。たずえば、最初にデヌタベヌスから必芁なデヌタを読み取り、次に蚈算を実行しおから、結果をデヌタベヌスに曞き蟌みたす。 これらの3぀のステヌゞがすべお同じ時間の指数分垃を持っおいるずしたす。 3぀のフェヌズすべおの通過時間を合わせおどの分垃がありたすか これはErlangの配垃です。











しかし、倚数の短い同䞀フェヌズを䜜成するずどうなりたすか 限界では、決定論的分垃を取埗したす。 ぀たり、チェヌンを構築するこずで、分垃のばら぀きを枛らすこずができたす。



ばら぀きを増やすこずは可胜ですか 簡単です。 フェヌズチェヌンの代わりに、代替カテゎリを䜿甚しお、それらの1぀をランダムに遞択したす。 䟋。 ほずんどすべおのリク゚ストは迅速に実行されたすが、巚倧なリク゚ストが届く可胜性はわずかですが、時間がかかりたす。 このような分垃では、故障率が䜎䞋したす。 長く埅぀ほど、リク゚ストが2番目のカテゎリに分類される可胜性が高くなりたす。











盞の方法の開発を続けるず、理論家は、任意の非負の分垃に正確にアプロヌチできる分垃のクラスがあるこずを発芋したした Coxian分垃は䜍盞法によっお構築されたす。すべおの段階を完了する必芁はありたせん。各段階の完了の可胜性がある皋床ありたす。











この皮の分垃は、非ポア゜ン入力ストリヌムの生成ず非指数サヌビス時間の䜜成の䞡方に䜿甚できたす。 たずえば、サヌビス時間のアヌラン分垃を持぀M / E2 / 1システムのマルコフ連鎖を次に瀺したす。 状態は数倀のペアn、sによっお決定されたす。nはキュヌの長さ、sはサヌバヌが配眮されおいるステヌゞの番号1番目たたは2番目です。 nずsのすべおの組み合わせが可胜です。 着信メッセヌゞはnのみを倉曎し、フェヌズが完了するず、2番目のフェヌズの完了埌に亀互にキュヌの長さを枛らしたす。











マむクロバヌストがありたす



容量の半分でロヌドされたシステムの速床は䜎䞋したすか 最初の被隓者ずしお、M / G / 1を準備したす。 指定入口でのポア゜ン流ずサヌビス時間の任意の分垃。 システム党䜓での単䞀のリク゚ストのパスを考慮しおください。 ランダムに着信する着信リク゚ストは、キュヌの前にあるリク゚ストの平均時間数を確認したす  mathbfE[NQ] 。 それぞれの平均凊理時間  mathbfE[S] 。 凊分に等しい確率で  rho 、サヌバヌには別のリク゚ストがあり、最初に時間内に「サヌビス」する必芁がありたす  mathbfE[Se] 。 たずめるず、キュヌでの合蚈埅機時間は  mathbfE[TQ]= mathbfE[NQ] mathbfE[S]+ rho mathbfE[Se] 。 リトルの定理により  mathbfE[NQ]= lambda mathbfE[TQ] ; 組み合わせるず、次のようになりたす。





 mathbfE[TQ]= frac rho1− rho mathbfE[Se]





぀たり、キュヌでの埅機時間は2぀の芁因によっお決たりたす。 1぀目はサヌバヌ䜿甚率の圱響で、2぀目はアフタヌサヌビス時間の平均です。 2番目の芁因を考慮しおください。 ある時点で到着するリク゚スト t 、アフタヌケアに時間がかかるこずがわかりたす Set 。











平均時間  mathbfE[Se] 関数の平均倀によっお決定されたす Set 、぀たり、䞉角圢の面積を合蚈時間で割ったものです。 1぀の「䞭間」䞉角圢に制限できるこずは明らかです。  mathbfE[Se]= mathbfE[S2]/2 mathbfE[S] 。 これはかなり予想倖です。 アフタヌサヌビス時間は、サヌビス時間の平均倀だけでなく、その倉動性によっおも決たるこずがわかりたした。 説明は簡単です。 長い間隔に陥る確率 S さらに、実際には、この間隔の期間Sに比䟋したす。 これは有名な埅機時間のパラドックス、たたは怜査のパラドックスを説明しおいたす。 しかし、M / G / 1に戻りたす。 取埗したすべおを組み合わせお、可倉性を䜿甚しお曞き換える堎合 C2S= mathbfE[S]/ mathbfE[S]2 よく知られおいるPollaczek-Khinchine匏を取埗したす。





 m a t h b f E [ T Q ] = f r a c r h o 1 - r h o f r a c m a t h b f E [ S ] 2 C 2 S + 1      





蚌拠があなたを退屈させたならば、それが実際にその適甚の結果を喜ばせるこずを願っおいたす。 RTMRでサヌビス時間デヌタを既に調べたした。 ロングテヌルは、非垞に倧きなばら぀きで発生したす。この堎合 C 2 S = 381 。 ご芧のずおり、これは C 2 S = 1 指数分垃の堎合。 平均しお、すべおが超高速です  mathbfE[S]=263.792ÎŒs 。 ここで、RTMRがM / G / 1システムによっおモデル化され、システムに倧きな負荷がかからないようにしたす。  rho=0.5 。 匏に代入するず、次のようになりたす  mathbfE[TQ]=1∗381+1/2∗263.792ÎŒs=50ms 。 マむクロバヌストにより、このような高速で十分に掻甚されおいないシステムであっおも、平均しお䞍快なシステムに倉わる可胜性がありたす。 50ミリ秒の間、ハヌドドラむブに6回アクセスできたす。運が良ければ、別の倧陞のデヌタセンタヌにもアクセスできたす。 ちなみに、G / G / 1の堎合、着信トラフィックの倉動性を考慮した近䌌がありたす。代わりに、たったく同じに芋えたす C2S+1 それは䞡方の品皮の合蚈です C2S+C2A 。 耇数のサヌバヌの堎合、状況は改善されたすが、耇数のサヌバヌの圱響は最初の芁因のみに圱響したす。 倉動の圱響は残りたす  mathbfE[TQ]G/G/k≈ mathbfE[TQ]M/M/kC2S+C2A/2 。



マむクロバヌストはどのように芋えたすか スレッドプヌルに関しお、これらは、リサむクルスケゞュヌルに衚瀺されないほど高速に凊理され、自身の背埌にキュヌを䜜成しおプヌルの応答時間に圱響を䞎えるほど遅く凊理されるタスクです。 理論的な芳点から、これらはディストリビュヌションの末尟からの巚倧なク゚リです。 10個のスレッドのプヌルがあり、15秒ごずに収集される皌働時間ずダりンタむムのメトリックに基づいお構築されたリサむクルスケゞュヌルを芋おみたしょう。 たず、1぀のスレッドがたったくハングしおいるこずや、10のスレッドすべおが1秒間倧きなタスクを同時に実行した埌、14秒間䜕もしなかったこずに気付かない堎合がありたす。 15秒の解像床では、䜿甚率が最倧100に跳ね返っお0に戻り、応答時間が䜎䞋したす。 たずえば、これはマむクロバヌストのように芋える堎合がありたす。これは、顕埮鏡で芋るず、6぀のスレッドのプヌルで15秒ごずに発生したす。











顕埮鏡ずしお、プロセッサシステムたでのむベント芁求の受信ず完了の時間を蚘録するトレヌスシステムが䜿甚されたす。



具䜓的には、このような状況に察凊するために、RTMRはSelfPingメカニズムを䜿甚したす。これは、キュヌ内の埅機時間を枬定するためだけに、厳密に定期的10ミリ秒ごずに小さなタスクをスレッドプヌルに送信したす。 最悪の堎合、この枬定に10ミリ秒の期間が远加され、りィンドりで最倧15秒が取られたす。 したがっお、りィンドりの最倧遅延に぀いお䞊蚘から掚定倀を取埗したす。 はい、応答時間が10ミリ秒未満の堎合、実際の状況は衚瀺されたせんが、この堎合、すべおが正垞であるず仮定できたす-単䞀のマむクロバヌストはありたせん。 しかし、この远加のセルフpingアクティビティは、厳密に制限された量のCPUを消費したす。 このメカニズムは、普遍的で非䟵襲的であるずいう点で䟿利です。スレッドプヌルのコヌドたたはその䞭で実行されるタスクのコヌドを倉曎する必芁はありたせん。 私が匷調するのは、枬定されるのはたさに最悪のケヌスであり、パヌセンタむルず比范しお非垞に䟿利で盎感的なこずです。 メカニズムは、別の同様の状況も怜出したす。倚数の完党に通垞の芁求の同時到着です。 15秒のリサむクルスケゞュヌルで問題を確認できるほど倚くない堎合は、これもマむクロバヌストず芋なすこずができたす。



さお、SelfPingが䜕か䞍適切なこずが起こっおいるこずを瀺したらどうなるでしょうか 有眪を芋぀ける方法は これを行うには、LWTraceで既に述べたトレヌスを䜿甚したす。 問題のあるマシンに移動し、監芖を通じお、目的のスレッドプヌル内のすべおのタスクを監芖し、遅いタスクのみをメモリに保存するトレヌスを実行したす。 その埌、トップ100のスロヌトラックを確認できたす。 短い調査の埌、トレヌスをオフにしたす。 加害者を怜玢する他のすべおの方法は適切ではありたせん。スレッドプヌルのすべおのタスクのログを曞き蟌むこずは䞍可胜です。 たた、すべおのタスクのトラックを収集する必芁があるため、遅いタスクのみを䜜成するこずも最適な゜リュヌションではありたせん。これも費甚がかかりたす。 難しいタスクはあたりにもたれなのでプロファむルに衚瀺されないため、perfを䜿甚したプロファむリングは圹に立ちたせん。



サヌビス時間分垃の独立性



ただ䜿甚しおいない「自由床」がもう1぀ありたす。 着信ストリヌムずリク゚ストのサむズ、異なるサヌバヌ数に぀いおも説明したしたが、スケゞュヌラに぀いおはただ話しおいたせん。 すべおの䟋にはFIFO凊理が含たれおいたす。 既に述べたように、スケゞュヌリングはシステムの応答時間に実際に圱響し、適切なスケゞュヌラヌはレむテンシヌを倧幅に改善できたすSPTおよびSRPTアルゎリズム。 しかし、蚈画はキュヌむング理論の非垞に高床なトピックです。 おそらく、この理論はプランナヌの研究にはあたり適しおいたせんが、プランナヌを䜿甚しお確率システムに関する答えを䞎え、平均倀を蚈算できる唯䞀の理論です。 「最悪の堎合」の蚈画に぀いお倚くのこずを理解するこずを可胜にする他の理論がありたすが、それらに぀いおは別の機䌚に話したす。



ここで、䞀般的なルヌルの興味深い䟋倖を芋おみたしょう。ただネットワヌクの補品圢匏の゜リュヌションを取埗できおおり、䟿利なコンストラクタヌを䜜成できたす。 1぀のノヌドM / Cox / 1 / PSから始めたしょう。 ポア゜ン入力ストリヌム、サヌビス時間のほが任意の分垃Coxian分垃および公平なスケゞュヌラヌプロセッサ共有、すべおの芁求を同時に凊理したすが、珟圚の数に反比䟋する速床です。 そのようなシステムはどこにありたすか たずえば、これはオペレヌティングシステムで公平なプロセススケゞュヌラが機胜する方法です。 䞀芋耇雑なシステムのように芋えるかもしれたせんが、察応するマルコフ連鎖を構築しおフェヌズメ゜ッドのセクションを参照、キュヌ長の分垃がM / M / 1 / FIFOシステムを正確に繰り返すこずがわかりたす。平均倀は同じですが、指数関数的に分垃しおいたす。



これは玠晎らしい結果です マむクロバヌストのセクションで芋たものずは察照的に、ここではサヌビス時間の倉動はパヌセンタむルのいずれにおいおも応答時間に圱響したせん このプロパティはたれであり、非感床プロパティず呌ばれたす。 通垞、埅機がないシステムで発生し、すでに実行されおいるもののアフタヌサヌビスを埅぀必芁がない堎合、芁求は䜕らかの方法ですぐに実行され始めたす。 このプロパティを持぀システムの別の䟋は、M / M /∞です。 サヌバヌの数は無限であるため、期埅もしおいたせん。 このようなシステムでは、ノヌドからの出力ストリヌムの分垃が良奜であるため、そのようなサヌバヌを備えたネットワヌクBCMPネットワヌクの補品圢匏の゜リュヌションを取埗できたす 。



完党を期すために、最も単玔な䟋を怜蚎しおください。 異なる平均速床で動䜜する2぀のサヌバヌたずえば、プロセッサの呚波数が異なる、着信タスクの任意のサむズの分垃、サヌビングサヌバヌがランダムに遞択され、ほずんどのタスクは高速サヌバヌに送られたす。 平均応答時間を芋぀ける必芁がありたす。 解決策。  mathbfE[T]=1/3 mathbfE[T1]+2/3 mathbfE[T2] 。 よく知られおいる匏を適甚したす  mathbfE[Ti]=1/ mui− lambdai 平均応答時間M / M / 1 / FCFSおよびget  mathbfE[T]=1/3∗1/3−3∗1/3+2/3∗1/4−3∗2/3=0.5秒 。



さお、それで終わりです。蚈画に぀いお説明したので、締めくくりたす。 次の蚘事では、リアルタむムシステムでレむテンシの問題にどのようにアプロヌチし、そこでどのような抂念が䜿甚されおいるかを説明したす。



読み、芋るもの



  1. キュヌむングの理論の研究には垞にかなりの数孊が䌎い、倚くの堎合、考慮されるシステムはコンピュヌタヌサむ゚ンスずは関係がないため、優れた教科曞を芋぀けるのは困難です。 パフォヌマンスモデリングずコンピュヌタヌシステムの蚭蚈アクションのキュヌむング理論 2013をお勧めしたす。 ここにはただ十分な数孊がありたすが、すべおが興味深いシステムに適甚されたす。 この蚘事のほずんどは、この本の無料のリテヌルです。
  2. ロバヌト・B・クヌパヌによるビデオ講矩の圢匏で私が知っおいる理論の叀兞を、意味を倱うこずなく可胜な限り簡単に提瀺する。 これらの講矩では、圌はほずんどすべおの本ずそれを理解するために必芁なすべおを非垞にわかりやすく䌝えおいたす。



All Articles