N Tier (Multi-Tier), 3-Tier, 2-Tier Architecture dengan CONTOH

Isi kandungan:

Anonim

Apa itu N-Tier?

An N-Tier Permohonan program adalah salah satu yang diedarkan di kalangan tiga atau lebih berasingan komputer dalam rangkaian teragih.

Bentuk n-tier yang paling biasa adalah Aplikasi 3-peringkat, dan ia dikelaskan kepada tiga kategori.

  • Pengaturcaraan antara muka pengguna di komputer pengguna
  • Logik perniagaan dalam komputer yang lebih berpusat, dan
  • Data yang diperlukan dalam komputer yang menguruskan pangkalan data.

Model seni bina ini menyediakan Pembangun Perisian untuk membuat aplikasi / sistem yang Boleh Digunakan Semula dengan fleksibiliti maksimum.

Dalam N-tier, "N" merujuk kepada sejumlah tingkatan atau lapisan yang digunakan seperti - 2-tier, 3-tier atau 4-tier, dll . Ia juga disebut " Senibina Pelbagai Tingkat" .

Senibina n-tier adalah model seni bina perisian yang terbukti industri. Sangat sesuai untuk mendukung aplikasi pelayan pelanggan peringkat perusahaan dengan menyediakan penyelesaian untuk skalabilitas, keamanan, toleransi kesalahan, penggunaan kembali, dan pemeliharaan. Ini membantu pembangun untuk membuat aplikasi yang fleksibel dan boleh digunakan semula.

Dalam tutorial ini, anda akan belajar-

  • Apa itu N-Tier?
  • Senibina N-Tier
  • Jenis Senibina N-Tier
    • Senibina 3 Tingkat
    • Senibina 2 Tingkat
    • Senibina Tingkat Satu atau 1 Tingkat
  • Kelebihan dan Kekurangan Senibina Pelbagai Peringkat
  • Petua dan Pembangunan Senibina N-Tier

Senibina N-Tier

Gambaran gambarajah sistem n-tier digambarkan di sini - lapisan persembahan, aplikasi, dan pangkalan data.

Diagram Senibina Tahap N

Ketiga-tiga lapisan ini dapat dibahagikan lagi kepada sub-lapisan yang berbeza bergantung pada keperluannya.

Beberapa laman web popular yang menggunakan seni bina ini adalah

  • BuatMyTrip.com
  • Aplikasi perusahaan Tenaga Jualan
  • Keretapi India - IRCTC
  • Amazon.com, dll.

Beberapa istilah umum untuk diingat, untuk memahami konsep dengan lebih jelas.

  • Rangkaian Teragih: Ini adalah seni bina rangkaian, di mana komponen yang terletak di komputer rangkaian mengkoordinasikan dan menyampaikan tindakan mereka hanya dengan menyampaikan mesej. Ini adalah kumpulan pelbagai sistem yang terletak di node yang berbeza tetapi kelihatan kepada pengguna sebagai satu sistem.
    • Ini menyediakan satu rangkaian komunikasi data yang dapat dikendalikan secara berasingan oleh rangkaian yang berbeza.
    • Contoh Rangkaian Teragih- di mana pelanggan yang berbeza disambungkan dalam seni bina LAN di satu sisi dan di sisi lain mereka disambungkan ke suis berkelajuan tinggi bersama dengan rak pelayan yang mengandungi nod perkhidmatan.
  • Client-Server Architecture: Ini adalah model seni bina di mana klien (satu program) meminta perkhidmatan dari pelayan (program lain) iaitu perkhidmatan permintaan-respons yang disediakan melalui internet atau melalui intranet.

    Dalam model ini, Klien akan berfungsi sebagai satu set program / kod yang melaksanakan satu set tindakan melalui jaringan. Sementara Server , di sisi lain, adalah satu set program lain, yang mengirimkan set hasil ke sistem klien seperti yang diminta.

    • Dalam hal ini, komputer klien menyediakan antara muka kepada pengguna akhir untuk meminta perkhidmatan atau sumber dari pelayan dan di sisi lain pelayan kemudian memproses permintaan tersebut dan memaparkan hasilnya kepada pengguna akhir.
    • Contoh Model Pelanggan-Pelayan- mesin ATM. Bank adalah pelayan untuk memproses aplikasi dalam pangkalan data pelanggan yang besar dan mesin ATM adalah pelanggan mempunyai antara muka pengguna dengan beberapa pemprosesan aplikasi yang mudah.
  • Platform: Dalam sains komputer atau industri perisian, platform adalah sistem di mana program aplikasi dapat dijalankan. Ini terdiri daripada gabungan perkakasan dan perisian yang mempunyai arahan bawaan agar pemproses / mikropemproses melakukan operasi tertentu.
    • Dengan kata yang lebih mudah, platform adalah sistem atau pangkalan di mana aplikasi dapat dijalankan dan dijalankan untuk mendapatkan tugas tertentu.
    • Contoh Platform - Mesin peribadi yang dimuatkan dengan Windows 2000 atau Mac OS X sebagai contoh 2 platform yang berbeza.
  • Pangkalan Data: Ini adalah kumpulan maklumat secara teratur sehingga dapat diakses, dikendalikan dan dikemas kini dengan mudah.
    • Contoh Pangkalan Data - MySQL, SQL Server, dan Oracle Database adalah beberapa Db yang biasa.

Jenis Senibina N-Tier

Terdapat pelbagai jenis Senibina N-Tier, seperti Senibina 3 tingkat, Senibina 2 Tingkat dan Senibina 1 Tingkat.

Pertama, kita akan melihat Senibina 3 peringkat, yang sangat penting.

Senibina 3 Tingkat

