Arsitektur tiga lapis adalah arsitektur aplikasi perangkat lunak yang sudah mapan, yang mengorganisasi aplikasi ke dalam tiga lapisan komputasi logis dan fisik: lapisan presentasi, atau antarmuka pengguna; lapisan aplikasi, tempat data diproses; dan lapisan data, tempat data aplikasi disimpan dan dikelola.
Manfaat utama dari arsitektur tiga tingkat adalah bahwa karena setiap lapisan berjalan pada infrastrukturnya sendiri, masing-masing lapisan dapat dikembangkan secara bersamaan oleh tim pengembang yang berbeda. Dan dapat diperbarui atau diskalakan sesuai kebutuhan tanpa memengaruhi tingkatan lainnya.
Selama beberapa dekade arsitektur tiga tingkat adalah arsitektur yang berlaku untuk aplikasi klien-server. Hari ini, sebagian besar aplikasi tiga tingkat adalah target untuk modernisasi yang menggunakan teknologi cloud native seperti kontainer dan layanan mikro dan untuk migrasi ke cloud.
Buletin penelitian
Temukan penelitian baru dalam AI, Quantum, hybrid cloud, dan banyak lagi dari pakar IBMdengan buletin Future Forward bulanan. Lihat Pernyataan Privasi IBM.
Langganan Anda akan dikirimkan dalam bahasa Inggris. Anda akan menemukan tautan berhenti berlangganan di setiap buletin. Anda dapat mengelola langganan atau berhenti berlangganan di sini. Lihat Pernyataan Privasi IBM kami untuk informasi lebih lanjut.
Tingkat presentasi adalah antarmuka pengguna dan lapisan komunikasi aplikasi, di mana pengguna akhir berinteraksi dengan aplikasi. Tujuan utamanya adalah untuk menampilkan informasi dan mengumpulkan informasi dari pengguna. Tingkat atas ini dapat berjalan di browser web, sebagai aplikasi desktop, atau antarmuka pengguna grafis (GUI), misalnya. Tingkat presentasi web dikembangkan dengan menggunakan HTML, CSS, dan JavaScript. Aplikasi desktop dapat ditulis dalam berbagai bahasa bergantung pada platform.
Tingkat aplikasi, juga dikenal sebagai tingkat logika atau tingkat menengah, adalah jantung dari aplikasi. Di tingkat ini, informasi yang dikumpulkan di tingkat presentasi diproses - kadang-kadang terhadap informasi lain di tingkat data - menggunakan logika bisnis, seperangkat business rules. Tingkat aplikasi juga dapat menambah, menghapus, atau memodifikasi data di tingkat data.
Tingkatan aplikasi biasanya dikembangkan dengan menggunakan Python, Java, Perl, PHP atau Ruby, dan berkomunikasi dengan tingkatan data dengan menggunakan panggilan API .
Tingkat data, kadang-kadang disebut tingkat basis data, tingkat akses data atau back-end, adalah tempat informasi yang diproses oleh aplikasi disimpan dan dikelola. Ini bisa berupa sistem manajemen basis data relasional seperti PostgreSQL, MySQL, MariaDB, Oracle, Db2, Informix atau Microsoft SQL Server, atau di server Basis Data NoSQL seperti Cassandra, CouchDB, atau MongoDB.
Dalam aplikasi tiga tingkat, semua komunikasi melewati tingkat aplikasi. Tingkat presentasi dan data tidak dapat berkomunikasi secara langsung satu sama lain.
Sekali lagi, manfaat utama arsitektur tiga tingkat adalah pemisahan fungsionalitas logis dan fisik. Setiap tingkat dapat berjalan pada sistem operasi dan platform server terpisah - misalnya, server web, server aplikasi, server basis data - yang paling sesuai dengan persyaratan fungsionalnya. Dan setiap tingkat berjalan pada setidaknya satu perangkat keras server khusus atau server virtual, sehingga layanan dari setiap tingkat dapat disesuaikan dan dioptimalkan tanpa mempengaruhi tingkatan lainnya.
Manfaat lain (dibandingkan dengan arsitektur satu atau dua tingkat) meliputi:
Dalam diskusi tentang arsitektur tiga tingkat, lapisan sering digunakan secara bergantian - dan keliru – untuk tingkat, seperti dalam 'lapisan presentasi' atau 'lapisan logika bisnis'.
Mereka tidak sama. Sebuah 'lapisan' mengacu pada pembagian fungsional perangkat lunak, tetapi 'tier' mengacu pada divisi fungsional perangkat lunak yang berjalan pada infrastruktur yang terpisah dari divisi lainnya. Aplikasi Kontak di ponsel Anda, misalnya, adalah aplikasi tiga-lapis , tetapi aplikasi tier -tunggal, karena ketiga lapisan berjalan di ponsel Anda.
Perbedaannya penting karena lapisan tidak dapat menawarkan manfaat yang sama dengan tingkatan.
Dalam pengembangan web, tingkatan memiliki nama yang berbeda tetapi melakukan fungsi yang sama:
Sementara arsitektur tiga tingkat adalah arsitektur aplikasi beberapa tingkat yang paling banyak diadopsi, ada arsitektur lain yang mungkin Anda temui dalam pekerjaan atau riset Anda.
Arsitektur dua tingkat adalah arsitektur klien-server asli, terdiri atas tingkat presentasi dan tingkat data; logika bisnis berada di tingkat presentasi, tingkat data atau keduanya. Dalam arsitektur dua tingkat, tingkat presentasi - dan oleh karena itu pengguna akhir - memiliki akses langsung ke tingkat data, dan logika bisnis sering terbatas. Aplikasi manajemen kontak sederhana, di mana pengguna dapat memasukkan dan mengambil data kontak, adalah contoh aplikasi dua tingkat.
Arsitektur N-tier - juga disebut arsitektur multitier - mengacu pada arsitektur aplikasi apa pun dengan lebih dari satu tingkat. Tetapi aplikasi dengan lebih dari tiga lapisan jarang terjadi karena lapisan tambahan menawarkan sedikit manfaat dan dapat membuat aplikasi lebih lambat, lebih sulit dikelola dan lebih mahal untuk dijalankan. Akibatnya, arsitektur n-tier dan arsitektur multitier biasanya sinonim untuk arsitektur tiga tingkat.
Layanan penyewa tunggal yang dikelola sepenuhnya untuk mengembangkan dan menyediakan aplikasi Java.
Gunakan perangkat lunak dan alat bantu DevOps untuk membangun, menerapkan, dan mengelola aplikasi cloud native di berbagai perangkat dan lingkungan.
Pengembangan aplikasi cloud berarti membangun sekali, mengulangi dengan cepat, dan menerapkan di mana saja.