WinUpGo
جستجو
CASWINO
SKYSLOTS
BRAMA
TETHERPAY
777 FREE SPINS + 300%
کازینو cryptocurrency به کازینو رمزنگاری Torrent Gear جستجوی تورنت همه منظوره شماست! دنده تورنت

رویدادهای زمان واقعی: معماری و امنیت

خوراک رویداد در زمان واقعی یک «سیستم گردش خون» از محصولات با gamification، ضد تقلب، راه اندازی CRM و پرداخت است. به منظور آن را به کار قابل پیش بینی در قله، جوایز تکراری نیست و داده های نشت نیست، یک معماری سخت مورد نیاز است: از پروتکل ها و اتوبوس به امضا، idemotency، privateers بودجه و مشاهده.


1) اهداف و الزامات

قابلیت اطمینان: تحویل حوادث با حداقل تاخیر (p95 ≤ 250 میلی ثانیه مصرف، p95 ≤ 1-2 ثانیه به مصرف کننده).

تحویل: حداقل یک بار حمل و نقل + منطقی دقیقا یک بار از طریق idempotence.

سفارش: سفارش توسط کلید (معمولا 'user _ id') با پنجره های مرتب سازی مجدد.

امنیت: MTLS، HMAC/JWT، چرخش کلید، حفاظت پخش/تکراری، به حداقل رساندن PII.

مقیاس: sharding افقی، فشار پشتی، محدود کردن نرخ، DLQ/پخش.

مدیریت پذیری: رجیستری طرح، نسخه، مهاجرت بدون خرابی.

انطباق: حسابرسی (WORM)، دروازه های RG/KYC، سیاست های جغرافیایی، GDPR/ناشناس سازی.


2) معماری مرجع (لایه به لایه)

1. تولید کنندگان (منابع): سرور بازی، کیف پول/پرداخت، KYC/AML، SDK های مشتری (وب/iOS/Android).

2. دروازه API (ورود): پذیرش HTTP/gRPC، اعتبار سنجی طرح، احراز هویت، HMAC/MTLS، عادی سازی زمان.

3. صف/جریان: Kafka/Rabbit/Cloud Pub/Sub - بافر، پارتیشن بندی شده توسط 'user _ id'.

4. پردازنده جریان: عادی، غنی سازی، مسیریابی موضوع، پرچم های ناهنجاری/ضد رباتها، ضبط بی نظیر.

5. مصرف کنندگان: قوانین/امتیاز، ارکستر پاداش، اتصالات CRM/CDP، ضد تقلب، سینک تحلیلی و.

6. ذخیره سازی: رویدادهای تغییر ناپذیر، storefronts، شاخص برای idemotency، ورود به سیستم حسابرسی.

7. قابلیت مشاهده: معیارها، سیاهههای مربوط، ردیابی، هشدارها ؛ وحشت → DLQ.

8. صفحه مدیریت: رجیستری طرح، کلید/اسرار، RBAC/ABAC، phicheflags، سرویس پخش.


3) پروتکل های تحویل: زمانی که از چه چیزی استفاده کنید

HTTP/JSON (وب سایت های سرور به سرور): ساده، سازگار، خوب برای شرکای خارجی. اضافه کردن HMAC + idempotency.

gRPC/Protobuf: تاخیر کم، طرح های دقیق، جریان بیدی برای خدمات داخلی.

WebSocket/SSE: فشار به مشتری، اشتراک UI به مدیران و پیشرفت.

CDC/Kafka Connect: هنگامی که منابع پایگاه داده/کیف پول هستند، نه خدمات تجاری.

توصیه: محیط بیرونی - HTTP + HMAC + MTLS ؛ در داخل - gRPC/Protobuf.


4) مدل رویداد و کنوانسیون

جی سون
{
« : « » « : «شرط»، «1 «. 3. 0»، « : « » « : « 183Z,» «کلید»: {«user_id": «u_12345»}، «ctx»: {
«session_id":» s_778 «،» پلت فرم «:» ios «،» geo «:» TR «،» device_fp": «fp_4a1...»
}، «بارگیری»: {
"game_id": "slot_wolf," "شرط": 0. 5، «برنده»: 1. 25، «ارز»: «EUR»، «ارائه دهنده»: «GameCo»
}، «sig»: {
«algo»: «HMAC-SHA256,» «بچه»: «k_2025_10,» «ts «: 1730061441، «مک»: «c7b7b3... f1»
}
}
قوانین و مقررات:
  • دو زمان 'رخ داده است در' (منبع) و 'مصرف شده در' (دروازه). اجازه دهید ساعت ± 300 ثانیه حرکت کند.
  • کلید مسیریابی چیزی است که سفارش را تعیین می کند (معمولا «user _ id»).
  • PII تنها در 'ctx '/' payload' در اصل به حداقل رساندن ؛ برای ویژگی های حساس، نشانه گذاری.

5) تحویل، سفارش و idemotence

حداقل یک بار حمل و نقل → تکراری و مرتب سازی مجدد امکان پذیر است.

