CGI اور Servlet کے درمیان فرق
سی جی آئی (کامن گیٹ وے انٹرفیس) متحرک مواد کے ساتھ صارفین کو فراہم کرنے میں سب سے پہلی کوشش ہے. صارفین کو ایسے پروگرام پر عملدرآمد کرنے کی اجازت دیتا ہے جو سرور میں ڈیٹا پر عمل کرنے اور متعلقہ مواد پیدا کرنے کے لئے ڈیٹا بیس تک رسائی حاصل کرنے میں بھی رہتا ہے. چونکہ یہ پروگرام ہیں، وہ مقامی آپریٹنگ سسٹم میں لکھے جاتے ہیں اور پھر مخصوص ڈائرکٹری میں محفوظ ہیں. سروسز جاوا کا عمل درآمد ہے جس کا مقصد سی جی آئی کے طور پر ایک ہی سروس فراہم کرنا ہے، لیکن مقامی آپریٹنگ سسٹم میں مرتب کردہ پروگراموں کی بجائے، یہ جاوا بایڈیوڈ میں ملتا ہے جو جاوا مجازی مشین میں چلتا ہے. اگرچہ جاوا کے پروگراموں کو مقامی کوڈ میں مرتب کیا جاسکتا ہے، وہ اب بھی جاوا bytecode میں مرتب کرنا پسند کرتے ہیں.
سی جی آئی سے زیادہ سروسز کا پہلا فائدہ اس کے پلیٹ فارم کی آزادی میں ہے. Servlets کسی بھی آپریٹنگ سسٹم پر چل سکتا ہے جب تک کہ ایک وی وی وی انسٹال ہو، جس کا مطلب یہ ہے کہ آپ کو آپریٹنگ سسٹم کو سوئچ کرنے کے لۓ بھی کوئی مسئلہ نہیں ہوگا. سی جی آئی کے ساتھ، آپریٹنگ سسٹم کو سوئچنگ ایک مشکل اور محنت کش عمل ہے کیونکہ آپ کو آپریٹنگ سسٹم میں پروگراموں کو دوبارہ ترتیب دینے کی ضرورت ہوگی.
جب آپ سیجیآئ میں خود مختار پروگرام چل رہے ہیں، تو وہ اپنے عمل کو تخلیق کرتے ہیں جب وہ اعزاز پائے جاتے ہیں، کچھ ایسی چیزیں جو سرور کے ساتھ نہیں ہوتی ہیں جیسے کہ وہ صرف JVM کی میموری جگہ میں شریک ہوتے ہیں. اس کے اوپر سر سے متعلق مسائل پیدا ہوسکتے ہیں، خاص طور پر جب آپ صارفین کی تعداد میں تیزی سے اضافہ کرتے ہیں. یہ بھی خطرے سے متعلق مسائل پیدا کرتا ہے کیونکہ سرور سرور پر چلنے کے بعد کسی بھی طرح سے کنٹرول نہیں ہے.
بعد میں، سی جی آئی کا استعمال کرتے وقت زیادہ عام طریقہ اسکرپٹ کے ذریعہ ہے. اس پروگراموں کو بنانے میں ضروری وقت کم ہوجاتا ہے اور عام طور پر زیادہ محفوظ ہے. سی جیآئ کے ساتھ، آپ سکرپٹ ابھی چلا سکتے ہیں، جبکہ سرورز، آپ سکرپٹ کو جاوا میں ترجمہ کرنے کی ضرورت ہوتی ہے اور اسے ایک سروس میں جمع کرنا ہوگا جو لوڈنگ وقت میں تھوڑا سا اضافہ کرتا ہے.
خلاصہ:
1. عام طور پر سی جی آئی ایسے ہی قابل اطمینان ہیں جو سرور کے آپریٹنگ سسٹم سے تعلق رکھتے ہیں، حالانکہ سرورز کو مقامی او ایس ایس میں بھی مرتب کیا جاسکتا ہے. یہ جاوا بائیکڈڈ کو مرتب کیا جاسکتا ہے جو پھر جیوییمیم
2 پر چلتا ہے. CGI پروگرام پلیٹ فارم پر منحصر ہیں جبکہ سرورز پلیٹ فارم خود مختار ہیں
3. سی جی آئی کے پروگراموں کو کمپیوٹر پر علیحدگی کے طور پر چلتا ہے جبکہ مشترکہ JVM چلتے ہیں
4. سی جی آئی
5 سے زیادہ حملوں کے مقابلے میں زیادہ خطرناک ہوسکتا ہے. CGI سکرپٹ کو براہ راست عملدرآمد کر سکتا ہے جبکہ اس کو ترجمہ کرنے کی ضرورت ہے اور اس سے پہلے کہ اس کو سرور کے طور پر چلایا جاسکے