Dengan melihat rajah di bawah, anda dapat mengenal pasti bahawa seni bina 3 tingkat mempunyai tiga lapisan yang berbeza.

  • Lapisan persembahan
  • Lapisan Logik Perniagaan
  • Lapisan pangkalan data

Diagram Senibina 3 Tingkat

Di sini kami telah mengambil contoh bentuk pelajar yang mudah untuk memahami ketiga-tiga lapisan ini. Ia mempunyai maklumat mengenai pelajar seperti - Nama, Alamat, E-mel, dan Gambar.

Lapisan Antara Muka Pengguna atau Lapisan Persembahan

Lapisan Persembahan

private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e){// Object of the Property layerclsStudent objproperty=new clsStudent();// Object of the business layerclsStudentInfo objbs=new clsStudentInfo();// Object of the dataset in which we receive the data sent by the business layerDataSet ds=new DataSet();// here we are placing the value in the property using the object of the//property layerobjproperty.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();

Penjelasan Kod

  • Kod di atas menentukan reka bentuk asas pandangan depan aplikasi serta memanggil fungsi lapisan lain sehingga dapat disatukan antara satu sama lain.

Lapisan Akses Perniagaan -

Ini adalah fungsi lapisan perniagaan yang menerima data dari lapisan aplikasi dan menyebarkannya ke lapisan data.

  • Logik perniagaan bertindak sebagai antara muka antara lapisan Pelanggan dan Lapisan Akses Data
  • Semua logik perniagaan - seperti pengesahan data, pengiraan, penyisipan / pengubahsuaian data ditulis di bawah lapisan logik perniagaan.
  • Ini menjadikan komunikasi lebih pantas dan mudah antara pelanggan dan lapisan data
  • Menentukan aktiviti aliran kerja yang betul yang diperlukan untuk menyelesaikan tugas.
// 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 functionreturn ds;}}

Penjelasan kod

Kod tersebut menggunakan fungsi lapisan bisnis, yang akan menerima data untuk lapisan aplikasi dan meneruskannya ke lapisan data. Kod lapisan Perniagaan bertindak sebagai orang tengah antara fungsi yang ditentukan dalam lapisan persembahan dan lapisan data dan memanggil fungsi sebagai sebaliknya.

Lapisan Akses Data

Ini adalah fungsi lapisan data, yang menerima data dari lapisan bisnis dan melakukan operasi yang diperlukan ke dalam pangkalan data.

// this is the datalayer function which is receiving the data from the business//layer and performing the required operation into the databasepublic class clsStudentData // Data layer class{// object of property layer classpublic 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 operationds=objdt.ExecuteSql(sql);return ds;}}

Penjelasan kod

Kod yang ditentukan dalam lapisan set data di atas menerima keseluruhan permintaan: diminta oleh sistem dan melakukan operasi yang diperlukan ke dalam pangkalan data.

Senibina 2 Tingkat:

Ia seperti seni bina Pelayan Pelanggan, di mana komunikasi berlaku antara pelanggan dan pelayan.

Dalam seni bina perisian jenis ini, lapisan persembahan atau lapisan antara muka pengguna berjalan di sisi klien sementara lapisan set data dilaksanakan dan disimpan di sisi pelayan.

Tidak ada lapisan logik Perniagaan atau lapisan langsung di antara pelanggan dan pelayan.

Senibina Tingkat Satu atau 1 Tingkat:

Ini adalah yang paling mudah kerana sama dengan menjalankan aplikasi di komputer peribadi. Semua komponen yang diperlukan untuk aplikasi dijalankan pada satu aplikasi atau pelayan.

Lapisan persembahan, lapisan logik Perniagaan, dan lapisan data semuanya terletak pada satu mesin.

Kelebihan dan Kekurangan Senibina Pelbagai Peringkat

Kelebihan

Kekurangan

  • Skalabiliti
  • Peningkatan Usaha
  • Integriti Data
  • Peningkatan Kerumitan
  • Kebolehgunaan semula
  • Pengagihan Berkurang
  • Keselamatan yang ditingkatkan
  • Ketersediaan yang Ditingkatkan

Oleh itu, ia adalah bahagian dari program yang menyulitkan masalah perniagaan dunia nyata dan menentukan bagaimana data dapat dikemas kini, dibuat, disimpan, atau diubah untuk menyelesaikan tugas yang lengkap.

Petua dan Pembangunan Senibina N-Tier

Memandangkan para profesional perisian mesti mempunyai kawalan penuh pada semua lapisan seni bina, petua mengenai seni bina tingkat diberikan seperti di bawah

  1. Cuba lepaskan lapisan dari lapisan lain sebanyak mungkin dengan menggunakan teknik seperti sabun XML.
  2. Gunakan beberapa alat automatik untuk menghasilkan pemetaan antara lapisan logik perniagaan dan lapisan pangkalan data relasional (lapisan data). Alat yang dapat membantu dalam memodelkan teknik pemetaan ini adalah - Entity Framework dan Hibernate for .Net dll.
  3. Dalam lapisan penyampai pelanggan, letakkan kod biasa untuk semua pelanggan di perpustakaan yang berasingan sebanyak mungkin. Ini akan memaksimumkan penggunaan semula kod untuk semua jenis pelanggan.
  4. Lapisan cache dapat ditambahkan ke lapisan yang ada untuk mempercepat prestasi.

Ringkasan:

Senibina N-tier membantu mengurus semua komponen (lapisan perniagaan, lapisan persembahan, dan lapisan pangkalan data) aplikasi di bawah satu bumbung.

Aplikasi yang menggunakan sebilangan kecil pengguna di rangkaian kawasan tempatan dapat memanfaatkan seni bina tingkat-n.

Reka bentuk seni bina sedemikian memastikan pemeliharaan, peningkatan dan penggunaan aplikasi di Internet dengan cekap.