Санхүү — төлбөрийн үйл ажиллагаа Бодит загвар

Та худалдаачид ба картын гаргагчдын хооронд байрлах төлбөрийн свитчийн үйл ажиллагааны ширээнд сууж байна. Минут бүр секундэд ойролцоогоор 400 гүйлгээ ирнэ; тус бүрийг залилангаар оноож, чөлөөтэй холболтын слот хүлээж, хариу авахаар гаргагч руу дамжуулна. Загвар сурах бичгийн томьёогоор дараалал, хугацаа хэтрэлт, клиентийн дахин оролдлого, залилан шүүлтүүрийн солилцоо, stand-in эрсдэлийг тооцоолно. Дүнг ерөнхий мөнгөн нэгжээр (u) өгсөн. Зөвхөн боловсролын симуляци — санхүүгийн, хууль эрх зүйн, хөрөнгө оруулалтын зөвлөгөө биш.

Та юу сурах вэ

Симулятор

Цаг 0 мин
Ирсэн ачаалал (шинэ + дахин оролдлого) 400 · Дахин оролдлого 0 · Сайн хэрэглэгчийн зөвшөөрлийн хувь 99.9% · Зөвшөөрлийн хугацаа 330 ms · Завгүй холболтын слот 69% · Ажиллаж буй сервер 6 (+0) · Залилангийн түвшин (зөвшөөрсөн дүнгийн хувь) 10.4 bp · Гаргагчийн хугацаа хэтрэлт 0.0% · Stand-in эрсдэл 0.00 M uЗалилангийн шүүлтүүрt = 3.00σ✓ 99.9% · ? 0.0% · ✗ 0.1%Зогсоосон залилан 31%Залилангийн түвшин(зөвшөөрсөн дүнгийнхувь) 10.4 bp400 tx/s · ↻ 0Зөвшөөрлийн серверүүд▶▶▶▶▶▶··················Завгүй холболтын слот 69%330 ms · ✗ 0.0%A гаргагчид✓ 250 msB гаргагчид✓ 250 ms⏱ 8 s · ⌛ 0.0% · Σ 0 uСайн хэрэглэгчийн зөвшөөрлийн хувь 99.9%Stand-in эрсдэл 0.00 M u
  • Сервер ажиллаж байна
  • Сервер эхэлж байна
  • Чөлөөтэй серверийн тавиурын байр
  • Гаргагч хэвийн хариулж байна
  • Гаргагч удаан эсвэл унасан
  • Stand-in боловсруулалт асаалттай
  • Ирж буй гүйлгээ

Удирдлага

Сервер бүр 32 холболтын слоттой. Нэмсэн сервер эхлэхэд 5 минут болно; сервер бүр эхэлж байгаа эсэхээс үл хамааран тооцогдоно.

Хүчин чадлын дээд тал нь 90 %-ийг хүлээн авч, илүүг дараалалд зогсож хугацаа хэтрүүлэхийн оронд тэр дор нь "дараа дахин оролдоно уу" гэж хариулна.

Худалдаачид техникийн алдааг хэрхэн дахин оролддог (3 хүртэл удаа). Шууд = дараагийн минутад; backoff = санамсаргүй экспоненциал backoff, дундаж саатал 1, 2, 4 минут.

Энэ оноотой эсвэл түүнээс дээш оноотой гүйлгээг татгалзана. Оноо жинхэнэ урсгалын стандарт хазайлтаар илэрхийлэгдэнэ: бага байх тусам илүү их залилан зогсч, илүү олон сайн хэрэглэгч татгалзагдана.

Босгоос ийм хэмжээгээр доогуур оноотой гүйлгээнд шийдвэрийн оронд хэрэглэгчид нэмэлт шалгалт тавина: жинхэнэ хэрэглэгчийн 85 % нь үүнийг гүйцэтгэж, залилангийн 5 % нь давна. 0 = унтраалттай.

Холболтын слот гаргагчийн хариуг хэр удаан хүлээх вэ. Үүний дараа свитч буцаалт илгээж stand-in ашиглана, эсвэл "гаргагч хүрэх боломжгүй" гээд татгалзана.

Гаргагч цаг тухайд нь хариулаагүй үед свитч түүний өмнөөс энэ дүн хүртэл зөвшөөрнө. Stand-in зөвшөөрөл бүр нь гаргагчийн хэзээ ч шалгаагүй эрсдэл. 0 = унтраалттай.

