Fnr#0017

Full-Stack Data Analysis
 

I never finish anything.

Comments (11)
a year ago
ماشاء الله
2 years ago
افضل مبرمج في العالم الي ما يتفق سرواله عندي
2 years ago
كريم و شجاع و قوي و مغامر
10 months ago
البلوق هنا جميل ومفيد Edited
a year ago
افضل مبرمج في العالم
a year ago
اعشقك
يعيال ذا اكبر مبرمج على الكره الارضيه
سروالك عندي
2 years ago
اوك
2 years ago
اتفق
2 years ago
ك
Activities (0)  

No Activities

QR Code (596227913209217024)
Development Experiences (26)
Atom (96%)
Bootstrap (47%)
C# (100%)
C++ (100%)
CSS (100%)
CentOS (72%)
CloudFlare (96%)
Discord.js (99%)
Express.js (84%)
Git (97%)
HTML (100%)
Java (88%)
JavaScript (98%)
Markdown (71%)
MongoDB (43%)
MySQL (54%)
NPM (93%)
Node.js (95%)
Notepad++ (89%)
PM2 (96%)
Python (100%)
SQL (70%)
Sublime Text (96%)
TypeScript (92%)
Visual Studio Code (99%)
WebSocket (40%)
Discord User a year ago
Find any user by their id's
ProBot Tax a year ago
Calculate ProBot tax easy from our website or using our bot

No Services Provided By This User

Discord Server

No Discord Server Linked

Youtube Video Widget
GitHub Widget
Fnr's Posts 3 Posts
شرح لكيفية تشغيل اكثر من بوت (نظام بريميوم) 6 months ago
اول شي راح نستعمل مكتبة اسمها pm2 ذي مكتبة تسمح لنا نشغل اكثر من بوت لانها هي process manager وفي الغالب تكون انت مستعملها لو تسوي هوست للبوتاتك في لينكس

روابط مهمة:
رابط المكتب
docs

:IconUpdateDownload: احين راح نقوم بتحميل المكتبة عن طريق استخدام هذا الامر
npm install pm2 -g - عشان نقدر نستخدم الاوامر عن طريق cmd
npm install pm2 - عشان نستخدمها في بروجيكت حقنا

index.js file :
const pm2 = require('pm2');

pm2.start({
    name: "botId", // اسم البروسيس
    script: "", // اسم الملف الي راح يشتغل وفي الغالب بيكون "index.js",
    env: {
        TOKEN: 'YOUR BOT TOKEN',
        SERVER_ID: 'SERVER ID'
    }
}, (err) => {
    if (err) throw err;
});

طبعا ذا سكربت بسيط للطريقة تشغيل ،، داخل env تقدر تحط جميع المعلومات المهمة الي لازم تشغل البوت مثل
توكن البوت ، سيرفر ايدي ، الوقت حق انتهاء البوت وغيرها

وطبعا المعلومات الي تحطها تقدر تاخدها زي كذا
process.env.TOKEN
زي كذا راح احصل توكن البوت الا انا حطيته في env object

:SystemMessageCheck: طبعا تقدر تستعمل pm2.restart حق تسوي ريستارت للبوت

:SystemMessageCross: او تستعمل pm2.stop حق توقف البوت

طبعا ذي methods تحتاج اسم process او الرقم حق process

⚠ معلومة مهمة:
يفضل انك تخلي اسم process على ايدي البوت عشان لو بتسوي ريستارت للبوت تقدر عن طريق الايدي بسهوله**
#2 | كيف تسوي شارد :shards: a year ago
في الغالب سوف تحتاج للتغير بعض الاكواد الخاصه بالبوت لكي يعمل على الشارد بشكل صحيح.

نفترض ان لديك امر يقوم بجلب احصائيات البوت الخاصة بك ويكون كود مشابة لهذا
client.guilds.cache.size
وهذا الكود سوف يقوم بحسابة عدد سيرفرات التي البوت متعرف عليها

بما انه الشارد سوف يقوم بتقسم العمليات فلذالك يجب حساب جميع العمليات الخاصة بالبوت.

FetchClientValues
هذي وحده من اكثر الطرق المستعملة للشارد وفائدة هذي طريقة سوف تقوم بحساب احصائيات العمليات في كل الشاردات

client.shard.fetchClientValues('guilds.cache.size').then(console.log);

اذا قمت بتشغل هذا الكود سوف تلاحظ نتيجة مشابهة الى هذه
[898, 901, 900, 901]

سوف تلاحظ بانه كل رقم هو عدد سيرفرات للكل شارد

وفي هذي الحالة هذي طريقة سوف يقم بجمع كل سيرفر في الشارد ويضيفه على القيمة الاساسية
client.shard.fetchClientValues('guilds.cache.size').then(results => {
    console.log(`${results.reduce((acc, guildCount) => acc + guildCount, 0)} total guilds`);
}).catch(console.error);
#1 | كيف تسوي شارد :shards: a year ago
متى ابدا في عمل الشارد
ملاحظة ⚠:
قبل ان نبتدي في شرح عمل الشارد تذكر انه ليس من ضروري عمل الشارد الا عندما يصل بوتك الى 2,500 سيرفر
.واعلى في هذي المرحلة سوف يتطلب دسكورد عمل الشارد لتشغيل بوتك

كيف الشارد يعمل؟
عندما يكبر البوت الخاص بك من الضروري ان المطور ان يقوم بتقسيم عمليات البوت لكي يعمل بكفاءة عالية .

طريقة انشاء الشارد:
اولا، سوف تحتاج للملف يقوم بانشاء الشارد يفضل ان يكون اسمه shard.js
const { ShardingManager } = require('discord.js');
const manager = new ShardingManager('./index.js', { token: 'token-goes-here' });
manager.on('shardCreate', shard => console.log(`Launched shard ${shard.id}`));
manager.spawn();

الكود في الاعلى سوف يقوم بانشاء انسب عدد للشاردات للبوت الخاص بك.

No Certificates Uploaded By This User

No To-do Lists Created By This User

No Themes Created By This User