एन टियर (मल्टी-टियर), 3-टियर, 2-टियर Archiउदाहरण सहित व्याख्यान
एन-टियर क्या है?
An एन-टियर अनुप्रयोग प्रोग्राम वह होता है जो वितरित नेटवर्क में तीन या अधिक पृथक कंप्यूटरों के बीच वितरित किया जाता है।
एन-टियर का सबसे सामान्य रूप 3-टियर अनुप्रयोग है, और इसे तीन श्रेणियों में वर्गीकृत किया गया है।
- उपयोगकर्ता के कंप्यूटर में उपयोगकर्ता इंटरफ़ेस प्रोग्रामिंग
- अधिक केंद्रीकृत कंप्यूटर में व्यावसायिक तर्क, और
- कंप्यूटर में आवश्यक डेटा जो डेटाबेस का प्रबंधन करता है।
यह आर्किटेक्चर मॉडल सॉफ्टवेयर डेवलपर्स को अधिकतम लचीलेपन के साथ पुन: प्रयोज्य अनुप्रयोग/प्रणाली बनाने की सुविधा प्रदान करता है।
In एन-टियर, “एन” कई स्तरों या परतों का उपयोग किया जा रहा है जैसे - 2-स्तरीय, 3-स्तरीय या 4-स्तरीय, आदि. इसे “ भी कहा जाता हैमल्टी टीयर Archiटेक्चर”.
एन-स्तरीय वास्तुकला यह एक उद्योग-सिद्ध सॉफ्टवेयर आर्किटेक्चर मॉडल है। यह स्केलेबिलिटी, सुरक्षा, दोष सहिष्णुता, पुन: प्रयोज्यता और रखरखाव के लिए समाधान प्रदान करके एंटरप्राइज़ स्तर के क्लाइंट-सर्वर अनुप्रयोगों का समर्थन करने के लिए उपयुक्त है। यह डेवलपर्स को लचीले और पुन: प्रयोज्य अनुप्रयोग बनाने में मदद करता है।
n स्तरीय Archiटेक्चर
यहां एन-स्तरीय प्रणाली का आरेखीय निरूपण दर्शाया गया है - प्रस्तुति, अनुप्रयोग और डेटाबेस परतें।

