Tingkat N (Bertingkat), 3 Tingkat, 2 Tingkat Architekstur dengan CONTOH

Apa itu N-Tier?

An Aplikasi Tingkat N program adalah program yang didistribusikan di antara tiga atau lebih komputer terpisah dalam jaringan terdistribusi.

Bentuk n-tier yang paling umum adalah Aplikasi 3-tier, dan diklasifikasikan menjadi tiga kategori.

  • Pemrograman antarmuka pengguna di komputer pengguna
  • Logika bisnis di komputer yang lebih terpusat, dan
  • Data yang dibutuhkan pada komputer yang mengelola database.

Model arsitektur ini menyediakan Pengembang Perangkat Lunak untuk membuat aplikasi/sistem yang dapat digunakan kembali dengan fleksibilitas maksimum.

In Tingkat N, “N” mengacu pada sejumlah tingkatan atau lapisan yang digunakan seperti – 2 tingkat, 3 tingkat atau 4 tingkat, dll. Ini juga disebut “Multi-Tingkat Architekstur”.

Arsitektur n-tier adalah model arsitektur perangkat lunak yang telah terbukti di industri. Model ini cocok untuk mendukung aplikasi klien-server tingkat perusahaan dengan menyediakan solusi untuk skalabilitas, keamanan, toleransi kesalahan, penggunaan ulang, dan kemudahan perawatan. Model ini membantu pengembang untuk membuat aplikasi yang fleksibel dan dapat digunakan ulang.

Tingkat N Architekstur

Representasi diagram dari sistem n-tier digambarkan di sini – lapisan presentasi, aplikasi, dan database.

Tingkat N Architekstur
Tingkat N Archidiagram tekstur

Ketiga lapisan ini dapat dibagi lagi menjadi sub-lapisan berbeda tergantung pada kebutuhan.

Beberapa situs populer yang telah menerapkan arsitektur ini adalah

  • MakeMyTrip.com
  • Aplikasi perusahaan Tenaga Penjualan
  • Kereta Api India – IRCTC
  • Amazon.com, dll.

Beberapa istilah umum yang perlu diingat, agar dapat memahami konsepnya dengan lebih jelas.

  • Jaringan Terdistribusi: Arsitektur jaringan, di mana komponen-komponen yang terletak di komputer jaringan berkoordinasi dan mengomunikasikan tindakan mereka hanya dengan menyampaikan pesan. Arsitektur jaringan merupakan kumpulan beberapa sistem yang terletak di node yang berbeda tetapi tampak bagi pengguna sebagai satu sistem.
    • Ini menyediakan jaringan komunikasi data tunggal yang dapat dikelola secara terpisah oleh jaringan yang berbeda.
    • Contoh Jaringan Terdistribusi – di mana beberapa klien terhubung dalam arsitektur LAN di satu sisi dan di sisi lain terhubung ke switch berkecepatan tinggi beserta rak server yang berisi node layanan.
  • Server klien Architekstur: Ini adalah model arsitektur di mana klien (satu program) meminta layanan dari server (program lain). yaitu Ini adalah layanan permintaan-respons yang disediakan melalui internet atau intranet. Dalam model ini, Konfirmasi akan berfungsi sebagai satu set program/kode yang menjalankan serangkaian tindakan melalui jaringan. Ketika Server, di sisi lain, adalah sekumpulan program lain, yang mengirimkan kumpulan hasil ke sistem klien seperti yang diminta.
    • Dalam hal ini, komputer klien menyediakan antarmuka kepada pengguna akhir untuk meminta layanan atau sumber daya dari server dan di sisi lain server kemudian memproses permintaan tersebut dan menampilkan hasilnya kepada pengguna akhir.
    • Contoh Model Client-Server– mesin ATM. Bank adalah server untuk memproses aplikasi dalam database pelanggan yang besar dan mesin ATM adalah klien yang memiliki antarmuka pengguna dengan beberapa pemrosesan aplikasi sederhana.
  • Platform: Dalam ilmu komputer atau industri perangkat lunak, platform adalah sistem tempat program aplikasi dapat berjalan. Ini terdiri dari kombinasi perangkat keras dan perangkat lunak yang memiliki instruksi bawaan untuk prosesor/mikroprosesor untuk melakukan operasi tertentu.
    • Dengan kata yang lebih sederhana, platform adalah suatu sistem atau basis di mana aplikasi apa pun dapat dijalankan dan dieksekusi untuk mendapatkan tugas tertentu.
    • Contoh Platform – Mesin pribadi yang dilengkapi dengan Windows 2000 atau Mac OS X sebagai contoh 2 platform berbeda.
  • Database: Merupakan kumpulan informasi secara terorganisir sehingga dapat dengan mudah diakses, dikelola dan diperbarui.
    • Contoh Basis Data – MySQL, SQL Server, dan Oracle Database adalah beberapa Db yang umum.

Jenis Tingkat-N Architekstur

Ada berbagai jenis N-Tier Architekstur, seperti 3 tingkat Architekstur, 2 Tingkat Architekstur dan 1- Tingkat Architekstur.

