Anda di halaman 1dari 18

MODEL ARSITEKTUR

GARIS BESAR
Sistem arsitektur Lapisan-lapisan software Model arsitektur Design requirements

TUJUAN
Tujuan dari komputasi terdistribusi adalah untuk menyatukan kemampuan dari sumber daya (baik yang berupa sumber komputasi ataupun sumber informasi) yang terpisah secara fisik, ke dalam suatu sistem gabungan yang terkoordinasi dengan kapasitas yang jauh melebihi dari kapasitas individual komponenkomponennya. Tujuan lain yang ingin dicapai dalam komputasi terdistribusi adalah transparansi. Kenyataan bahwa sumberdaya yang dipakai oleh pengguna sistim terdistribusi berada pada lokasi fisik yang terpisah, tidak perlu diketahui oleh pengguna sumberdaya tersebut. Transparansi ini memungkinkan pengguna sistem terdistribusi untuk melihat sumber daya yang terpisah tersebut seolah-olah sebagai satu sistem komputer tunggal, seperti yang biasa digunakannya. Salah satu masalah yang dihadapi dalam usaha menyatukan sumber daya yang terpisah ini antara lain adalah skalabilitas, dapat atau tidaknya sistem tersebut dikembangkan lebih jauh untuk mencakup sumber daya komputasi yang lebih banyak. Contoh pada sistem terdistribusi : paperless office Kebutuhan :

Input dan penyimpanan scanned dokumen viewing / printing dokumen jaringan untuk resources sharing dan komunikasi akunting dan analisa data Hasil yang dibutuhkan :

Tidak ada kehilangan data atau akses data oleh pihak yang tidak berwenang; respon yang cepat; tumbuh sesuai business berkembang.

PERANCANGAN DISTRIBUSI

SISTEM ARSITEKTUR
Ada 3 sistem arsitektur pada client-server, yaitu : 1. One Tier Arsitektur

Dimana client langsung terhubung ke server, tetapi sifatnya hanya berupa presentasi pada client dan tidak terjadi pemrosesan pada client. Pada server terjadi pemrosesan transaksi dan aplikasi dan data management / akses. 2. Two Tier Arsitektur Dimana client langsung berbicara ke server, tanpa ada perantara antara mereka. Perbedaan dengan one tier, pada client juga terjadi pemrosesan dan presentasi. Sedangkan pada server terjadi remote data access dan remote procedure call pada data prosessingnya. Kelebihan dari model client/server : a. Menangani Database Server secara khusus b. Relatif lebih sederhana untuk di develop dan diimplementasikan. c. Lebih cocok diterapkan untuk bisnis kecil. Server database berisi mesin database, termasuk tabel, prosedur tersimpan, dan trigger (yang juga berisi aturan bisnis). Dalam system client/server, sebagian besar logika bisnis biasanya diterapkan dalam database. Server database manangani : a. Manajemen data b. Keamanan c. Query, trigger, prosedur tersimpan d. Penangan kesalahan Kekurangan dari model client/server : a. Kurangnya skalabilitas b. Koneksi database dijaga c. Tidak ada keterbaharuan kode d. Tidak ada tingkat menengah untuk menangani keamanan dan transaksi skala kecil. e. Susah di amankan. f. Lebih mahal.

3.

Three Tier Arsitektur Menggunakan sebuah agent (misal : server), antara client dengan server. Peranan agent ini umumnya adalah untuk membantu kerja server dan meringankan beban jaringan. Contohnya memberikan layanan. Kebanyakan aplikasi web adalah 3-Tier. Kelebihan arsitektur Three Tier : a. Segala sesuatu mengenai database terinstalasikan pada sisi server, begitu pula dengan pengkonfigurasiannya. Hal ini membuat harga yang harus dibayar lebih kecil. b. Apabila terjadi kesalahan pada salah satu lapisan tidak akan menyebabkan lapisan lain ikut salah. c. Perubahan pada salah satu lapisan tidak perlu menginstalasi ulang pada lapisan yang lainnya dalam hal ini sisi server ataupun sisi client. d. Keamanan dibelakang firewall.Transfer informasi antara web server dan server database optimal. e. Komunikasi antara system-sistem tidak harus didasarkan pada standart internet, tetapi dapat menggunakan protocol komunikasi yang lebvih cepat dan berada pada tingkat yang lebih rendah. f. Penggunaan middleware mendukung efisiensi query database dalam SQL di pakai untuk menangani pengambilan informasi dari database. Kekurangan arsitekture Three Tier : a. Lebih susah untuk merancang b. Lebih susah untuk mengatur c. Lebih mahal

Contoh : Aplikasi e-Business

Application GUI , Webpage, Presentation Business rules, operation,

Business Logic

Data
Gbr : Tiered System

Presentation

Browser

Business Logic

Data Webserver

Gbr : One Tier Arsitektur

Presentation Business Logic Webserver

Browser