منطق دقیق یک بار: نگه داشتن یک جدول idempotence با یک شاخص منحصر به فرد در '(event_id)' و/یا '(user_id، source_seq)' ؛ تکرار - بدون عملیات.

طرح SQL:
SQL
ایجاد event_log جدول (
کلید اصلی متن ، متن ، متن ، TIMESTAMPTZ، بارگیری JSONB
);

- درج دو برابر محافظت شده
INSERT INTO  ( ، ، بار)
ارزش ها (:event_id,:user_id,:event_type,:occurred_at,:payload)
در تعارض (event_id) هیچ کاری نکنید ؛

سفارش: تقسیم جریان توسط 'user _ id' + پنجره مرتب سازی مجدد 60-120 ثانیه در پردازنده. بعدها، حوادثی که در «پخش» توابع اصلاحی قرار می گیرند.


6) فشار پشتی و مدیریت اوج

Token-bucket rate limiting на ingress (هر IP، هر شریک، هر کلید).

قطع کننده مدار: با 5xx از مصرف کنندگان داخلی، تخریب → (خروج از رویدادهای اختیاری، صف افزایش فواصل بازپرداخت).

DLQ: پیام های دائمی اشتباه (bitmap، امضا نامعتبر، امضای TTL بیش از حد).

سرویس پخش: پخش DLQ انتخابی توسط «event _ id »/محدوده زمانی.


7) طرح ها و تکامل: چگونه به «شکستن» تشویق

رجیستری طرح: JSON طرح/Protobuf ؛ سیاست های سازگاری: عقب برای تولید کنندگان، رو به جلو برای مصرف کنندگان.

Versioning: 'schema _ version', major - تنها از طریق ficheflag و double-write (دو نوشتن).

قراردادها: ارتقاء طرح پس از دوره قناری و معیارهای سبز.

قانون اعتبار سنجی مثال YAML:
سازگاری یامل:
اجرای: حالت واقعی: blocked_fields عقب:
- محموله. SSN
- محموله. card_number required_fields:
- event_id
- event_type
- occurred_at

8) مدل تهدید و حفاظت

تهدیدها: جعل بدن، پخش مجدد، نشت PII، سازش کلیدی، مسمومیت طرحواره، DoS، MITM، سلب امضا.

حفاظت:
  • MTLS در محیط: گواهینامه های مشتری کوتاه مدت، CRL/OCSP.
  • امضای HMAC + 'X-Timestamp' و TTL (± 300 ثانیه).
  • JWT (credentials/OAuth2 مشتری) - برای محدودیت های مجوز و دامنه.
  • چرخش کلید (KMS): «بچه» در هدر ؛ برنامه چرخش 30-90 روز ؛ دوبار چک کردن پنجره مهاجرت.
  • Nonce/idempotency: «X-Request-Id» برای درخواست های جانبی (پرداخت، پاداش) ؛ TTL را برای مدتی نگه دارید.
  • محتوا نوع پینینگ، حداکثر اندازه بدن، اجازه لیست IP/ASN برای ادغام بحرانی.
  • ممیزی WORM از تمام ورودی خام payload + هدر (ذخیره سازی غیر قابل تغییر).
مثال تست HMAC (شبه کد):
پایتون بدن = درخواست. raw_body ts = int (درخواست) هدر [» X-Timestamp»])
assert abs (now () - ts) <= 300 # анти -replay kid = request. هدر [» X-کلید-ID»]
راز = kms واکشی (بچه)
mac = hmac_sha256 (راز، بدن)
ادعا hmac_eq (مک، درخواست. هدر [» X-امضا»])

9) حریم خصوصی، PII و RG/KYC

به حداقل رساندن: انتقال PII توسط لینک رمز (برای 5-15 دقیقه) به جای درون خطی ؛ ویرایش/ناشناس سازی در سیاهههای خام ممنوع است - از صفحات PII جداگانه استفاده کنید.

دسترسی: ABAC توسط صلاحیت و ویژگی های نقش ؛ همه می خوانند - به گزارش حسابرسی.

GDPR: استفاده از حق حذف از طریق نقشه برداری کلیدی برای پاک کردن PII بدون شکستن حقایق حوادث.

RG/KYC: رویدادهایی که نیاز به پاداش ارزشمند دارند، فقط با سطح KYC معتبر و پرچم RG «OK» پرش می کنند.


10) قابلیت مشاهده و SLO

SLO (مثال):
  • مصرف p95 ≤ 250 میلی ثانیه ؛ پایان دادن به پایان p95 ≤ 2 с ؛ عدم موفقیت ≤ 0 1 درصد در روز
  • امضای خطا (HMAC/JWT) ≤ 0. 02٪ از کل جریان.
  • نرخ پر شدن DLQ ≤ 0. 1%; «تکراری» پس از idemotency ≤ 0. 005%.
