NAMA : DANIEL ANDRIAN SILITONGA
NIM : 11111727
KELAS : 4KA41
Remote Procedure Call
Remote
Procedure Call (RPC) adalah sebuah metode yang memungkinkan kita untuk
mengakses sebuah prosedur yang berada di komputer lain. Untuk dapat melakukan
ini sebuah server harus menyediakan layanan remote procedure. Pendekatan yang
dilakuan adalah sebuah server membuka socket, lalu menunggu client yang meminta
prosedur yang disediakan oleh server. Bila client tidak tahu harus menghubungi
port yang mana, client bisa me- request kepada sebuah matchmaker pada sebuah
RPC port yang tetap. Matchmaker akan memberikan port apa yang digunakan oleh
prosedur yang diminta client.
RPC
masih menggunakan cara primitif dalam pemrograman, yaitu menggunakan paradigma
procedural programming. Hal itu membuat kita sulit ketika menyediakan banyak
remote procedure. RPC menggunakan socket untuk berkomunikasi dengan proses
lainnya. Pada sistem seperti SUN, RPC secara default sudah ter- install kedalam
sistemnya,
Implementasi
RPC
Untuk
proses nya kurang lebih sama dengan RMI. Kalau RMI kita mengenal proxy dan
skeleton, pada RPC dikenal dengan Stub( Client stub dan Server stub)
Gambar
Ilustrasi Implementasi RPC
Remote
Reference Modul dan Communication Modul berada pada tatanan sistem operasi.
Contoh
implementasi adalah Sun Microsystems Open Network Computing (ONC) : RPC specification,
XDR (eXternal Data Representation) standard, UDP atau TCP transport protocol.
Xerox Courier : RPC model, Data representation standard, XNS (Xerox Network
Systems)
SPP (Sequenced Packet Protocol) sbg transport protocol, Apollo s Network Computing
Architecture (NCA), RPC protocol, NDR (Network Data Representation).
Cara
Kerja RPC
Tiap
prosedur yang dipanggil dalam RPC, maka proses ini harus berkoneksi dengan
server remote dengan mengirimkan semua parameter yang dibutuhkan, menunggu
balasan dari server dan melakukan proses kemudian selesai. Proses di atas
disebut juga dengan stub pada sisi klien. Sedangkan Stub pada sisi server
adalah proses menunggu tiap message yang berisi permintaan mengenai prosedur
tertentu.
Diagram
diatas memberikan gambaran mengenai flow dari eksekusi dalam proses RPC.
Berikut ini adalah diagram yang akan menjelaskan secara rinci mengenai proses
yang terjadipada klien dan server dalam eksekusi suatu prosedur RPC :
penjelasan
dari diagram diatas :
1. Klien
memanggil prosedur stub lokal. Prosedur Stub akan memberikan parameter dalam
suatu paket yang akan dikirim ke jaringan. Proses ini disebut sebagai
marshalling.
2.
Fungsi Network pada O/S (Operating system – Sistem Operasi) akan dipanggil oleh
stub untuk mengirim suatu message.
3.
Kemudian Kernel ini akan mengirim message ke sistem remote. Kondisi ini dapat
berupa connectionless atau connection-oriented.
4. Stub
pada sisi server akan melakukan proses unmarshals pada paket yang dikirim pada network.
5. Stub
pada server kemudian mengeksekusi prosedur panggilan lokal.
6. Jika
eksekusi prosedur ini telah selesai, maka eksekusi diberikan kembali ke stub
pada server.
7. Stub
server akan melakukan proses marshals lagi dan mengirimkan message nilai balikan
( hasilnya ) kembali ke jaringan.
8.
Message ini akan dikirim kembali ke klien.
9. Stub
klien akan membaca message ini dengan menggunakan fungsi pada jaringan.
10.
Proses unmarshalled kemudian dilakukan pada message ini dan nilai balikan akan
diambil untuk kemudian diproses pada proses lokal.
Proses
diatas akan dilakukan berulang-ulang ( rekursif ) dalam pengeksekusian RPC
dalam suatu remote sistem. Contoh aplikasi untuk meremote pada teknik RPC
(Remote Procedure Call) adalah menggunakan putty untuk melakukan SSH.
Kelebihan
dan Kekurangan pada RPC
A.
Kelebihan
RPC
Relatif mudah digunakan
Pemanggilan remote procedure tidak jauh
berbeda dibandingkan pemanggilan local procedure. Sehingga pemrogram dapat
berkonsentrasi pada software logic, tidak perlu memikirkan low level details
seperti soket, marshalling dan unmarshalling.
Robust (Sempurna)
Sejak th 1980-an RPC telah banyak digunakan
dalam pengembangan mission-critical application yang memerlukan scalability,
fault tolerance, dan reliability.
B.
Kelemahan
RPC
Tidak
fleksibel terhadap perubahan Static relationship between client & server at
run-time.
Berdasarkan
prosedural/structured programming yang sudah ketinggalan jaman dibandingkan
Object Oriented Proggraming
Kurangnya
location transparency Misalnya
premrogram hanya boleh melakukan pass by value, bukan pass by reference.
Komunikasi
hanya antara 1 klien & 1 server (one-to-one at a time).
Komunikasi
antara 1 klien & beberapa server memerlukan beberapa koneksi yang terpisah.
Konsep Dasar Basis Data (database)
1.
Pengertian Basis Data
(database)
Basis data (database) merupakan kumpulan data yang saling berhubungan satu
dengan yang lainnya, tersimpan di perangkat keras komputer
dan digunakan perangkat lunak untuk
memanipulasinnya.
Data perlu disimpan didalam basis data untuk keperluan penyediaan informasi
lebih lanjut. Data didalam basis data perlu diorganisasikan sedemikian rupa,
supaya informasi yang dihasilkan berkualitas.
2.
Perancangan Basis Data
(database)
Hal yang paling penting pada saat melakukan desain file (database) adalah
pengetahuan akan struktur dari file yang didesain. Sebuah file menyimpan
record-record yang jenisnya sama.
File (database) menurut
Jenisnya
1.
File Master
File master menampung data-data yang relatif tidak mudah berubah dan menjadi
acuan bagi file yang lain (file transaksi).
2.
File Transaksi
File transaksi merupakan file sementara untuk mengumpulkan transaksi yang
terjadi yang melibatkan beberapa file master beserta data tambahan pada tiap
transaksi.
3.
File Tabel
File table merupakan file permanent yang memuat data referensi yang diperlukan
untuk memproses transaksi, memperbaharui file master atau untuk membuat suatu
output.
4.
File Laporan
File laporan merupakan file sementara yang dipakai untuk menyimpan output yang
belum dicetak.
Sistem Basis Data adalah suatu sistem menyusun dan
mengelola record -record menggunakan komputer untuk menyimpan atau merekam
serta memelihara dan operasional lengkap sebuah organisasi perusahaan sehingga
mampu menyediakan informasi yang optimal yang diperlukan pemakai untuk proses
mengambil keputusan.
Fase Merancang Basis
Data
1.
Mengumpulkan dan
Menganalisis
o Menentukan kelompok pemakai dan bidang-bidang aplikasinya.
o Meninjau dokumentasi yang ada.
o Analisis lingkungan operasi dan pemprosesan data
o Daftar pertanyaan dan wawancara.
2.
Merancang basis data
secara konseptual
Tujuan dan fase ini adalah menghasilkan conceptual schema untuk basis data yang
tergantung pada sebuah DBMS (Database Management System).Blogger
Gubug
3.
Memilih DBMS (Databse
Management System)
Pemilihan DBMS ditentukan oleh bebrapa faktor, diantaranya : faktor teknik,
ekonomi dan politik organisasi.Contoh faktor teknik : keberadaan DBMS
(Relation, Network, Hierarchical, dan lain-lain), struktur penyimpanan dan
jalur akses yang mendukung DBMS, pemakai, dan lain-lain.
Faktor-faktor ekonomi dan organisasi yang mempengaruhi satu sama lain dalam
pemilihan DBMS : struktur data, personal yang telah terbiasa dengan suatu
sistem, dan tersedianya layanan penjual.
4.
Merancang basis data
secara logika (pemetaan model data)
5.
Merancang basis data
secara fisik
Merancang basis data secara fisik merupakan proses memilih struktur-struktur
penyimpanan dan jalur-jalur akses ke file-file basis data untuk mencapai
performa terbaik di berbagai aplikasi.
6.
Implementasi basis data
Spesifikasi secara konseptual diuji dan dihubungkan dengan kode program dengan
perintah embedded DML (Data Manipulation Language).
KELAS : 4KA41
Basis data (database) merupakan kumpulan data yang saling berhubungan satu dengan yang lainnya, tersimpan di perangkat keras komputer dan digunakan perangkat lunak untuk memanipulasinnya.
Data perlu disimpan didalam basis data untuk keperluan penyediaan informasi lebih lanjut. Data didalam basis data perlu diorganisasikan sedemikian rupa, supaya informasi yang dihasilkan berkualitas.
Hal yang paling penting pada saat melakukan desain file (database) adalah pengetahuan akan struktur dari file yang didesain. Sebuah file menyimpan record-record yang jenisnya sama.
File master menampung data-data yang relatif tidak mudah berubah dan menjadi acuan bagi file yang lain (file transaksi).
File transaksi merupakan file sementara untuk mengumpulkan transaksi yang terjadi yang melibatkan beberapa file master beserta data tambahan pada tiap transaksi.
File table merupakan file permanent yang memuat data referensi yang diperlukan untuk memproses transaksi, memperbaharui file master atau untuk membuat suatu output.
File laporan merupakan file sementara yang dipakai untuk menyimpan output yang belum dicetak.
Tujuan dan fase ini adalah menghasilkan conceptual schema untuk basis data yang tergantung pada sebuah DBMS (Database Management System).Blogger Gubug
Pemilihan DBMS ditentukan oleh bebrapa faktor, diantaranya : faktor teknik, ekonomi dan politik organisasi.Contoh faktor teknik : keberadaan DBMS (Relation, Network, Hierarchical, dan lain-lain), struktur penyimpanan dan jalur akses yang mendukung DBMS, pemakai, dan lain-lain.
Faktor-faktor ekonomi dan organisasi yang mempengaruhi satu sama lain dalam pemilihan DBMS : struktur data, personal yang telah terbiasa dengan suatu sistem, dan tersedianya layanan penjual.
Merancang basis data secara fisik merupakan proses memilih struktur-struktur penyimpanan dan jalur-jalur akses ke file-file basis data untuk mencapai performa terbaik di berbagai aplikasi.
Spesifikasi secara konseptual diuji dan dihubungkan dengan kode program dengan perintah embedded DML (Data Manipulation Language).
Tidak ada komentar:
Posting Komentar