Pertama, kita akan melihat 3 tingkat Architekstur, yang sangat penting.

3-Tingkat Architekstur

Dengan melihat diagram di bawah ini, Anda dapat dengan mudah mengidentifikasinya Arsitektur 3 tingkat memiliki tiga lapisan berbeda.

  • Lapisan presentasi
  • Lapisan Logika Bisnis
  • Lapisan basis data
Tingkat 3 Archidiagram tekstur
Tingkat 3 Archidiagram tekstur

Di sini kami mengambil contoh sederhana formulir siswa untuk memahami ketiga lapisan ini. Formulir tersebut berisi informasi tentang siswa seperti – Nama, Alamat, Email, dan Gambar.

Lapisan Antarmuka Pengguna atau Lapisan Presentasi

3-Tingkat Architekstur

Lapisan Presentasi

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();

Penjelasan Kode

  • Kode di atas mendefinisikan perancangan dasar tampilan ujung depan aplikasi serta pemanggilan fungsi lapisan lain sehingga dapat diintegrasikan satu sama lain.

Lapisan Akses Bisnis –

Ini adalah fungsi lapisan bisnis yang menerima data dari lapisan aplikasi dan meneruskannya ke lapisan data.

  • Logika bisnis bertindak sebagai antarmuka antara lapisan Klien dan Lapisan Akses Data
  • Semua logika bisnis – seperti validasi data, penghitungan, penyisipan/modifikasi data ditulis di bawah lapisan logika bisnis.
  • Itu membuat komunikasi lebih cepat dan mudah antara klien dan lapisan data
  • Mendefinisikan aktivitas alur kerja yang tepat 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 function
	 return ds;
	}
}

Penjelasan kode

Kode ini menggunakan fungsi lapisan bisnis, yang akan menerima data untuk lapisan aplikasi dan meneruskannya ke lapisan data. Kode lapisan Bisnis bertindak sebagai mediator antara fungsi yang ditentukan di lapisan presentasi dan lapisan data dan memanggil fungsi sebaliknya.

Lapisan Akses Data

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

// 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;
	}
}

Penjelasan kode

Kode yang ditentukan dalam lapisan kumpulan data di atas menerima seluruh permintaan: diminta oleh sistem dan melakukan operasi yang diperlukan ke dalam database.

2-Tingkat Architekstur

Ini seperti arsitektur Client-Server, di mana komunikasi terjadi antara klien dan server.

Dalam jenis arsitektur perangkat lunak ini, lapisan presentasi atau lapisan antarmuka pengguna berjalan di sisi klien sementara lapisan kumpulan data dieksekusi dan disimpan di sisi server.

Tidak ada lapisan logika Bisnis atau lapisan langsung antara klien dan server.

Tingkat Tunggal atau 1 Tingkat Architekstur

Ini adalah cara paling sederhana karena setara dengan menjalankan aplikasi di komputer pribadi. Semua komponen yang diperlukan agar suatu aplikasi dapat berjalan ada pada satu aplikasi atau server.

Lapisan presentasi, lapisan logika bisnis, dan lapisan data semuanya terletak di satu mesin.

Kelebihan dan Kekurangan Multi-Tier Architekstur

Kelebihan Kekurangan
Skalabilitas Peningkatan Upaya
Data Integrity Peningkatan Kompleksitas
Dapat digunakan kembali
Distribusi yang Dikurangi
Keamanan yang Ditingkatkan
Peningkatan Ketersediaan

Oleh karena itu, ini adalah bagian dari program yang mengenkripsi masalah bisnis dunia nyata dan menentukan bagaimana data dapat diperbarui, dibuat, disimpan, atau diubah untuk menyelesaikan tugas.

Tingkat N ArchiTip dan Pengembangan tektur

Mengingat para profesional perangkat lunak harus memiliki kontrol penuh pada semua lapisan arsitektur, tips tentang arsitektur n-tier diberikan seperti di bawah ini

  1. Cobalah untuk memisahkan lapisan dari lapisan lain sebanyak mungkin dengan menggunakan teknik seperti sabun XML.
  2. Gunakan beberapa alat otomatis untuk menghasilkan pemetaan antara lapisan logika bisnis dan lapisan database relasional (lapisan data). Alat yang dapat membantu dalam memodelkan teknik pemetaan ini adalah – Entity Framework dan Hibernate for .Net, dll.
  3. Di lapisan presenter klien, sebanyak mungkin masukkan kode umum untuk semua klien di perpustakaan terpisah. Ini akan memaksimalkan penggunaan kembali kode untuk semua jenis klien.
  4. Lapisan cache dapat ditambahkan ke lapisan yang sudah ada untuk mempercepat kinerja.

Ringkasan

Arsitektur N-tier membantu mengelola semua komponen (lapisan bisnis, lapisan presentasi, dan lapisan basis data) suatu aplikasi di bawah satu atap.

Aplikasi yang menggunakan sejumlah kecil pengguna pada jaringan area lokal dapat memperoleh manfaat dari arsitektur n-tier.

Desain arsitektur seperti itu memastikan pemeliharaan, peningkatan skala, dan penyebaran aplikasi di Internet secara efisien.