Үзүүлэлт

Сайн хэрэглэгчийн зөвшөөрлийн хувь
99.9%
хэвийн
Зөвшөөрлийн хугацаа
330ms
хэвийн
Залилангийн түвшин (зөвшөөрсөн дүнгийн хувь)
10.4bp
хэвийн
Завгүй холболтын слот
69%
хэвийн
Эрүүл гаргагчдын зөвшөөрлийн хувь99.9 %
Залилангийн дүрмээр татгалзсан сайн хэрэглэгч1.3 ‰
Step-up руу илгээсэн гүйлгээ0.0 %
Зогсоосон залилан31 %
Шинэ гүйлгээ400 tx/s
Ирсэн ачаалал (шинэ + дахин оролдлого)400 tx/s
Дахин оролдлого0 tx/s
Хаясан ("дараа оролдоно уу" гэж хариулсан)0 tx/s
Дараалалд хаясан0.0 %
Гаргагчийн хугацаа хэтрэлт0.0 %
Stand-in зөвшөөрөл0 tx/s
Ажиллаж буй сервер6
Эхэлж байгаа серверүүд0
Серверийн зардлын хурд36 u/h
Одоогоор серверийн зардал0 u
Stand-in эрсдэл0.00 M u
Одоогоор зөвшөөрсөн залилан0.00 M u
Одоогоор алдсан сайн гүйлгээ0.0 k tx
Дахин оролдохыг хүлээж буй гүйлгээ0 tx
Гаргагчийн B бүлгийн хоцролт (дундаж)250 ms

Хандлага

Сайн хэрэглэгчийн зөвшөөрлийн хувь: — %100.00.0

Хямралын хувилбарууд

Түвшин 1 · Хямдралын оргил урсгал

Томоохон онлайн хямдрал 5 дахь минутад эхэлж, урсгалыг 45 минутын турш хоёр дахин нэмэгдүүлж секундэд ойролцоогоор 800 гүйлгээ болгоно. Свитч 6 сервертэй, ердийн өдөр ойролцоогоор 70 % завгүй байхаар тооцоолсон. Худалдаачид техникийн алдаа бүрийг шууд дахин оролддог. Сайн хэрэглэгчдийг зөвшөөрч, хариуг хурдан байлгаж, хэрэггүй хүчин чадал бүү худалдан ав.

  • Хямдралаас хойш сайн хэрэглэгчийн дундаж зөвшөөрөл ≥ 95 %
  • Дундаж зөвшөөрлийн хугацаа ≤ 500 ms
  • Серверийн зардал ≤ 75 u

Түвшин 2 · Залилангийн давалгаа

5 дахь минутад хулгайлсан картын мэдээллийн багц ашиглагдаж эхэлнэ: урсгал дахь залилангийн хувь 0.1 %-иас 1 % болж үсэрнэ. Татгалзах босго ердийн өдрүүдэд (3σ) тохируулагдсан, step-up унтраалттай. Сайн хэрэглэгчдийг буцаахгүйгээр залилангийн түвшнийг бууруул.

  • Залилангийн дундаж түвшин ≤ 25 bp
  • Сайн хэрэглэгчийн дундаж зөвшөөрөл ≥ 98 %
  • Дүрмээр татгалзсан сайн хэрэглэгч ≤ 5 ‰

Түвшин 3 · Гаргагчийн тасалдал

5 дахь минутад B бүлгийн гаргагчид — нийт урсгалын дөрөвний нэг — дундаж хариу 12 секунд болтлоо удааширна. Свитч хариуг 8 s хүртэл хүлээдэг, stand-in байхгүй, 6 сервертэй. Эрүүл гаргагчдын хэрэглэгчдийг урсгалтай байлга, B бүлгийг аюулгүй чадах хэмжээгээрээ үйлчил, stand-in эрсдэл ба зардлыг хяналтад байлга.

  • Эрүүл гаргагчдын хэрэглэгчийн дундаж зөвшөөрөл ≥ 90 %
  • Сайн хэрэглэгчийн дундаж зөвшөөрөл ≥ 86 %
  • Stand-in эрсдэл ≤ 9 M u
  • Серверийн зардал ≤ 65 u

Үндэслэл — тоонуудын цаадах загвар

Симуляторын ашигладаг холбоос бүрийг эх сурвалжтай нь үзүүллээ. Таамаглал гэж тэмдэглэсэн тогтмолууд нь жишээ тохируулга юм.