इन तीन परतों को आवश्यकताओं के आधार पर विभिन्न उप-परतों में विभाजित किया जा सकता है।
कुछ लोकप्रिय साइटें जिन्होंने इस वास्तुकला को लागू किया है वे हैं
- मेकमाईट्रिप.कॉम
- सेल्स फोर्स एंटरप्राइज़ अनुप्रयोग
- भारतीय रेलवे – IRCTC
- Amazon.com, आदि.
कुछ सामान्य शब्दों को याद रखें, ताकि अवधारणा को अधिक स्पष्ट रूप से समझा जा सके।
- वितरित नेटवर्क: यह एक नेटवर्क आर्किटेक्चर है, जहाँ नेटवर्क कंप्यूटर पर स्थित घटक केवल संदेश भेजकर अपने कार्यों का समन्वय और संचार करते हैं। यह विभिन्न नोड्स पर स्थित कई प्रणालियों का एक संग्रह है, लेकिन उपयोगकर्ता को एक ही सिस्टम के रूप में दिखाई देता है।
- यह एक एकल डेटा संचार नेटवर्क प्रदान करता है जिसे विभिन्न नेटवर्कों द्वारा अलग-अलग प्रबंधित किया जा सकता है।
- वितरित नेटवर्क का एक उदाहरण - जहां एक तरफ विभिन्न क्लाइंट LAN आर्किटेक्चर के भीतर जुड़े होते हैं और दूसरी तरफ वे सर्विस नोड्स वाले सर्वर के रैक के साथ हाई-स्पीड स्विच से जुड़े होते हैं।
- क्लाइंट सर्वर Archiटेक्चर: यह एक आर्किटेक्चर मॉडल है जहां क्लाइंट (एक प्रोग्राम) सर्वर (दूसरे प्रोग्राम) से सेवा का अनुरोध करता है यानी यह इंटरनेट या इंट्रानेट के माध्यम से प्रदान की जाने वाली अनुरोध-प्रतिक्रिया सेवा है। इस मॉडल में, ग्राहक प्रोग्राम/कोड के एक सेट के रूप में काम करेगा जो नेटवर्क पर क्रियाओं के एक सेट को निष्पादित करता है। सर्वरदूसरी ओर, यह एक अन्य प्रोग्राम का सेट है, जो अनुरोध के अनुसार परिणाम सेट को क्लाइंट सिस्टम को भेजता है।
- इसमें, क्लाइंट कंप्यूटर अंतिम उपयोगकर्ता को सर्वर से सेवा या संसाधन का अनुरोध करने के लिए एक इंटरफेस प्रदान करता है और दूसरी ओर सर्वर अनुरोध को संसाधित करता है और अंतिम उपयोगकर्ता को परिणाम प्रदर्शित करता है।
- क्लाइंट-सर्वर मॉडल का एक उदाहरण- एटीएम मशीन। बैंक बड़े ग्राहक डेटाबेस के भीतर एप्लिकेशन को प्रोसेस करने के लिए सर्वर है और एटीएम मशीन क्लाइंट है जिसमें कुछ सरल एप्लिकेशन प्रोसेसिंग के साथ यूजर इंटरफेस है।
- प्लेटफार्म: कंप्यूटर विज्ञान या सॉफ्टवेयर उद्योग में, प्लेटफ़ॉर्म एक ऐसा सिस्टम होता है जिस पर एप्लीकेशन प्रोग्राम चल सकता है। इसमें हार्डवेयर और सॉफ्टवेयर का संयोजन होता है जिसमें प्रोसेसर/माइक्रोप्रोसेसर को विशिष्ट संचालन करने के लिए एक अंतर्निहित निर्देश होता है।
- सरल शब्दों में कहें तो प्लेटफॉर्म एक प्रणाली या आधार है जहां कोई भी एप्लिकेशन चल सकता है और किसी विशिष्ट कार्य को प्राप्त करने के लिए निष्पादित हो सकता है।
- प्लेटफ़ॉर्म का एक उदाहरण - एक व्यक्तिगत मशीन जो लोड की गई है Windows 2000 या मैक ओएस एक्स को दो अलग-अलग प्लेटफार्मों के उदाहरण के रूप में लिया जा सकता है।
- डेटाबेस: यह संगठित तरीके से सूचनाओं का संग्रह है, ताकि इसे आसानी से प्राप्त, प्रबंधित और अद्यतन किया जा सके।
- डेटाबेस के उदाहरण – MySQL, एसक्यूएल सर्वर, और Oracle Database कुछ सामान्य Db हैं.
एन-टियर के प्रकार Archiटेक्चर्स
एन-टियर के विभिन्न प्रकार हैं Archiटेक्चर्स, जैसे 3 स्तरीय Archiटेक्चर, 2-टियर Archiटेक्चर और 1- टियर Archiटेकचर.
सबसे पहले हम 3-स्तरीय देखेंगे Archiटेकचर, जो बहुत महत्वपूर्ण है।
3-टियर Archiटेक्चर
नीचे दिए गए चित्र को देखकर आप आसानी से पहचान सकते हैं कि 3-स्तरीय वास्तुकला इसमें तीन अलग-अलग परतें हैं।
- प्रस्तुति अंश
- व्यवसाय तर्क परत
- डेटाबेस परत