داشبورد:
  • RPS توسط منبع، p50/p95 تاخیر، 4xx/5xx، امضای خطا، زمان انحراف.
  • تاخیر توسط حزب، پردازش/ثانیه، DLQ را پر کنید، دوباره تلاش کنید، حجم پخش کنید.
  • Schemes: به اشتراک گذاری پیام ها توسط نسخه، نقض سازگاری.
  • ایمنی: نرخ rps-throttle، قطع کننده مدار، ناهنجاری های IP/ASN.
هشدارها (مثالها):
  • SRM جریان (اعوجاج شدید ترافیک از یک منبع).
  • تاخیر p95> هدف 5 دقیقه +، رشد DLQ> X/min.
  • امضاهای خطا> Y ppm، 'X-Request-Id' replay spike.
  • ساعات رانندگی> 120 ثانیه در منبع.

11) تحمل چند منطقه و گسل

مناطق فعال فعال، مسیریابی جهانی (GeoDNS/Anycast)، کلید چسبنده توسط «user _ id» → منطقه.

موضوع تکرار بین منطقه ای برای رویدادهای بحرانی (پولی، KYC).

شعاع انفجار: انزوا توسط مستاجران/مارک ها، بودجه های فردی و کلید.

DR-plan: RPO ≤ 5 دقیقه، RTO ≤ 30 دقیقه ؛ تمرینات منظم


12) سیاست های نگهداری و پخش

رویدادهای خام: 7-30 روز (با هزینه)، مصالح/ویترین - طولانی تر.

پخش فقط توسط یک runbook امضا شده (چه کسی، چه، چرا، محدوده زمانی) مجاز است.

Replay همیشه به یک نسخه جدید با پرچم «replayed = true» برای شفافیت تحلیلی می رود.


13) نمونه های پیکربندی

محدودیت های ورود (سبک NGINX):
nginx limit_req_zone منطقه $binary_remote_addr = req _ limit: نرخ 10m = 300r/s ؛
منطقه limit_req = req _ limit burst = 600 nodelay;

client_max_body_size 512 کیلوگرم ؛
proxy_read_timeout 5 ثانیه ؛
کافکا (مثال):
properties number. پارتیشن = 64 دقیقه. insync. replicas = 2 acks = تمام احتباس. ms = 604800000 # 7 روز فشرده سازی. تایپ کنید = zstd
سیاست برای کلید (KMS):
یامل rotation_days: 45 grace_period_days: 7 allow_algos: [«HMAC-SHA256»]
key_scopes:
- موضوع: «wallet_events»
تولید کنندگان: [«wallet-svc»]
مصرف کنندگان: [«ledger-svc «, «risk-svc»]

14) زمان واقعی خوراک چک لیست راه اندازی

  • MTLS در محیط، HMAC/JWT، چرخش کلید ('بچه').
  • Idempointence در منطق (کلید منحصر به فرد, upsert/ON CONFLICT).
  • پارتیشن بندی توسط 'user _ id'، پنجره مرتب سازی مجدد، سرویس پخش مجدد.
  • رجیستری طرح + سیاست های سازگاری ؛ نوشتن دوگانه برای به روز رسانی های عمده.
  • محدود کردن نرخ، قطع کننده مدار، بررسی دستی DLQ +.
  • قابلیت مشاهده: SLO، هشدار توسط امضا/تاخیر/DLQ/تاخیر.
  • PII/سیاست ناشناس، ABAC، حسابرسی WORM.
  • DR/چند منطقه، تمرینات feilover.
  • Runbooks: حوادث، پخش، بازگشت طرح/کلید.

15) مورد کوچک (مصنوعی)

زمینه: اوج مسابقات، 120 به RPS ورود، 64 بازی، 2 مناطق فعال فعال است.

مجموع 4 هفته: p95 210 میلی ثانیه، e2e p95 1. 6 ثانیه ؛ DLQ 0 05%; امضای خطا 0 009%; تکراری پس از idempotency 0. 003%.

حادثه: رانش ساعت شریک (− 9 دقیقه) → افزایش ضد پخش. قطع کننده مدار جریان را به نقطه پایانی «بافر» منتقل کرد، شریک سلامت CSM را اعلام کرد ؛ پس از کبودی NTP - پنجره 12 دقیقه به همه مصرف کنندگان پخش می شود. هیچ ضرر و زیانی وجود ندارد و دو برابر پرداخت می شود.


16) خلاصه

یک خوراک قابل اعتماد در زمان واقعی "فقط webhooks نیست. "این یک سیستم لایه ای با قراردادهای روشن است: حداقل یک بار حمل و نقل + منطقی دقیقا یک بار، طرح ثبت نام و نسخه، MTLS/HMAC/JWT و چرخش کلید، backpressure/DLQ/پخش، به حداقل رساندن PII و حسابرسی دقیق. با پیروی از این شیوه ها، شما یک جریان سریع، امن و قابل پیش بینی از حوادث دریافت خواهید کرد که در آن شما با اطمینان می توانید گیمیفیکیشن، ضد تقلب، CRM و پرداخت ها را ایجاد کنید.

× جستجو در بازی‌ها
برای شروع جستجو حداقل ۳ کاراکتر وارد کنید.