Шинэ гүйлгээ суурь хурд ба хямдралын өсөлтийн үржвэрээр ирнэ; минут тутмын тоо санамсаргүй (Пуассон, хэвийн ойролцоолол) бөгөөд бага зэрэг үсэрдэг.
λ(t) = base × surge(t) (2-min lag); count/min ≈ N(60λ, √(60λ)) × (1 + N(0, 0.03))[2]Таамаглал: слотын тоо, үйлчилгээ ба гаргагчийн хугацаа, онооны ялгаа, step-up давах хувь, дэмий ажлын хувь, дүн, үнэ нь дунд хэмжээний свитчийн жишээ утгууд бөгөөд ямар ч бодит сүлжээний тоо биш.
Бинормал залилангийн оноо: жинхэнэ ба залилангийн оноо d′ зайтай хоёр хэвийн муруй; босго ROC муруй дээрх нэг цэгийг сонгоно.
genuine score ~ N(0,1), fraud ~ N(d′,1), d′ = 2.5; FPR(t) = 1 − Φ(t), TPR(t) = 1 − Φ(t − d′); AUC = Φ(d′/√2) ≈ 0.96[6][7]Таамаглал: слотын тоо, үйлчилгээ ба гаргагчийн хугацаа, онооны ялгаа, step-up давах хувь, дэмий ажлын хувь, дүн, үнэ нь дунд хэмжээний свитчийн жишээ утгууд бөгөөд ямар ч бодит сүлжээний тоо биш.
Зардлын хувьд оновчтой босго: үнэний харьцаа суурь хувиар жинлэсэн зардлын харьцаанаас давахад татгалз — арав дахин олон залилан түүнийг ln 10 / d′ ≈ 0.9σ доош зөөнө.
decline when e^(d′x − d′²/2) ≥ (1 − π)·c_FP / (π·c_FN) ⇒ t* = [ln((1 − π)c_FP/(π c_FN)) + d′²/2] / d′[8][7]
Step-up: босгоос доош зурвас дахь оноотой гүйлгээг шийдэхийн оронд шалгана.
scores in [t − b, t) are challenged: genuine pass 85 %, fraud pass 5 %; scores ≥ t declined[10]Таамаглал: слотын тоо, үйлчилгээ ба гаргагчийн хугацаа, онооны ялгаа, step-up давах хувь, дэмий ажлын хувь, дүн, үнэ нь дунд хэмжээний свитчийн жишээ утгууд бөгөөд ямар ч бодит сүлжээний тоо биш.
Гаргагчийн хоцролт экспоненциал; слот хоцролт эсвэл хугацаа хэтрэлтийн аль эрт ирэх хүртэл эзлэгдэнэ.
L ~ Exp(mean m); E[min(L, T)] = m(1 − e^(−T/m)), P(L > T) = e^(−T/m); S = 80 ms + forwarded × Σ share·E[min(L,T)][2][9]
Литлийн хууль: завгүй слот = ирэх хурд × эзлэх хугацаа.
busy slots = λ·S (Little) ⇒ utilization = λ·S / (32 × servers)[3]
Эрланг C: гүйлгээ чөлөөтэй слот хүлээх магадлал, мөн 2 секундийн дарааллын хугацаа хэтрэлтээс урт хүлээх магадлал.
P(W > 2 s) = C(a, N)·e^(−(N/S − λ)·2 s), a = λS; mean wait = C / (N/S − λ)[1][2]
Хүчин чадлаас давсан үед свитч дараа нь хаях хүсэлтүүдэд ч ажил зарцуулдаг тул ачаалал өсөхөд ашигтай дамжуулалт буурдаг; ачаалал хаях нь илүүг хямд татгалзана.
λ ≥ N/S: goodput = (N/S − ω·λ)/(1 − ω), ω = 0.3; load shedding admits ≤ 0.9·N/S and answers the rest at once[4][5]Таамаглал: слотын тоо, үйлчилгээ ба гаргагчийн хугацаа, онооны ялгаа, step-up давах хувь, дэмий ажлын хувь, дүн, үнэ нь дунд хэмжээний свитчийн жишээ утгууд бөгөөд ямар ч бодит сүлжээний тоо биш.
Клиентийн дахин оролдлого: техникийн алдаа бүрийг гурав хүртэл удаа, шууд эсвэл санамсаргүй экспоненциал backoff-оор дахин оролдоно.
failed attempt → retry with p = 0.95, ≤ 3 retries; immediate: next minute; backoff: delay ~ Exp(mean 1, 2, 4 min)[4][5]Таамаглал: слотын тоо, үйлчилгээ ба гаргагчийн хугацаа, онооны ялгаа, step-up давах хувь, дэмий ажлын хувь, дүн, үнэ нь дунд хэмжээний свитчийн жишээ утгууд бөгөөд ямар ч бодит сүлжээний тоо биш.
Гаргагчийн хугацаа хэтрэлт, буцаалт, stand-in: дүн логнормал тул хязгаараас доош хувь ба зөвшөөрсөн хэмжээ хэвийн CDF-ээс гарна.
issuer timeout → reversal; stand-in approves if amount ≤ limit: P = Φ((ln L − μ)/σ), volume = e^(μ+σ²/2)·Φ((ln L − μ − σ²)/σ)[9][11]
Зөвшөөрсөн дүнгийн суурь пунктээр залилангийн түвшин; жижиг зайн картын төлбөрийн жишиг хэмжүүр болгон 13 bp ашиглана.
fraud rate = approved fraud amount / approved amount × 10,000 bp (reference scale: 13 bp)[10]
Загварын ашигладаг бусад ажиллагааны тогтмолууд.
32 slots per server, 2–24 servers, +5 min boot, 6 u per server-hour · switch time 80 ms · queue timeout 2 s · issuer latency 250 ms (group B = 25 % of traffic, ±15 % per minute) · amounts lognormal, median 40 u, σ = 1, fraud ×1.5 · ω = 0.3 · shedding at 90 % · reversal = 80 ms of switch timeТаамаглал: слотын тоо, үйлчилгээ ба гаргагчийн хугацаа, онооны ялгаа, step-up давах хувь, дэмий ажлын хувь, дүн, үнэ нь дунд хэмжээний свитчийн жишээ утгууд бөгөөд ямар ч бодит сүлжээний тоо биш.

