আমি গতরাতে একটি এএসপি.নেট এমভিসি অ্যাপ্লিকেশন মোতায়েন করছি এবং আমি জানতে পেরেছি যে আইআইএস 7 এর সাথে ইন্টিগ্রেটেড মোডে সেট স্থাপন করা কম কাজ করছে। আমার প্রশ্ন হ'ল পার্থক্য কি? এবং একটি বা অন্য ব্যবহারের কী প্রভাব আছে?
আমি গতরাতে একটি এএসপি.নেট এমভিসি অ্যাপ্লিকেশন মোতায়েন করছি এবং আমি জানতে পেরেছি যে আইআইএস 7 এর সাথে ইন্টিগ্রেটেড মোডে সেট স্থাপন করা কম কাজ করছে। আমার প্রশ্ন হ'ল পার্থক্য কি? এবং একটি বা অন্য ব্যবহারের কী প্রভাব আছে?
উত্তর:
ক্লাসিক মোড (আইআইএস 6 এবং নীচে একমাত্র মোড) এমন একটি মোড যেখানে আইআইএস কেবল আইএসপিআই এক্সটেনশান এবং আইএসপিআই ফিল্টারগুলির সাথে সরাসরি কাজ করে। প্রকৃতপক্ষে, এই মোডে, এএসপি.এনইটি হ'ল একটি আইএসপিআই এক্সটেনশন (এস্পনেট_আইসাপি.ডিএল) এবং একটি আইএসএপিআই ফিল্টার (এসপনেট_ফিল্টার.ডিল)। আইআইএস কেবল এএসপি.নেটকে আইএসপিআইতে প্রয়োগ করা একটি বাহ্যিক প্লাগইন হিসাবে বিবেচনা করে এবং এটি একটি কালো বাক্সের মতো কাজ করে (এবং কেবল যখন এএসপি.নেটকে অনুরোধ জানাতে হবে)। এই মোডে, এএসপি.এনইট পিএইচপি বা আইআইএসের জন্য অন্যান্য প্রযুক্তি থেকে খুব আলাদা নয়।
অন্যদিকে, ইন্টিগ্রেটেড মোড আইআইএস in এর একটি নতুন মোড যেখানে আইআইএস পাইপলাইনটি এএসপি.নেট অনুরোধ পাইপলাইন হিসাবে শক্তভাবে সংহত করা হয়েছে (যেমন ঠিক একই)। এএসপি.এনইটি চাইলে প্রতিটি অনুরোধ দেখতে পারে এবং পথে জিনিসগুলি হেরফের করতে পারে। এএসপি.নেটকে আর বাহ্যিক প্লাগইন হিসাবে ধরা হয় না। এটি সম্পূর্ণরূপে মিশ্রিত এবং আইআইএসে সংহত। এই মোডে, এএসপি.এনইটিএসের HttpModule
মূলত ইস্পি ফিল্টারটির HttpHandler
প্রায় সমান শক্তি থাকতে পারে এবং এএসপি.এন.টি.এস.এস.এস.পি. এর এক্সটেনশানটি প্রায় সমতুল্য ক্ষমতা অর্জন করতে পারে। এই মোডে, এএসপি.এনইটি মূলত আইআইএসের একটি অংশ।
HttpModules
পদ্ধতিতে বা ইভেন্টগুলিতে iis7
কাজ করার ক্ষেত্রে iis6
কি কার্যকারিতা বেশি রয়েছে ? আপনি কি এ সম্পর্কে বিস্তারিত বলতে পারেন?
ইন্টিগ্রেটেড অ্যাপ্লিকেশন পুল মোড
যখন একটি অ্যাপ্লিকেশন পুল ইন্টিগ্রেটেড মোডে থাকে, আপনি আইআইএস এবং এএসপি.এনইটি সংহত অনুরোধ-প্রক্রিয়াকরণ আর্কিটেকচারের সুবিধা নিতে পারেন। যখন কোনও অ্যাপ্লিকেশন পুলে কোনও কর্মী প্রক্রিয়া একটি অনুরোধ পান, অনুরোধটি ইভেন্টের একটি আদেশিত তালিকার মধ্য দিয়ে যায়। প্রতিটি ইভেন্ট অনুরোধের অংশগুলি প্রক্রিয়া করতে এবং প্রতিক্রিয়া উত্পন্ন করতে প্রয়োজনীয় স্থানীয় এবং পরিচালিত মডিউলগুলিকে কল করে।
ইন্টিগ্রেটেড মোডে অ্যাপ্লিকেশন পুল চালানোর বিভিন্ন সুবিধা রয়েছে। প্রথমে আইআইএস এবং এএসপি.এনইটির অনুরোধ-প্রক্রিয়াকরণ মডেলগুলি একটি ইউনিফাইড প্রক্রিয়া মডেলের সাথে সংহত করা হয়েছে। এই মডেলটি এমন পদক্ষেপগুলি সরিয়ে দেয় যা পূর্বে আইআইএস এবং এএসপি.এনইটিতে অনুলিপি করা হয়েছিল, যেমন প্রমাণীকরণ। অতিরিক্তভাবে, ইন্টিগ্রেটেড মোড সমস্ত সামগ্রী ধরণের পরিচালিত বৈশিষ্ট্যের প্রাপ্যতা সক্ষম করে।
ক্লাসিক অ্যাপ্লিকেশন পুল মোড
যখন কোনও অ্যাপ্লিকেশন পুল ক্লাসিক মোডে থাকে, আইআইএস 7.0 অনুরোধগুলি আইআইএস 6.0 কর্মী প্রক্রিয়া বিচ্ছিন্নতা মোডের মতো পরিচালনা করে। এএসপি.এনইটি অনুরোধগুলি প্রথমে আইআইএসে নেটিভ প্রসেসিং পদক্ষেপের মধ্য দিয়ে যায় এবং তারপরে পরিচালিত রানটাইমে ম্যানেজড কোড প্রসেসিংয়ের জন্য Aspnet_isapi.dll এ স্থানান্তরিত হয়। অবশেষে, অনুরোধটি আইআইএসের মাধ্যমে প্রতিক্রিয়া প্রেরণের জন্য ফিরে যেতে হবে।
আইআইএস এবং এএসপি.এনইটি অনুরোধ-প্রসেসিং মডেলের এই পৃথকীকরণের ফলে প্রমাণীকরণ এবং অনুমোদনের মতো কিছু প্রক্রিয়াজাত পদক্ষেপের নকল হয়। অতিরিক্তভাবে, পরিচালিত কোড বৈশিষ্ট্যগুলি, যেমন ফর্ম প্রমাণীকরণ, কেবলমাত্র এএসপি.নেট অ্যাপ্লিকেশন বা অ্যাপ্লিকেশনগুলিতে উপলভ্য যার জন্য আপনি স্ক্রিপ্ট ম্যাপ করেছেন সমস্ত অনুরোধগুলি aspnet_isapi.dll দ্বারা পরিচালিত হবে।
আইআইএস 7.0 এ উত্পাদন পরিবেশ আপগ্রেড করার আগে এবং ইন্টিগ্রেটেড মোডে অ্যাপ্লিকেশন পুলগুলিতে অ্যাপ্লিকেশনগুলি বরাদ্দ করার আগে ইন্টিগ্রেটেড মোডে সামঞ্জস্যের জন্য আপনার বিদ্যমান অ্যাপ্লিকেশনগুলি পরীক্ষা করে দেখুন sure আপনার কেবলমাত্র ক্লাসিক মোডের একটি অ্যাপ্লিকেশন পুলে একটি অ্যাপ্লিকেশন যুক্ত করা উচিত যদি অ্যাপ্লিকেশনটি ইন্টিগ্রেটেড মোডে কাজ করতে ব্যর্থ হয়। উদাহরণস্বরূপ, আপনার অ্যাপ্লিকেশনটি আইআইএস থেকে পরিচালিত রানটাইম পর্যন্ত পাস করা একটি প্রমাণীকরণ টোকেনের উপর নির্ভর করতে পারে এবং আইআইএস 7.0-এ নতুন আর্কিটেকচারের কারণে প্রক্রিয়াটি আপনার অ্যাপ্লিকেশনটিকে ভেঙে দেয়।
থেকে নেওয়া: আইআইএস 7-এ ডিফল্ট অ্যাপপুল এবং ক্লাসিক। নেট অ্যাপপুলের মধ্যে পার্থক্য কী?
মূল উত্স: আইআইএস আর্কিটেকচারের পরিচিতি
আইআইএস 6.0 এবং পূর্ববর্তী সংস্করণ:
ASP.NET একটি ISAPI এক্সটেনশন, একটি সিপিআই (সি প্রোগ্রামিং ল্যাঙ্গুয়েজ ভিত্তিক এপিআই) এর মাধ্যমে আইআইএসের সাথে একীভূত হয়েছিল এবং এর নিজস্ব অ্যাপ্লিকেশন এবং অনুরোধ প্রক্রিয়াজাতকরণ মডেলটি উন্মোচিত করেছে।
এটি কার্যকরভাবে দুটি পৃথক সার্ভার (অনুরোধ / প্রতিক্রিয়া) পাইপলাইন উন্মুক্ত করেছে, একটি নেটিভ ISAPI ফিল্টার এবং এক্সটেনশন উপাদানগুলির জন্য এবং অন্যটি পরিচালিত অ্যাপ্লিকেশন উপাদানগুলির জন্য। ASP.NET উপাদানগুলি সম্পূর্ণরূপে ASP.NET ISAPI এক্সটেনশন বুদবুদ এবং আইআইএস স্ক্রিপ্ট মানচিত্রের কনফিগারেশনে এএসপি.নেটকে ম্যাপ করা অনুরোধের জন্য পুরোপুরি কার্যকর করা হবে ।
নন এএসপি.নেট সামগ্রীর ধরণের অনুরোধ: - চিত্রগুলি, পাঠ্য ফাইলগুলি, এইচটিএমএল পৃষ্ঠাগুলি এবং স্ক্রিপ্ট-কম এএসপি পৃষ্ঠাগুলি আইআইএস বা অন্যান্য আইএসএপিআই এক্সটেনশান দ্বারা প্রক্রিয়াভুক্ত হয়েছিল এবং এএসপি.নেটের কাছে দৃশ্যমান ছিল না।
এই মডেলের প্রধান সীমাবদ্ধতা হ'ল ASP.NET মডিউল এবং কাস্টম ASP.NET অ্যাপ্লিকেশন কোড দ্বারা সরবরাহিত পরিষেবাগুলি নন ASP.NET অনুরোধগুলিতে উপলব্ধ ছিল না
স্ক্রিপ্ট ম্যাপ কী?
স্ক্রিপ্ট মানচিত্রগুলি ISAPI হ্যান্ডলারের সাথে ফাইল এক্সটেনশনগুলি সংযুক্ত করতে ব্যবহৃত হয় যা সেই ফাইল প্রকারের জন্য অনুরোধ করা হলে কার্যকর করা হয়। স্ক্রিপ্ট মানচিত্রে একটি settingচ্ছিক সেটিংসও রয়েছে যা অনুরোধটি প্রক্রিয়া করার অনুমতি দেওয়ার আগে অনুরোধের সাথে সম্পর্কিত শারীরিক ফাইল উপস্থিত রয়েছে তা যাচাই করে
একটি ভাল উদাহরণ হতে পারে seen here
আইআইএস 7 এবং উপরে
আইআইএস 7.0 এবং তারপরে একটি নতুন ব্র্যান্ডের সি ++ এপিআই ভিত্তিক আইএসএপিআই সরবরাহের জন্য গ্রাউন্ড আপ থেকে পুনরায় ইঞ্জিনিয়ার করা হয়েছে।
আইআইএস .0.০ এবং তারপরে ওয়েব সার্ভারের মূল কার্যকারিতার সাথে এএসপি.এনইটি রানটাইম সংহত করে, একটি ইউনিফাইড (একক) অনুরোধ প্রসেসিং পাইপলাইন সরবরাহ করে যা মডিউল (আইএইচটিপিডমডিউলস) হিসাবে পরিচিত উভয় নেটিভ এবং পরিচালিত উপাদানগুলির সংস্পর্শে আসে providing
এর অর্থ হ'ল আইআইএস processes প্রক্রিয়া অনুরোধগুলি যে কোনও সামগ্রীর ধরণের জন্য উপস্থিত হয় NON ASP.NET Modules / native IIS modules
এবং উভয় ASP.NET modules
পর্যায়ে অনুরোধ প্রসেসিং সরবরাহ করে এটি NON ASP.NET সামগ্রী প্রকারের (.html, স্ট্যাটিক ফাইল) .NET মডিউল দ্বারা পরিচালনা করা যায় ।
IHttpModule
) তৈরি করতে পারেন যা সমস্ত অ্যাপ্লিকেশন সামগ্রীর জন্য কার্যকর করার ক্ষমতা রাখে এবং আপনার অ্যাপ্লিকেশনটিতে অনুরোধ প্রক্রিয়াকরণ পরিষেবার একটি বর্ধিত সেট সরবরাহ করে।IHttpHandler
)ক্লাসিক মোডে আইআইএস h ISAPI এক্সটেনশানগুলি এবং ইসাপি ফিল্টারগুলি সরাসরি কাজ করে। এবং দুটি পাইপ লাইন ব্যবহার করে, একটি নেটিভ কোডের জন্য এবং অন্যটি পরিচালিত কোডের জন্য। আপনি সহজেই বলতে পারেন যে ক্লাসিক মোডে আইআইএস 7.x ঠিক আইআইএস 6 এর মতো কাজ করে এবং আপনি আইআইএস 7.x বৈশিষ্ট্যগুলির বাইরে অতিরিক্ত সুবিধা পান না।
ইন্টিগ্রেটেড মোডে আইআইএস এবং এএসপি.নেট ক্লাসিক মোডের ক্ষেত্রে Asp.net- এ মাত্র দুটি ডিএলএল-র উপর নির্ভর করে শক্তভাবে মিলিত হয়।