প্রকল্প সম্পর্কে
PM2 হল Node.js, TypeScript এবং Bun অ্যাপ্লিকেশনের জন্য ডিজাইন করা একটি যুদ্ধ-পরীক্ষিত প্রোডাকশন প্রসেস ম্যানেজার। এটি অ্যাপ্লিকেশনগুলিকে অনির্দিষ্টকাল ধরে সজীব রাখে, জিরো-ডাউনটাইম রিলোড সক্ষম করে এবং সাধারণ সিস্টেম প্রশাসনিক কাজগুলিকে সহজতর করে। PM2 Linux, macOS এবং Windows সমর্থন করে এবং Node.js 18+ বা Bun 1+ প্রয়োজন।
মূল ক্ষমতাগুলির মধ্যে রয়েছে:
- **প্রসেস ম্যানেজমেন্ট**: সাধারণ কমান্ড দিয়ে অ্যাপ্লিকেশন শুরু, বন্ধ, পুনরায় চালু এবং মুছে ফেলা যায়। PM2 প্রসেসগুলিকে ডেমন হিসেবে চালায় এবং মনিটর করে, সেগুলিকে চিরকাল সজীব রাখে।
- **ক্লাস্টার মোড ও লোড ব্যালেন্সিং**: PM2 একাধিক Node.js প্রসেস শুরু করতে পারে এবং সেগুলির মধ্যে HTTP/TCP/UDP ক্যোয়ারি লোড-ব্যালেন্স করতে পারে, যা মাল্টি-কোর মেশিনে থ্রুপুট উল্লেখযোগ্যভাবে বৃদ্ধি করে। এটি ইনস্ট্যান্সের সংখ্যা নির্ধারণ বা উপলব্ধ সমস্ত CPU ব্যবহার করার জন্য 'max' ব্যবহার সমর্থন করে।
- **জিরো ডাউনটাইম রিলোড**: হট রিলোড কোনো ডাউনটাইম ছাড়াই অ্যাপ্লিকেশন আপডেট করার অনুমতি দেয়, যা প্রোডাকশন পরিবেশের জন্য অপরিহার্য।
- **কন্টেইনার সাপোর্ট**: PM2 `pm2-runtime` প্রদান করে, যা `node`-এর একটি ড্রপ-ইন বিকল্প, এবং Node.js অ্যাপ্লিকেশনগুলির নির্বিঘ্ন Docker কন্টেইনারাইজেশন সক্ষম করে।
- **টার্মিনাল মনিটরিং**: `pm2 monit` কমান্ডটি কমান্ড লাইন থেকে সরাসরি সমস্ত চালু প্রসেসের রিয়েল-টাইম মনিটরিং প্রদান করে।
- **লগ ম্যানেজমেন্ট**: PM2 স্ট্যান্ডার্ড, raw, JSON এবং ফরম্যাটেড আউটপুটের সমর্থন সহ বিস্তৃত লগ ম্যানেজমেন্ট অফার করে। `pm2-logrotate` মডিউলের মাধ্যমে লগ রোটেশন উপলব্ধ।
- **স্টার্টআপ স্ক্রিপ্ট**: PM2 systemd, upstart, systemv, openrc, launchd, rcd, rcd-openbsd এবং smf init সিস্টেমের জন্য স্টার্টআপ স্ক্রিপ্ট তৈরি এবং কনফিগার করতে পারে, যা নিশ্চিত করে যে প্রসেসগুলি সার্ভার রিস্টার্টের পরেও টিকে থাকে।
- **PM2+ মনিটরিং**: একাধিক সার্ভার জুড়ে অ্যাপ্লিকেশন মনিটর এবং পরিচালনা করার জন্য একটি ক্লাউড-ভিত্তিক ড্যাশবোর্ড।
PM2 npm বা Bun-এর মাধ্যমে গ্লোবালি ইনস্টল করা হয় এবং AGPL 3.0 লাইসেন্সের অধীনে লাইসেন্সপ্রাপ্ত।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.