Санамсаргүй байдал: seed-тэй mulberry32 генератор; ашигласан тархалтууд — жигд, экспоненциал (урвуу CDF), хэвийн (Box–Muller), Пуассон (Knuth). Seed харагдах бөгөөд хуваалцаж болно.

Эх сурвалж

  1. Teletraffic Engineering Handbook — Erlang C formula; waiting-time distribution for M/M/n, FCFS — ITU-D Study Group 2 Question 16/2 (V. B. Iversen), 2005
  2. M. Harchol-Balter — Performance Modeling and Design of Computer Systems: Queueing Theory in Action (M/M/k, capacity provisioning) — Cambridge University Press, 2013
  3. J. D. C. Little — A Proof for the Queuing Formula: L = λW — Operations Research 9(3):383–387, 1961
  4. Site Reliability Engineering — Ch. 22 Addressing Cascading Failures (retries, randomized exponential backoff, load shedding, work on requests past their deadline) — Beyer, Jones, Petoff, Murphy (eds.), O'Reilly, 2016
  5. N. Bronson, A. Aghayev, A. Charapko, T. Zhu — Metastable Failures in Distributed Systems — HotOS ’21, ACM, 2021
  6. T. Fawcett — An introduction to ROC analysis — Pattern Recognition Letters 27(8):861–874, 2006
  7. R. J. Bolton, D. J. Hand — Statistical Fraud Detection: A Review — Statistical Science 17(3):235–255, 2002
  8. C. Elkan — The Foundations of Cost-Sensitive Learning — IJCAI 2001, 2001
  9. ISO 8583-1:2003 Financial transaction card originated messages — Interchange message specifications — Part 1 (authorization, reversal messages) — ISO/TC 68/SC 9, 2003
  10. Commission Delegated Regulation (EU) 2018/389 — RTS on strong customer authentication, Annex: reference fraud rates (0.13 % for remote card payments up to EUR 100) — Official Journal of the European Union, 2018
  11. N. L. Johnson, S. Kotz, N. Balakrishnan — Continuous Univariate Distributions, Vol. 1 (lognormal distribution, partial moments) — Wiley, 1994

Үүнийг мэргэжлээр хэн хийдэг

Боловсролын загвар — үйл ажиллагааны шийдвэрт зориулаагүй. Бодит байгууламжууд тогтмол бүрийг өөрийн тоног төхөөрөмж, өгөгдөлд тохируулдаг.