Data Database
Gbr : Two Tier Arsitektur

Presentation Webserver Middleware (CORBA, RMI, ) Business Logic App. Server JDBC Data Database

Browser

Gbr : Three Tier Arsitektur

N Tier Beberapa sistem terdistribusi saling berinteraksi. N-Tier biasanya menunjuk ke aplikasi web yang menyalurkan lagi permintaan kepada pelayanan enterprise. Aplikasi jenis ini yang paling berjasa bagi kesuksesan server aplikasi. Notice: phrase Tier can also imply physical separation of components, i.e. on various hardware (Physical Tier vs. Logical Tier)

One Tier Architecture

LAPISAN-LAPISAN SOFTWARE

language and runtime support for program interaction

Software Layers
Applications, services Middleware

Conventional and distributed applications

Responsible for basic-local resource management (memory allocation/protection, process creation and scheduling, local inter-process communication and peripheral
devices handling)

Operating System
Platform

Computer and network hardware

Lapisan-lapisan terpenting software dari bawah ke atas : Platform : komputer dan jaringan hardware Merupakan level hardware dan software paling rendah Umumnya terdapat program antarmuka Implementasi yang berbeda dari fasilitas sistem operasi untuk koordinasi dan komunikasi Contoh : Windows, Machintosh Sistem operasi Bertanggung jawab atas basic local resources management (alokasi memori / proteksi, penciptaan proses dan penjadwalan, komunikasi lokal dan penanganan peripheral) Middleware Program pendukung untuk distributed computing Software konektivitas yang terdiri atas kumpulan layanan-layanan saling berinteraksi pada jaringan.

Diperlukan untuk memindahkan aplikasi-aplikasi mainframe ke aplikasi client/server Menyediakan komunikasi antar bermacam-macam platform. Kunci dari konektifitas adalah NOS (Network Operating System). NOS menyediakan layanan seperti : routing, distribusi, messaging, file and print, dan network management services. Karenanya NOS bergantung pada communication protocols : media, transport, dan client / server protocol. Contoh : Windows NT / 2003 Server, Linux, Unix. Media protocol menentukan tipe dari koneksi fisik yang digunakan pada network, misal : ethernet, token ring, FDDI (Fiber Distributed Data Interface) Transport protocol menyediakan mekanisme untuk memindahkan paket data dari client ke server. Contoh : IPX / SPX (Novell), Apple Talk (Apple), TCP / IP. Client-Server protocol, memberikan aturan rata-rata bagaimana client meminta layananan dari server dan bagaimana server menjawabnya. Contoh : NetBIOS, RPC (Remote Procedur Protocol), APPC (Advanced Program to Program Communication) Open distributed services Layanan-layanan lanjut dalam sistem terdistribusi Aplikasi Aplikasi konvensional terdistribusi Lapisan-lapisan software merupakan lapisan layanan, dimana layanan-layanan ini kemudian dapat ditempatkan dimana saja pada computer / mesin yang berbedabeda. Tipe proses yang terjadi adalah : 1. 2. 3. Server process Client process Peer process

Middle Provider pendukung untuk proses terdistribusi / object suitable for applications programming komunikasi remote method invocation (Java RMI) remote procedure call (Sun RPC) pelayanan infrastruktur untuk aplikasi program penamaan, keamanan, transaksi, event notification, ... produk : CORBA, DCOM

Gbr : Dasar client / model servers

MODEL ARSITEKTUR
Banyak arsitektur perangkat lunak dan keras yang bervariasi yang digunakan untuk komputasi terdistribusi. Pada tingkat yang lebih rendah, penghubungan beberapa CPU dengan menggunakan jaringan sangat dibutuhkan. Pada tingkat yang lebih tinggi menghubungkan proses yang berjalan dalam CPU tersebut dengan sistem komunikasi juga dibutuhkan. Definisi model arsitektur :

Komponen software (processes, objects) ways in which components interact pemetaan komponen kedalam jarungan Mengapa dibutuhkan ? untuk menangani lingkungan yang bervariasi dan yang akan digunakan to guarantee performance

Tipe utamanya terdiri atas : Client-Server Tipe pertama dan paling umum digunakan Server adalah komputer yang memiliki resources, seperti : aplikasi, cd-rom, printer yang bisa di-share oleh client Server yang melayani pelayanan untuk client, dan melakukan proses data Client yang meminta pelayanan dari server, dan menyimpan data Client menghubungi server untuk pengambilan data, kemudian server memformatnya dan menampilkannya ke pengguna. Client-server ini termasuk 2-two tier, yaitu : layer server, dan layer client Contoh : Windows NT, Windows 2003 Server, Unix, Linux dengan Windows 98 / NT Workstation / Windows XP / Linux Multiple servers Untuk kinerja dan kehandalan yang lebih baik (misal : search engines, lebih dari 1000 komputer) Proxy servers Untuk mengurangi beban pada jaringan, menyediakan akses melalui firewall Agent / mesin yang bertindak atas nama server yang dibantu / digantikan fungsinya Peer processes Definisi : Sebuah arsitektur di mana tidak terdapat mesin khusus yang melayani suatu pelayanan tertentu atau mengatur sumber daya dalam

