تشخیص تاخیر اسکریپت (MS) با ویژگی Resmon در سرورهای FiveM
بزرگترین دلیل انجمادهای فوری (لکنت) و افت FPS که بازیکنان در سرورهای FiveM PVP تجربه میکنند، سختافزار دستگاه نیست، بلکه اسکریپتهای بهینهسازی نادرست (منابع) اضافه شده به سرور است. ارائه شده توسط موتور بازی FiveM مانیتور منابع (رسمون) به لطف رابط کاربری آن، می توانید فوراً ببینید کدام اسکریپت پردازنده (CPU) را مصرف می کند. در این راهنما با بهینه سازی MS آشنا خواهید شد.
مرحله 1: فعال کردن رابط Resmon
برای مشاهده مقادیر مصرف اسکریپت ها در سرور خود در حین بازی، این مراحل را دنبال کنید:
- از صفحه کلید شما
F8کنسول FiveM را با فشار دادن دکمه باز کنید. - به کنسول
resmon 1تایپ کرده و Enter را فشار دهید. یک پانل در گوشه سمت راست بالای صفحه باز می شود که در آن همه اسکریپت ها لیست شده اند. (برای بستنresmon 0می توانید بنویسید).
مرحله 2: خواندن مقادیر (msec و حافظه CPU)
دو ستون مهم در پانل باز شده وجود دارد. برای سلامت سرور خود باید این ستون ها را به صورت زیر تحلیل کنید:
- CPU msec (میل ثانیه): این زمان پردازنده ای است که یک اسکریپت در هر چرخه صرف می کند. مبلغی که یک اسکریپت سالم در حالت بیکار صرف می کند 0.01ms تا 0.05ms باید بین .
- حتی اگر در لیست بیکار بنشینید 0.50ms، 1.0ms یا بالاتر اگر اسکریپتی می بینید که ارزش مصرف می کند، آن اسکریپت به اشتباه کدگذاری شده است. به طور کلی در کد با پایان باز است
Citizen.CreateThreadیا در هر کسری از ثانیه کار کنیدCitizen.Wait(0)چرخه باعث این می شود. - حافظه: فضای اشغال شده توسط اسکریپت در RAM است. اگر مصرف حافظه (Memory Leak) وجود داشته باشد که به طور مداوم در طول زمان افزایش یابد، آن اسکریپت تا زمانی که سرور باز بماند RAM مصرف می کند و در نهایت سرور را از کار می اندازد.
مرحله 3: راه حل دقیق و بهینه سازی
- با بررسی بلوکهای کد اسکریپتهایی که MS بالایی مصرف میکنند، کنترلهای فاصله (در حالی که حلقه هستند) یا زمانهای انتظار حلقه را اضافه کنید (که فقط زمانی اجرا میشوند که بازیکن با هم تعامل داشته باشد (مثلاً به یک نشانگر نزدیک میشود).
Wait(1000)و غیره) - اگر نمی توانید بهینه سازی کنید، از نسخه های به روز شده جایگزین و بهینه شده آن اسکریپت استفاده کنید تا بار سیستم خود را کاهش دهید.
این مقاله به طور ویژه برای PvPServer تهیه شده است.