यहाँ हमने इन तीनों परतों को समझने के लिए स्टूडेंट फॉर्म का एक सरल उदाहरण लिया है। इसमें स्टूडेंट के बारे में जानकारी होती है जैसे - नाम, पता, ईमेल और तस्वीर।
उपयोगकर्ता इंटरफ़ेस परत या प्रस्तुति परत
प्रस्तुति अंश
private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)
{
// Object of the Property layer
clsStudent objproperty=new clsStudent();
// Object of the business layer
clsStudentInfo objbs=new clsStudentInfo();
// Object of the dataset in which we receive the data sent by the business layer
DataSet ds=new DataSet();
// here we are placing the value in the property using the object of the
//property layer
objproperty.id=int.Parse(DataGridl.SelectedItem.Cells[1].Text.ToString());
// In this following code we are calling a function from the business layer and
// passing the object of the property layer which will carry the ID till the database.
ds=objbs.GetAllStudentBsIDWise(objproperty);
// What ever the data has been returned by the above function into the dataset
//is being populate through the presentation laye.
txtId.Text=ds.Tables[0].Rows[0][0].ToString();
txtFname.Text=ds.Tables[0].Rows[0][1].ToString();
txtAddress.Text=ds.Tables[0].Rows[0][2].ToString();
txtemail.Text=ds.Tables[0].Rows[0][3].ToString();
Code व्याख्या
- उपरोक्त कोड अनुप्रयोगों के फ्रंट-एंड दृश्य के बुनियादी डिजाइनिंग को परिभाषित करता है, साथ ही अन्य परतों के कार्यों को कॉल करने को भी परिभाषित करता है, ताकि उन्हें एक-दूसरे के साथ एकीकृत किया जा सके।
बिजनेस एक्सेस लेयर –
यह बिजनेस लेयर का कार्य है जो एप्लिकेशन लेयर से डेटा स्वीकार करता है और उसे डेटा लेयर तक पहुंचाता है।
- व्यावसायिक तर्क क्लाइंट परत और डेटा एक्सेस परत के बीच एक इंटरफेस के रूप में कार्य करता है
- सभी व्यावसायिक तर्क - जैसे डेटा का सत्यापन, गणना, डेटा सम्मिलन/संशोधन, व्यावसायिक तर्क परत के अंतर्गत लिखे जाते हैं।
- यह क्लाइंट और डेटा लेयर के बीच संचार को तेज़ और आसान बनाता है
- किसी कार्य को पूरा करने के लिए आवश्यक उचित वर्कफ़्लो गतिविधि को परिभाषित करता है।
// this is the function of the business layer which accepts the data from the
//application layer and passes it to the data layer.
public class clsStudentInfo
{
public DataSet GetAllStudentBsIDWise(clsStudent obj)
{
DataSet ds=new DataSet();
ds=objdt.getdata_dtIDWise(obj);// Calling of Data layer function
return ds;
}
}
कोड का स्पष्टीकरण
कोड बिजनेस लेयर के फ़ंक्शन का उपयोग कर रहा है, जो एप्लिकेशन लेयर के लिए डेटा स्वीकार करेगा और इसे डेटा लेयर को पास करेगा। बिजनेस लेयर कोड प्रेजेंटेशन लेयर और डेटा लेयर में परिभाषित फ़ंक्शन के बीच मध्यस्थ के रूप में कार्य करते हैं और फ़ंक्शन को इसके विपरीत कॉल करते हैं।
डेटा एक्सेस लेयर
यह डेटा लेयर फ़ंक्शन है, जो बिजनेस लेयर से डेटा प्राप्त करता है और डेटाबेस में आवश्यक ऑपरेशन करता है।
// this is the datalayer function which is receiving the data from the business
//layer and performing the required operation into the database
public class clsStudentData // Data layer class
{
// object of property layer class
public DataSet getdata_dtIDUise(clsStudent obj)
{
DataSet ds;
string sql;
sql="select * from student where Studentld=" +obj.id+ "order by Studentld;
ds=new DataSet();
//this is the datalayer function which accepts the sql query and performs the
//corresponding operation
ds=objdt.ExecuteSql(sql);
return ds;
}
}
कोड का स्पष्टीकरण
उपरोक्त डेटासेट परत में परिभाषित कोड संपूर्ण अनुरोध को स्वीकार करता है: सिस्टम द्वारा अनुरोधित और डेटाबेस में आवश्यक संचालन निष्पादित करता है।
2-टियर Archiटेक्चर
यह क्लाइंट-सर्वर आर्किटेक्चर की तरह है, जहां क्लाइंट और सर्वर के बीच संचार होता है।
इस प्रकार के सॉफ्टवेयर आर्किटेक्चर में, प्रेजेंटेशन लेयर या यूजर इंटरफेस लेयर क्लाइंट साइड पर चलती है, जबकि डेटासेट लेयर को सर्वर साइड पर निष्पादित और संग्रहीत किया जाता है।
क्लाइंट और सर्वर के बीच कोई बिजनेस लॉजिक परत या तत्काल परत नहीं होती है।
एकल स्तर या 1-स्तर Archiटेक्चर
यह सबसे सरल है क्योंकि यह पर्सनल कंप्यूटर पर एप्लीकेशन चलाने के बराबर है। किसी एप्लीकेशन को चलाने के लिए सभी आवश्यक घटक एक ही एप्लीकेशन या सर्वर पर होते हैं।
प्रस्तुति परत, व्यवसाय तर्क परत और डेटा परत सभी एक ही मशीन पर स्थित हैं।
मल्टी-टियर के फायदे और नुकसान Archiटेक्चर्स
| फायदे | नुकसान |
|---|---|
| अनुमापकता | प्रयास में वृद्धि |
| जानकारी Integrity | जटिलता में वृद्धि |
| रेस की क्षमता | |
| कम वितरण | |
| बेहतर सुरक्षा | |
| बेहतर उपलब्धता |
इसलिए, यह एक प्रोग्राम का हिस्सा है जो वास्तविक दुनिया की व्यावसायिक समस्याओं को एन्क्रिप्ट करता है और यह निर्धारित करता है कि संपूर्ण कार्य पूरा करने के लिए डेटा को कैसे अपडेट, बनाया, संग्रहीत या बदला जा सकता है।
n स्तरीय Archiटेक्चर टिप्स और विकास
यह ध्यान में रखते हुए कि सॉफ्टवेयर पेशेवरों को आर्किटेक्चर की सभी परतों पर पूर्ण नियंत्रण होना चाहिए, एन-टियर आर्किटेक्चर पर सुझाव नीचे दिए गए हैं
- साबुन XML जैसी तकनीक का उपयोग करके यथासंभव परतों को दूसरी परत से अलग करने का प्रयास करें।
- मानचित्र बनाने के लिए कुछ स्वचालित उपकरणों का उपयोग करें।ping बिजनेस लॉजिक लेयर और रिलेशनल डेटाबेस लेयर (डेटा लेयर) के बीच का मैप। इन मैप्स को मॉडल करने में मदद करने वाले टूल्स।ping तकनीकें हैं – एंटिटी फ्रेमवर्क और .नेट के लिए हाइबरनेट आदि।
- क्लाइंट प्रेजेंटर लेयर में, सभी क्लाइंट के लिए एक सामान्य कोड को यथासंभव एक अलग लाइब्रेरी में रखें। इससे सभी प्रकार के क्लाइंट के लिए कोड की पुनः प्रयोज्यता अधिकतम हो जाएगी।
- प्रदर्शन में तेजी लाने के लिए कैश परत को मौजूदा परत में जोड़ा जा सकता है।
सारांश
एन-स्तरीय वास्तुकला किसी एप्लिकेशन के सभी घटकों (व्यावसायिक परत, प्रस्तुति परत और डेटाबेस परत) को एक ही छत के नीचे प्रबंधित करने में मदद करती है।
स्थानीय क्षेत्र नेटवर्क पर कम संख्या में उपयोगकर्ताओं का उपयोग करने वाले अनुप्रयोग एन-स्तरीय वास्तुकला से लाभ उठा सकते हैं।
इस प्रकार का वास्तुशिल्प डिजाइन इंटरनेट पर किसी एप्लिकेशन को कुशलतापूर्वक बनाए रखने, बढ़ाने और तैनात करने को सुनिश्चित करता है।