jaringan. Dan semua kewajiban dibagi merata ke seluruh mesin, yang dikenal sebagai peer. Digunakan bila respon interaktif yang lebih cepat Berfungsi sebagai client maupun server Tidak memilki kontrol terpusat pada sumber daya yang terbagi Semua perlatan dapat membagikan sumber dayanya dengan semua komputer pada jaringan yang sama Hubungan peer berarti tidak ada satu komputer-pun yang memiliki prioritas akses tertinggi, maupun tanggung jawab tertinggi untuk membagikan sumberdaya Semua user dapat bertindak sebagai administrator jaringan Setiap user dapat memutuskan user lain dapat mengakses sumberdaya secara sederhana hanya dengan melakukan permintaan atau harus menggunakan password Tightly coupled (clustered): biasanya menunjuk kepada satu set mesin yang sangat bersatu yang menjalankan proses yang sama secara paralel, membagi tugas dalam bagian-bagian, dan kemudian mengumpulkan kembali dan menyatukannya sebagai hasil akhir. Service oriented : Sistem diatur sebagai satu set pelayanan yang dapat diberikan melalui antar-muka standar. Mobile code : Berdasarkan prinsip arsitektur mendekatkan pemrosesan ke sumber data Replicated repository : Di mana "repository" dibuat replikanya dan disebarkan ke dalam sistem untuk membantu pemrosesan online/offline dengan syarat keterlambatan pembaharuan data dapat diterima. File Server - Workstation Sistem berisi workstation-workstation (komputer pribadi berkinerja tinggi) tersebar dihubungkan LAN berkecepatan tinggi.

User mempunyai workstation, dan tidak peduli lokasi data yang diolahnya. Server hanya bertugas sebagai penyimpanan data Proses dijalankan di masing-masing workstation / terminal Worksation-workstation akan menggunakan file secara bersamaan Proses yang besar dibutuhkan workstation berkemampuan besar (RAM dan prosessor) Contoh : LAN (Novell Netware, Banyan Vines)

MODEL DASAR
Client - Server

Server1 acts as client for Server2 Multiple Server

Servers may interact

Proxy Server

intranet Peer Process

firewall

outside world

Application Coordination Code

Application Coordination Code

Application Coordination Code

White-board (event notification)

Client Server Dan Mobilisasi Pada prinsipnya terbagi atas : Mobile code Didownload dari server, dan dijalankan secar lokal, Contoh : web applets Mobile agent (code + data) Berjalan dari satu komputer ke komputer lain Mengumpulkan informasi, dan kemudian kembali ke asal Catatan : mobile code dan mobile agent dibutuhkan pada security Web applets Client requests results, applet code is downloaded:

Client

Web Server

Applet Code Client interacts with the applet:


Client Web Server

Applet

PERSYARATAN DESIGN UNTUK SISTEM TERDISTRIBUSI


Untuk menilai arsitekturnya, ada beberapa hal yang harus dipertimbangkan : 1. Kinerja, seberapa cepat tanggapannya ? Responsiviness-nya seberapa cepat respon yang diberikan ? dibantu oleh penggunaan caching, penggandaan Throughput / hasil, tergantung pada kecepatan dari server dan data transfer Load balancing, adanya penggunaan applets, multiple servers 2. Ketergantungan Fault tolerance : kemampuan untuk menghadapi dan recover dari kesalahan, karenanya dibutuhkan penggunaan redundancy Correctness : penggunaan verifikasi Security : kemampuan untuk menghadapi serangan asing / bahaya, karenanya dibutuhkan penggunaan enkripsi 3. Kualitas pelayanan Apakah video frames dan audio saling sesuai ? Apakah mampu untuk beradaptasi dengan perubahan sistem ? Arsitektur 4-tier Dalam arsitektur 4-tier, semua penyimpanan data dan proses pengambilan secara logis dan biasanya secara fisik terletak pada tingkat tunggal. Sebuah arsitektur 4tier memungkinkan jumlah yang tidak terbatas program untuk berjalan secara bersamaan, mengirimkan informasi satu sama lain, gunakan protokol yang berbeda untuk berkomunikasi, dan berinteraksi secara bersamaan. Hal ini

memungkinkan untuk aplikasi jauh lebih kuat, menyediakan banyak layanan yang berbeda untuk banyak klien yang berbeda. Dalam aplikasi ini kita akan mengikuti 4-Tiers 1. Bisnis Object [BO] 2. Bisnis Access Layer [BAL] 3. Data Access Layer [DAL] 4. UI (4-Tier) folder [UI] Arsitektur 4-tier

Anda mungkin juga menyukai