Бүх салбар › Мэдээллийн технологийн үйл ажиллагаа — сайтын найдвартай байдал 🖥️ Мэдээллийн технологийн үйл ажиллагаа — сайтын найдвартай байдал Бодит загвар Та вэб үйлчилгээнд дуудлагын жижүүр: жишээнүүдийн флотын өмнө ачаалал тэнцвэржүүлэгч, өгөгдлийн сангийн өмнө кэш, 99.9 % бэлэн байдлын зорилт. Минут бүр загвар сурах бичгийн томьёогоор дарааллын саатал, хугацаа хэтрэлт, кэшийн амжилт, өгөгдлийн сангийн ачааллыг тооцно — мөн таны шийдвэрийн зардлыг.
Та юу сурах вэ Бүрэн ашиглалтад ойр саатал яагаад огцом өсдөг (Erlang C), ачаалах саатал бүхий автомат өргөтгөл яагаад үргэлж хоцордог. Буцаахыг хэзээ шийдэхийг SLO, алдааны төсөв, шатах хурдны сэрэмжлүүлэг хэрхэн тодорхойлдог. Хүйтэн кэш өгөгдлийн сангийн тасалдал болж хувирдаг, ямар хөшүүрэг цаг хожуулдаг: хаях, бууруулах, халаах. Бодит симулятор JavaScript шаарддаг. Доорх бүх зүйл — загвар, түүний томьёо, эх сурвалж — түүнгүйгээр ч уншигдана.
Симулятор
Хүсэлтүүд 1125 · Алдааны хувь 0.00% · p99 саатал 342 ms · Үйлчилж байгаа жишээнүүд 10 (+0) · Кэшийн амжилтын хувь 77% · Өгөгдлийн сангийн ашиглалт 19% · Үлдсэн алдааны төсөв (30 хоног) 50.0% ⇉ 1125 хүсэлт/с ▶ ▶ ▶ ▶ ▶ ▶ ▶ ▶ ▶ ▶ · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ▶ 10 · ⚙ 0 · 52% · p99 342 ms Флотын ашиглалт 52% Кэшийн амжилтын хувь 77% Өгөгдлийн сангийн ашиглалт 19% ⚠ 0.00% · 🔥 0.0× 50% $ 4.00/h · Σ $0.00 ▶ Жишээ үйлчилж байна⚙ Жишээ эхэлж байна! Муу бүтээлт дээрх жишээ· Сул хэсэг• Ирж буй хүсэлтүүдУдирдлага Кэшийн халаалтын ажил ажиллуул 6 минутын турш халуун түлхүүрүүдийг ачаална (минут тутамд кэшийн +12 %), нэмэлт 600 өгөгдлийн сангийн лавлагаа/с-ийн үнээр.
Хувилбарыг буцаа Сүүлийн сайн бүтээцийг шинэ флийт дээр дахин байршуулж (5 min, хоёр удаа тооцогдоно), дараа нь урсгалыг шилжүүлнэ. Дахин дарвал бэлтгэл дахин эхэлнэ; муу бүтээц ажиллахгүй байхад зөвхөн мөнгө үрнэ.
Үзүүлэлт Үлдсэн алдааны төсөв (30 хоног)
50.0 %
хэвийн
Шатах хурд (1 h) 0.0 × Хүсэлтүүд 1125 req/s Үйлчилж байгаа жишээнүүд 10 Эхэлж байгаа жишээнүүд 0 Кэшийн амжилтын хувь 77 % Өгөгдлийн сангийн ашиглалт 19 % Хаясан урсгал 0 % Флотын зардал 4.00 $/h Одоогийн зардал 0.00 $ Кэшлэсэн хариултуудын дундаж нас 30 s Муу бүтээлт дээрх урсгал 0 % Боломжит зөвлөмжүүд 100 %
Хандлага Диаграмын үзүүлэлт Алдааны хувь p99 саатал Үлдсэн алдааны төсөв (30 хоног) Флотын ашиглалт Шатах хурд (1 h) Хүсэлтүүд Үйлчилж байгаа жишээнүүд Эхэлж байгаа жишээнүүд Кэшийн амжилтын хувь Өгөгдлийн сангийн ашиглалт Хаясан урсгал Флотын зардал Одоогийн зардал Кэшлэсэн хариултуудын дундаж нас Муу бүтээлт дээрх урсгал Боломжит зөвлөмжүүд Алдааны хувь: — % 20.00 0.00 Хямралын хувилбарууд Түвшин 1 · Муу хувилбар 09:10-д шинэ бүтээлт гарна. Сар аль хэдийн хүнд байсан: алдааны төсвийн ердөө 20 % үлдсэн. Байршуулсны дараа хэдэн минутын дотор шатах хурдны сэрэмжлүүлэг дуугарна. Төсвөө хамгаал.
Төгсгөлд үлдсэн алдааны төсөв ≥ 18.5 % Байршуулсны дараах алдааны дундаж хувь ≤ 0.65 % Флотын зардал ≤ $9.50 Түвшин 2 · Гэнэтийн олон хүн Үйлчилгээний холбоос хурдан тархаж байгаа бөгөөд өнөө өглөө хэзээ нэгэн цагт урсгалын өсөлт хүлээгдэж байна — хэзээ, хэр том гэдгийг хэн ч мэдэхгүй. Шинэ инстанс өнөөдөр асахад 8 минут шаардана. Тэр ирэхэд сул хүчин чадалд мөнгө шатаалгүйгээр алдаа, саатлыг бага байлга.
Алдааны дундаж хувь ≤ 0.2 % p99 саатлын дундаж ≤ 400 ms Хаясан урсгалын дундаж ≤ 5 % Нийт зардал ≤ $21 Зөвлөмжүүд цагийн ≥ 85 %-д боломжтой Түвшин 3 · Хүйтэн кэш Үдийн оргилд засвар үйлчилгээний скрипт бүх кэшийг цэвэрлэнэ. Хүсэлт бүр одоо өгөгдлийн сан руу очно, энэ нь ердийн 85 % амжилтын хувьд зориулагдсан. Өгөгдлийн санг хэт ачаалахгүйгээр үйлчилгээг сэргээ.
Алдааны дундаж хувь ≤ 1.5 % Эхний минутын дараа өгөгдлийн сангийн ашиглалт хэзээ ч 90 %-иас дээш биш Кэшлэсэн хариултуудын дундаж нас дунджаар ≤ 90 с Нийт зардал ≤ $9 Зөвлөмжүүд цагийн ≥ 80 %-д боломжтой Хаясан урсгалын дундаж ≤ 5 % Үндэслэл — тоонуудын цаадах загвар Симуляторын ашигладаг холбоос бүрийг эх сурвалжтай нь үзүүллээ. Таамаглал гэж тэмдэглэсэн тогтмолууд нь жишээ тохируулга юм.
Загварт ашигласан бусад ажиллагааны тогтмолууд. 16 workers/instance · app time 50 ms (+20 ms and +1 query with the feature on) · 2 queries/request · DB 4,000 queries/s · 20,000 hot objects · cache refill τ = 30 min (slower while the DB is saturated) · warm-up job +12 %/min for 6 min, +600 queries/s · timeout 2 s · 30 % low-priority traffic · bad build +5 % errors, ×1.25 CPU · rollback 5 min · $0.40 per instance-hour · scale-in by ≤ 20 % of the fleet after 10 quiet minutes · up to 40 instancesТаамаглал: ажилтны тоо, үйлчилгээний хугацаа, өгөгдлийн сангийн чадал, кэшийн хэмжээ, дахин дүүргэх хурд, үнэ, муу бүтээлтийн алдааны хувь нь дунд зэргийн вэб үйлчилгээний жишээ утгууд. Санамсаргүй байдал: seed-тэй mulberry32 генератор; ашигласан тархалтууд — жигд, экспоненциал (урвуу CDF), хэвийн (Box–Muller), Пуассон (Knuth). Seed харагдах бөгөөд хуваалцаж болно.
Эх сурвалж Site Reliability Engineering — Ch. 3 Embracing Risk (error budgets), Ch. 4 Service Level Objectives — Beyer, Jones, Petoff, Murphy (eds.), O'Reilly, 2016The Site Reliability Workbook — Ch. 5 Alerting on SLOs (burn rate; 14.4× over 1 h = 2 % of a 30-day budget) — Beyer, Murphy, Rensin, Kawahara, Thorne (eds.), O'Reilly, 2018Teletraffic Engineering Handbook — Erlang C formula; waiting-time distribution for M/M/n, FCFS — ITU-D Study Group 2 Question 16/2 (V. B. Iversen), 2005J. D. C. Little — A Proof for the Queuing Formula: L = λW — Operations Research 9(3):383–387, 1961J. Jung, A. W. Berger, H. Balakrishnan — Modeling TTL-based Internet Caches — IEEE INFOCOM 2003, 2003M. Harchol-Balter — Performance Modeling and Design of Computer Systems: Queueing Theory in Action (M/M/k, server farms, capacity provisioning) — Cambridge University Press, 2013 Үүнийг мэргэжлээр хэн хийдэг Боловсролын загвар — үйл ажиллагааны шийдвэрт зориулаагүй. Бодит байгууламжууд тогтмол бүрийг өөрийн тоног төхөөрөмж, өгөгдөлд тохируулдаг.