در این تسک، زیرساختی پایه، یکپارچه و مستقل برای ارتباط کلاینت Unity با سرور طراحی و پیادهسازی میشود. این زیرساخت نقش هستهی مرکزی تمامی تعاملات شبکهای پروژه را بر عهده دارد و باید پاسخگوی نیازهای گیمپلی، متاورس و سیستمهای هوشمند باشد. تمرکز اصلی بر پایداری، توسعهپذیری و استقلال از پکیجهای شخص ثالث است تا سیستم در تمامی پلتفرمهای هدف قابل اتکا و قابل گسترش باشد.
اهداف راهبردی
ایجاد یک سیستم ارتباطی سبک و مستقل بدون وابستگی به پکیجهای خارجی
پشتیبانی همزمان از ارتباطات مبتنی بر HTTPS و ارتباطات بلادرنگ
تضمین پایداری سیستم در پلتفرمهای WebGL، ویندوز و هدستهای VR
فراهمسازی بستری قابل توسعه برای سیستمهای آینده پروژه
دامنه و قابلیتهای اصلی تسک
مدیریت ارتباطات وب (HTTPS)
در این بخش، یک لایه مرکزی برای مدیریت ارتباط با APIهای سرور طراحی میشود که وظیفه ارسال و دریافت دادهها را بهصورت یکپارچه بر عهده دارد. این لایه باید از متدهای متداول ارتباطی پشتیبانی کند و امکان ارسال انواع داده را فراهم نماید. مدیریت هدرها و پارامترها باید بهصورت متمرکز انجام شود تا از تکرار منطق و ناهماهنگی جلوگیری شود. پاسخها و خطاها نیز باید از طریق یک الگوی مشخص و قابل کنترل مدیریت شوند.
سیستم احراز هویت و مدیریت توکن
این بخش مسئول حفظ امنیت ارتباطات است و باید چرخه کامل احراز هویت کاربر را پوشش دهد. پس از ورود کاربر، توکن دریافت و بهصورت امن ذخیره میشود. اعتبار و تاریخ انقضای توکن بهصورت خودکار بررسی شده و در تمامی درخواستهای مجاز بدون دخالت سایر بخشها استفاده میشود. در صورت بروز خطا یا انقضای توکن، سیستم باید بتواند بدون ایجاد اختلال برای کاربر، سناریوهای بازیابی را مدیریت کند.
ارتباطات بلادرنگ (Real-time)
برای تعاملات متاورسی و همگامسازی سریع کاربران، زیرساخت باید از ارتباطات بلادرنگ پشتیبانی کند. اتصال باید پایدار بوده و در صورت قطع شدن، سیستم بتواند بهصورت هوشمند مجدداً اتصال را برقرار کند. این ارتباطات باید در کنار ارتباطات وب بهصورت همزمان و بدون تداخل عمل کنند و بستر لازم برای توسعه قابلیتهایی مانند چت، همگامسازی آواتارها و سیستمهای تعاملی آینده را فراهم نمایند.
معماری و استانداردهای طراحی
سیستم باید کاملاً مستقل از ساختار سِینها طراحی شود
معماری باید ماژولار و قابل توسعه برای افزودن سیستمهای آینده باشد
امکان مانیتورینگ وضعیت شبکه و ثبت لاگ برای حالات موفق، خطا، تایماوت و قطع ارتباط فراهم شود
سیستم نباید در شرایط ناپایدار شبکه منجر به کرش کلاینت شود
سناریوهای تست و اعتبارسنجی (خروجی الزامی تسک)
برای تأیید صحت عملکرد زیرساخت، اجرای سناریوهای زیر الزامی است:
تست ورود چندکاربره:
ورود همزمان چند کاربر با اطلاعات مجزا و بررسی صحت تفکیک نشستها و دادههای ارتباطی هر کاربر
تست حرکت آواتارها:
بررسی جابهجایی کاربران در محیط چندنفره و اطمینان از همگامسازی موقعیت مکانی بین تمامی کلاینتها
تست اکشنهای آواتار:
اعتبارسنجی نمایش صحیح اکشنهایی مانند پرش، نشستن، دویدن و چرخش آواتار از دید سایر کاربران
تست محیطهای مجزا:
ایجاد چند محیط مستقل که کاربران بتوانند بدون تداخل وارد آنها شده و تعامل داشته باشند
بررسیهای امنیتی:
اعتبارسنجی توکنها، بررسی پایداری هدرهای ارتباطی و جلوگیری از ارسال یا دریافت دادههای مخرب
ملاحظات بهینهسازی و تحویل محتوا
مدیریت و بهینهسازی داراییها
زیرساخت ارتباطی باید در دریافت دادهها، بهینهسازی مصرف حافظه و پهنای باند را در نظر بگیرد. انتخاب فرمتهای مناسب برای هر پلتفرم و جلوگیری از بارگذاری غیرضروری دادهها از الزامات این بخش است. دسترسی به دادهها باید بهگونهای باشد که موتور بازی مجبور به بارگذاری کامل فایلها نشود.
مدیریت دانلود و بارگذاری محتوا
نمایش وضعیت دانلود باید دقیق و قابل اعتماد باشد تا تجربه کاربری دچار اختلال نشود. همچنین بارگذاری محیطها باید بهصورت افزودنی انجام شود تا اشیاء و داراییهای قبلی ناگهان از حافظه حذف نشوند.
استراتژی تحویل محتوا (CDN)
الزامات امنیتی و محدودیتها
استفاده از خروجیها برای آموزش سیستمهای هوش مصنوعی بدون مجوز ممنوع است
در صورت وجود کاربران زیر سن قانونی، رعایت کامل قوانین حفاظت از دادهها الزامی است
هرگونه مهندسی معکوس یا استخراج کدهای زیرساختی Unity خارج از چارچوب مجاز، ممنوع میباشد
خروجی نهایی تسک
زیرساخت ارتباطی پایدار و مستقل در Unity
پشتیبانی کامل از ارتباطات وب و بلادرنگ
اجرای موفق تمامی سناریوهای تست تعریفشده
آمادهبودن سیستم برای اتصال ماژولهای آینده پروژه
مستندسازی قابل ارائه برای تیم فنی و کارفرما
توجه فرمایید پیمانکار موظف است که در پایان تسک یک ویدیو تکمیلی اعم از معرفی پیمانکار, کار و روند اجرایی ان ضبط نمایند و در گروه و بخش مربوطه پیوست کند
-------------------------------------------------------------------------------------------------------------------------------------------
منابع تسک: