جانیں کہ Nginx کیا ہے اور یہ سرور کیسے کام کرتا ہے۔

ایڈورٹائزنگ

اگر آپ یہ جاننا چاہتے ہیں کہ Nginx کیا ہے تو یہ مختصر اور فوری مضمون یقیناً اس موضوع پر آپ کے شکوک و شبہات کو دور کر دے گا۔ لہذا Nginx ایک اوپن سورس سافٹ ویئر ہے جو خصوصی طور پر انٹرنیٹ سرورز کے لیے ہے، جو خاص طور پر HTTP براؤزنگ کے لیے جاری کیا گیا تھا۔

آج کل یہ HTTP لوڈ بیلنسر، ریورس پراکسی، اور POP 3، IMAP اور SMTP پروٹوکولز کے لیے ای میل پراکسی کے طور پر بھی کام کرتا ہے۔

اسی کا آغاز اکتوبر 2004 میں ہوا تھا، اور اس سافٹ ویئر کے خالق ایگور سیسویف تھے۔ اس نے 2002 میں C10K کے نام سے جانے والے مسئلے کو حل کرنے کی کوشش کرنے کے لیے اس پروجیکٹ کی تخلیق کا آغاز کیا۔ جہاں آپ کا سب سے بڑا اور اہم چیلنج بیک وقت 10,000 کنکشن کا انتظام کرنا تھا (ایک ہی وقت میں)۔

nginx o que e
Nginx (گوگل امیج)

جان لیں کہ فی الحال اس سے بھی زیادہ کنکشنز ہیں، اور یہ کہ سرور اسے آسانی سے منظم کرتا ہے۔ اور خاص طور پر اس سادہ وجہ سے، یہ اپنے صارفین کو ایک بہترین غیر مطابقت پذیر فن تعمیر فراہم کرتا ہے، جو اسے آج کے سرورز کی سب سے قابل اعتماد اقسام میں سے ایک بناتا ہے۔ پیمانے، کارکردگی اور رفتار دونوں کے لحاظ سے۔

چونکہ Nginx بہت تیز رفتار رابطوں کو آسانی سے سپورٹ کر سکتا ہے، زیادہ تر ہائی ٹریفک ویب سائٹس جیسے Netflix، Google، Adobe، WordPress اور دیگر پہلے ہی اسے استعمال کر رہی ہیں۔

یہ کیسے کام کرتا ہے؟

اب جب کہ آپ جانتے ہیں کہ Nginx کیا ہے، ہم یہ بتانے میں ناکام نہیں ہو سکتے کہ یہ کیسے کام کرتا ہے، لیکن اس سے پہلے کہ ہم اس موضوع پر جائیں، آپ کو پہلے یہ جاننا ہوگا کہ انٹرنیٹ سرور عملی طور پر کیسے کام کرتا ہے۔

سرور اس طرح کام کرتا ہے، ہر بار جب کوئی ویب براؤز کر رہا ہو، چاہے سوشل نیٹ ورک پر ہو، یا سرچ انجنوں میں تحقیق کر رہا ہو، اور جب اسے اپنی مطلوبہ چیز مل جائے اور وہ لنک پر کلک کرنے کا فیصلہ کرے۔ وہ ایک درخواست ختم کرتا ہے۔

لہذا جب انٹرنیٹ پر کسی صفحہ کو لوڈ کرنے کی درخواست کی جائے گی تو براؤزر ویب سائٹ کے سرور سے رابطہ کرے گا۔ پھر سرور ان فائلوں کو تلاش کرے گا جن کی درخواست کی گئی تھی اور انہیں آسانی سے براؤزر تک پہنچائے گا۔

اگر آپ نہیں جانتے تھے تو، روایتی ویب سرورز ہر درخواست کے لیے ایک انفرادی تھریڈ بناتے ہیں، لیکن جان لیں کہ Nginx اس طرح کام نہیں کرتا ہے۔

جیسا کہ ہم نے پہلے ذکر کیا ہے، اس کی بہترین کارکردگی ہے، اور ایک غیر مطابقت پذیر، واقعہ پر مبنی فن تعمیر بھی۔ جس کا مطلب ہے کہ نظر آنے والے دھاگوں کا انتظام ورکر نامی عمل کے ذریعے کیا جاتا ہے۔ جس کے نتیجے میں ہر کارکن کے عمل میں چھوٹے یونٹ ہوتے ہیں، جنہیں ورکر کنکشن کے نام سے جانا جاتا ہے۔

لہذا یہ پوری یونٹ تمام ایڈر درخواستوں کو سنبھالنے کے لئے مکمل طور پر ذمہ دار ہے، کیونکہ کارکن کنکشن صرف ایک کارکن کے عمل کے لئے درخواستیں لے جاتے ہیں، جو اس کے بعد ماسٹر پروسیس کو بھیجا جاتا ہے. آخر میں، ماسٹر عمل کی گئی درخواست کا نتیجہ ظاہر کرتا ہے۔

ایک طرح سے یہ آسان بھی لگ سکتا ہے، لیکن جان لیں کہ ایک ورکر کنکشن 1,024 درخواستوں کو ہینڈل کرنے کی صلاحیت رکھتا ہے۔ اور خاص طور پر اسی وجہ سے، Nginx سرور بغیر کسی پریشانی کے لاکھوں درخواستوں کو ہینڈل کرنے کی پوری صلاحیت رکھتا ہے۔ یہ ان ویب سائٹس کی ایک اور بڑی وجہ بھی ہے جن پر اس ٹیکنالوجی کو استعمال کرنے کے لیے بہت زیادہ ٹریفک ہے۔

اپاچی بمقابلہ Nginx:

عملی طور پر تمام ویب سرورز میں سے، اپاچی ان سب میں سب سے زیادہ مقبول ہے، اور یہ عملی طور پر Nginx سرور کا اہم مخالف بھی ہے۔ اپاچی 90 کی دہائی میں وجود میں آئی اور دنیا بھر میں اس کے صارفین کی ایک بڑی تعداد بھی ہے۔

لیکن اگر آپ ایک آن لائن پروجیکٹ بنانے جا رہے ہیں، اور آپ کو اب بھی شک ہے کہ آپ کے پروجیکٹ میں کس قسم کا اور بہترین سرور استعمال کرنا ہے، تو ذیل میں دونوں کے درمیان ہمارا فوری موازنہ دیکھیں:

کارکردگی اور کارکردگی:

دونوں 2 سرورز کی رفتار ایک جیسی ہے، لیکن Nginx ایک ہی وقت میں جامد مواد کے 1,000 کنکشن آسانی سے چلا سکتا ہے، یہ Apache سے 2x تیز ہے۔ اور اب بھی بہت کم میموری استعمال کر رہے ہیں۔ اس معاملے میں Nginx سرور یقینی طور پر بہترین آپشن ہے۔

OS مطابقت:

کسی بھی طرح سے مطابقت ان تفصیلات میں سے ایک نہیں ہے جسے سرور کا انتخاب کرتے وقت دھیان میں رکھنا چاہئے۔ اس صورت میں دونوں بہت سے آپریٹنگ سسٹمز کے ساتھ کام کر سکتے ہیں، جو بدلے میں UNIX سسٹم کو سپورٹ کرتے ہیں۔

لیکن بدقسمتی سے اس حوالے سے ونڈوز پر Nginx قسم کے سرور کی کارکردگی اور کارکردگی دیگر پلیٹ فارمز کی طرح اچھی نہیں ہے۔

سپورٹ:

اس سے کوئی فرق نہیں پڑتا کہ آپ ابتدائی ہیں یا ایک اعلی درجے کے صارف، بغیر کسی استثنا کے ہر کسی کو انٹرنیٹ پر ایک جگہ یا کمیونٹی کی ضرورت ہوتی ہے تاکہ غیر متوقع مسائل پیدا ہونے پر ایک دوسرے کی مدد کریں۔

دونوں ای میل کے ذریعے تعاون کی پیشکش کرتے ہیں، اور اسٹیک اوور فلو پر ایک فورم بھی رکھتے ہیں۔ بدقسمتی سے، اپاچی کمپنی کی طرف سے ملنے والی مدد کے لحاظ سے مطلوبہ بہت کچھ چھوڑ دیتا ہے، جو کہ اپاچی فاؤنڈیشن ہے۔

نتیجہ اخذ کرنا:

جیسا کہ آپ پڑھ سکتے ہیں، Ngnix ایک انٹرنیٹ سرور ہے جو ریورس پراکسی، لوڈ بیلنس اور میل پراکسی کے طور پر بھی کام کرتا ہے۔ ان کے تمام سافٹ ویئر کی ساخت تمام غیر مطابقت پذیر ہے، اور تمام واقعات پر مبنی ہے۔ جو بدلے میں ایک بڑی تعداد میں سمورتی درخواستوں کو قابل بناتا ہے۔

ہم یہ بتانے میں قطعی طور پر ناکام نہیں ہو سکتے کہ Nginx قسم کا سرور انتہائی قابل توسیع ہے، جس کا مطلب ہے کہ ٹریفک کے حجم میں اضافے کے ساتھ ساتھ آپ کا کام بھی بڑھتا ہے۔

Apache اور Ngnix دونوں یقیناً آج کے بہترین ویب سرورز ہیں، اب آپ کے لیے صرف یہ ہے کہ آپ اپنے آن لائن پروجیکٹس میں کس کو استعمال کرنا چاہتے ہیں۔ آپ کے انتخاب میں کامیابی؟