زنجیره تامین محتوا
(بخش: اکوسیستم و شبکه)
1) تعریف و اهداف
زنجیره تامین محتوا (CSC) - یک جریان کنترل شده از مصنوعات (بازی ها، لابی ها، آگهی ها، مسابقات، پروفایل های RTP، جکپات ها، صوتی/تصویری/دارایی ها، قوانین بازی، اسکریپت های تبلیغاتی) از یک استودیو → جمع کننده → توزیع کننده/اپراتور → یک مشتری شدید از طریق زیرساخت CDN، دروازه ها و داده های پیکربندی.
اهداف:- در دسترس بودن و کیفیت (SLO با زمان دانلود، خطاها، سازگاری مشتری).
- صحت قانونی (مجوزها، صدور گواهینامه، محدودیت های جغرافیایی/سنی).
- سرعت خروجی (انتشار زمان به بازار، پنجره تحویل قابل پیش بینی).
- قابلیت مشاهده و حسابرسی (خط کامل مصنوعات، معیارها، امور مالی و حقوق).
2) نقش ها و مسئولیت ها
استودیوها (تولید کنندگان محتوا): منابع، مکانیک/ریاضیات، مجامع، ابرداده، QA، صدور گواهینامه.
هاب های محتوا: اتحاد API/SDK، دایرکتوری ها، نسخه ها، مسیریابی، تله متری سازگار.
توزیع کنندگان/اپراتورها: ادغام، محلی سازی، پرداخت/ویژگی های بازی مسئول، A/B، انطباق.
CDN/Edge: ذخیره سازی، رسانه ها/اسکریپت ها، anti-brute/anti-bot، محدودیت های جغرافیایی.
تنظیم کننده/آزمایشگاه ها: صدور گواهینامه RNG، پروتکل های RTP، سیاهههای مربوط به آزمون.
حکومت/صدور مجوز: قراردادها، حقوق، پنجره های آزاد، لیست تحریم های IP.
3) لایه های محتوا و مصنوعات
1. کد بازی و پیکربندی (JS/WASM/بومی، آشکار. json، RTP/جداول، قوانین پرداخت).
2. رسانه ها (sprites، ویدئو، صوتی، متون/فونت های محلی).
3. آداپتورهای ادغام (SDK، API کیف پول/پاداش، جلسه، بررسی واقعیت).
4. داده های بازاریابی (آیکون ها، آگهی ها، توضیحات، دسته ها، سن).
5. گواهینامه ها/گزارش ها (پیشانی، بسته های صلاحیت).
6. ماژول های مسابقات/جکپات (استخرهای شبکه، محدودیت ها، قوانین).
هر لایه نسخه بندی شده و از طریق catalog_id و content_hash محدود می شود.
4) قراردادها و فرمت ها (canonization)
قراردادهای API: راه اندازی, جلسه, تعادل/کیف پول, چرخش/شرط/نتیجه, قلاب تبلیغی, واقعیت چک, محدودیت RG.
رویدادهای تله متری: "بازی. جلسه. شروع به چرخیدن کرد. نتیجه، جکپات. خطا «،» ضربه بزنید. خطای «مشتری» اس دی کی
بیانیه بازی (YAML):yaml game:
id: "studio. myth. slot. egypt_01"
version: "1. 3. 4"
sdk: { min: "2. 6. 0", tested: ["2. 6. 0","2. 6. 1"] }
assets:
js: "sha256:.../game. min. js"
wasm: "sha256:.../engine. wasm"
media: ["sha256:.../sprites. atlas","sha256:.../intro. mp4"]
locales: ["en","es","tr","ru","pt-BR"]
rtp_declared: 0. 964 math_profile: "sha256:.../paytable. json"
features: ["free_spins","buy_bonus"]
compliance: { age_rating: "18+", rng_cert: "GLI-11-2025", regions: ["EU","UK","TR"] }
drm: { allow_iframe: true, referrer_policy: "strict-origin-when-cross-origin" }
5) نسخه و سازگاری
SemVer برای بازی ها/SDK. MINOR/PATCH - عقب، MAJOR - از طریق آداپتورهای موازی.
سیاست تخفیف: پنجره ها ≥ 90 روز ؛ شناسایی خودکار مشتریان قدیمی ؛ حالت ترکیبی «دو نسخه».
تست های قرارداد: OpenAPI/IDL CI، schema-linters برای رویدادها/مانیفست ها.
Compat-matrix: بازی SDK مرورگر سیاست های CDN.
6) بومی سازی و انطباق با بازار
i18n: کلید، قوانین چندگانه، زنجیره عقب ؛ بدون متن در تصاویر (همانطور که توسط نام تجاری مورد نیاز).
Yurpakets: ممنوعیت توابع (خرید پاداش)، تغییر پارامترهای RTP، پوشش سن.
قابلیت دسترسی: زیرنویس، کنتراست رنگ، ناوبری صفحه کلید.
سیاست های جغرافیایی: زبان ها/ارزها، هشدارها/تایمر RG مجاز است.
7) جریان آزاد
Path: → studio (artifact registry) → aggregator (تأیید، صدور گواهینامه، دود/خیس) → مرحله بندی CDN → canary از → اپراتورهای GA.
مراحل کنترل:- چک های استاتیک (SCA، مجوز، اندازه بسته نرم افزاری، CSP/هدر).
- چک های زمان اجرا (E2E نور، تاخیر/خطا بودجه، حافظه).
- دروازه های صلاحیت (قوانین منطقه ای، ficheflags).
- طرح برگشت (بازگشت به N-1 بدون شکستن جلسه).
پنجره های انتشار: روزهای هفته 9: 00-15: 00 منطقه خوشه ای ؛ یخ قبل از حوادث بزرگ.
8) تحویل و ذخیره سازی
CDN چند منطقه: URL هش غیر قابل تغییر، TTL HTML کوتاه، TTL رسانه های طولانی، URL های امضا شده.
منطق لبه: نکات دستگاه، AVIF/WebP، Brotli/Gzip، دانلود فیلم محدوده.
پیش بارگذاری/دارایی های کلیدی prefetch ؛ کش منفی برای 404/403.
آفلاین/انعطاف پذیری: تخریب برازنده (دارایی های کم، حالت محافظت شده بدون خرید).
Anti-scrape/bots: محدودیت نرخ، سیگنال های JA3/FP، چالش های پازل برای مشکوک.
9) قابلیت مشاهده، SLI/SLO و QoS
هسته SLI:- TTI/TTL p95 (زمان به تعاملی/بار)،
- نرخ خطای مشتری (JS/WASM/SDK)،
- دارایی واکشی موفقیت٪، نسبت ضربه CDN،
- چرخش دور سفر p95، افت جلسه٪،
- کارت بازرگانی٪
- پیروی از٪
- TTI P95 ≤ 2 5S (Wi-Fi)، ≤ 4. 0 (موبایل)،
- نرخ خطای مشتری ≤ 0. 4%, دارایی واکشی موفقیت ≥ 99. 8%,
- CDN ≥ 90٪، Spin RTT p95 ≤ 300ms (منطقه ای)،
- کارت بازرگانی ≥ 99 5٪، انطباق ≥ 99. 9%.
- P0 (شروع/کیف پول/شرط/مجموع)، P1 (دارایی های رسانه ای/UI)، P2 (تشخیص/اشکال زدایی).
10) کاتالوگ ها و وابستگی ها (داده ها)
کاتالوگ محتوا (SQL):sql
CREATE TABLE content_catalog (
game_id TEXT,
version TEXT,
region TEXT,
status TEXT, -- staging canary ga deprecated sdk_min TEXT,
asset_root TEXT, -- CDN prefix content_hash TEXT, -- Merkle root/sha256 rtp_declared NUMERIC,
rng_cert TEXT,
features JSONB,
PRIMARY KEY (game_id, version, region)
);
CREATE TABLE content_dependencies (
game_id TEXT, version TEXT,
dep_kind TEXT, -- media sdk jackpot promo lab-cert dep_ref TEXT, -- id/version/hash required BOOL DEFAULT true
);
صدور گواهینامه/محدودیت ثبت نام:
sql
CREATE TABLE compliance_rules (
region TEXT, game_id TEXT, version TEXT,
rule TEXT, value JSONB, -- e. g., {"buy_bonus": false}
effective_from TIMESTAMPTZ
);
11) امور مالی و شهرک سازی (گزارش دهی)
معیارهای استفاده: جلسات، چرخش، مدت زمان، همزمانی.
سهم درآمد/حق امتیاز: سهام استودیو/جمع کننده/اپراتور ؛ تغییرات در منطقه
پاداش/جبران خسارت: بسته های چرخش آزاد، وام های تبلیغاتی، مکانیسم های پاکسازی.
اعمال/گزارش ها: آشتی در رویدادهای نهایی، کلید های idempointency، دوره های FX در 'مشاهده _ at'.
sql
SELECT game_id, region, date_trunc('day', ts) AS d,
COUNT() FILTER (WHERE event='spin') AS spins,
SUM(bet_amount) AS gtv, SUM(win_amount) AS payouts,
SUM(revenue_share_operator) AS rev_op,
SUM(revenue_share_studio) AS rev_studio
FROM telemetry_events
WHERE finalized = true
GROUP BY game_id, region, d;
12) امنیت و حقوق
امضاهای مصنوعات (sigstore، cosign)، تلاشهای زنجیره تأمین (سطح SLSA).
mTLS بین هاب ها/اپراتورها ؛ CSP/ارجاع-سیاست در جلو.
DRM/anti-tamper: بررسی یکپارچگی، مبهم/ضد اشکال زدایی، لیست اجازه دامنه.
PII minimization: بدون اطلاعات کاربر در تله متری ؛ نشانه گذاری.
13) مدیریت تغییر و phicheflags
ویژگی گیتس بر اساس منطقه/اپراتور/نسخه SDK.
پروفایل های Rollout:٪ ترافیک/بخش پخش/پنجره های زمان.
Kill-Switch on client/edge: مسدود کردن فوری نسخه مشکل ساز.
قناری و خیس کردن: حداقل 2 ساعت/منطقه به GA ؛ دروازه های اتوماتیک SLO
14) تست و کیفیت
واحد/ریاضی: اعتبار جداول RTP/پرداخت، ژنراتور صحنه.
سازگاری: مزرعه مرورگر/دستگاه، پروفایل های کم پهنای باند.
بار/انعطاف پذیری: طوفان CDN، نرخ محدود، ذخیره سازی آهسته، قطع اتصال ارائه دهندگان خارجی.
امنیت: SAST/DAST، نقض CSP، اسکن وابستگی.
صلاحیت: چک لیست های خودکار توسط بازار (TR/UK/EU/LA/APAC).
15) داشبورد
عملیات محتوا: TTI/TTL، خطاهای مشتری، ضربه CDN، وزن دارایی، پاس compat.
کنترل انتشار: وضعیت قناری، چرخش، دروازه های SLO.
درآمد لنز: GTV، نرخ، ARPPU/LTV (بدون PII)، حق امتیاز توسط استودیو.
انطباق: محدودیت های فعال، نقض CSP، گواهینامه های منقضی شده.
کیفیت: نرخ بدون تصادف، نشت حافظه، FPS (برای بازی های سنگین).
16) حوادث کتاب بازی
افزایش خطاهای مشتری (JS/WASM)
1. فعالسازی Kill-Switch برای نسخۀ مشکلساز ؛ 2) بازگشت به N-1 ؛
2. جمع آوری ردیابی/پشته، 4) hotfix، 5) موارد پس از مرگ و آزمایش.
B. کاهش نسبت ضربه CDN
1. بررسی TTL/گزینه های دارایی ؛ 2) فعال کردن prewarm ؛
2. بهینه سازی اندازه بسته نرم افزاری ؛ 4) تخریب موقت کیفیت رسانه.
C. نقض صلاحیت (قانون بازار)
1. بلوک منطقه فوری ؛ 2) دارایی های بازپرداخت/ویژگی ؛
2. اطلاع انطباق/اپراتورها 4) ممیزی و به روز رسانی چک لیست.
عدم تطابق SDK
1. تشخیص خودکار، انتقال ترافیک به یک نسخه سازگار ؛
2. فعال کردن آداپتور 3) ایجاد یک بلیط به استودیو/جمع آوری ؛ 4) ماتریس سازگاری - به روز رسانی.
E. شکست خدمات جکپات/مسابقات
1. انتقال به استخر محلی/پشتیبان با محدودیت ؛
2. تبلیغات را منجمد کنید 3) عملیات جبرانی ؛ 4) گزارش عمومی
17) تنظیمات (YAML)
سیاست انتشار/بازگشت
yaml release:
windows: ["Mon-Fri 09:00-15:00 regional"]
canary: { share_pct: 5, duration_min: 120, slo_gates: { tti_p95_ms: 2500, error_rate_pct: 0. 4 } }
rollback: { auto_on: ["slo_breach","crash_rate>0. 6"], target: "previous_ga" }
کش/CDN
yaml cdn:
ttl:
html: "60s"
js_css: "7d"
media: "30d"
headers:
csp: "default-src 'self'; img-src data: https:; media-src https:; frame-ancestors 'none'"
signed_urls: true compression: ["br","gzip"]
Ficheflags/بازارها
yaml features:
buy_bonus: { eu: false, uk: true, tr: true }
autoplay: { eu: false, uk: false, tr: true }
18) پیاده سازی: چک لیست
1. فهرست نمایشها و فهرست راهنمای وابستگی بازی متعارف را وارد کنید.
2. CI/CD را با تست های قرارداد، دروازه های صدور گواهینامه و canary تنظیم کنید.
3. استراتژی CDN را فعال کنید: URL هش، TTL، URL های امضا شده، سیاست های لبه.
4. SLI/SLO و QoS را تعریف کنید ؛ داشبورد محتوا/انتشار/انطباق را راه اندازی کنید.
5. تنظیم قوانین ویژگی/منطقه ای و کشتن سوئیچ.
6. فعال کردن تله متری (رویدادها/مسیرهای پیاده روی) و گزارش سهم درآمد.
7. انجام آزمون هرج و مرج: شکست CDN، RTT بالا، برنده تمام پولها خاموش/تبلیغی.
8. به طور مرتب سازگاری SDK/مرورگر، وزن دارایی و گواهینامه ها را بررسی کنید.
19) واژه نامه
CSC یک زنجیره تامین محتوا است.
Manifest - توصیفگر بازی/دارایی/سازگاری/حقوق.
TTI/TTL - زمان تعامل/دانلود کامل.
نسبت ضربه CDN - نسبت درخواست های خدمت شده از حافظه پنهان.
RTP - بازگشت نظری به بازیکن.
SLSA - سطح امنیت زنجیره تامین نرم افزار.
یک زنجیره تأمین محتوای مدیریت شده، یک «مجموعه بازی» را به یک جریان قابل اعتماد، قابل اندازه گیری و افتخاری از مصنوعات آماده می کند تا به سرعت و با خیال راحت در تمام بازارهای هدف راه اندازی شود. استانداردهای استاندارد، SLO های دقیق، قابلیت مشاهده و کنترل انتشار، UX پایدار را تضمین می کنند و قابلیت ردیابی قانونی و مالی، اعتماد شرکت کنندگان اکوسیستم را تضمین می کند.