My Way

My Way
My next destination

Selasa, 19 Maret 2013

LaTeX

LATEX (LaTeX) adalah bahasa markup atau sistem persiapan pembuatan dokumen untuk pengetikan sistem TeX, yang dinamakan berdasarkan gaya penulisannya sebagai LaTeX. Nama LaTeX itu sendiri hanya mengacu pada bahasa penulisan yang digunakan pada sebuah dokumen, bukan pada editor yang digunakan untuk menulis dokumen tersebut. Untuk membuat dokumen dalam format LaTeX, sebuah file berformat .tex harus dibuat menggunakan semacam text editor. Walaupun, banyak text editor yang dapat digunakan untuk membuat dokumen LaTeX, beberapa text editor sengaja dibuat khusus untuk menggunakan bahasa LaTex.
LaTeX sangat banyak digunakan di Institusi-Institusi pendidikan. Sebagai contoh, digunakan untuk menerjemahkan DocBook dan berbagai macam file berekstensi XML ke dalam format PDF, LaTeX digunakan karena kualitasnya yang tinggi dalam typesetting yang dapat dicapai oleh TeX. Sistem typesetting LaTeX menawarkan Desktop Publishing yang Programmable atau dapat di tulis ulang dan fasilitas extensive untuk otomatisasi aspek-aspek dalam typesetting dan desktop publishing, termasuk pemberian nomor, dan referensi silang, tabel dan bingkai, tata letak halaman, dan bibliographies. 
Sejarah Singkat Latex
Untuk dapat memahami sejarah LaTeX, kita perlu mengetahui terlebih dahulu sejarah TeX. LaTeX adalah hasil turunan dari TeX. TeX adalah bahasa pemrograman yang diciptakan khusus dan menjadi bagian utama dari sistem pencetakan (typesetting system) yang akan menghasilkan dokumen (teks, gambar, notasi matematis) yang berkualitas tinggi. TeX diciptakan oleh Prof. Donald Knuth sekitar tahun 1978. 
Awalnya Prof. Donald Knuth menciptakan TeX pada akhir tahun 1978 untuk merevisi buku karyanya yaitu The Art of Computer Programming edisi kedua. Buku The Art of Computer Programming memerlukan perbaikan karena banyak simbol matematika yang tidak dapat dicetak dengan sempurna oleh sistem percetakan pada masa itu. 
Prof. Donald Knuth berharap program yang dibuatnya akan mampu menghasilkan sistem percetakan dokumen yang berkualitas tinggi, mampu mencetak teks, angka, simbol-simbol matematis dengan sempurna.

Perintah dalam LateX
Ada  3 tipe perintah dalam LATEX:

  1. single karakter seperti: # $ & ˜ _ ˆ % { } yang semuanya mempunyai makna.
  2. Karakter \ (garis miring terbalik) yang disertai dengan satu karakter lain yang bukan huruf misalny \$ untuk menghasilkan tulisan $.
  3. Karakter \ (garis miring terbalik) yang disertai dengan beberapa karakter huruf dan membentuk sebuah perintah.

Semua perintah adalah case-sensitif, artinya perintah dengan huruf besar dan huruf kecil akan menghasilkan perintah yang berbeda. Beberapa perintah juga diikuti dengan argument dari perintah utamanya, misalnya \begin{equation} dll.
Kelebihan dan Kekurangan LaTeX

Kelebihan LaTeX:
  1. Hasil tampilan dokumennya profesional sekali! Mirip buku teks!
  2. Ketika kita ngetik, kita tidak peduli tampilan dan layout. Layout nanti diatur oleh file utama (misal: main.tex).
  3. LaTeX itu free of charge, alias gratis! Kalau MS Word kita harus beli softwarenya.
  4. Rumus-rumus matematika dapat diatur dengan mudah, tetapi proses membuat rumus memang painstaking!
  5. Cocok untuk programmer atau orang-orang yang suka program
  6. Tidak pernah crash (adanya error karena salah memasukkan command atau karena software tidak updated)
  7. File-nya relatif kecil
  8. Font-nya indah
  9. Tutorial dan command untuk symbol banyak tersedia di internet.
Kekurangan LaTeX:
  1. Perlu kesabaran dan ketekunan karena memang tidak user-friendly seperti MS Word
  2. Kalau dokumennya pendek, jangan memakai LaTeX. 
  3. Harus mengetahui command/perintah supaya cepat mengetiknya. Tapi dengan berjalannya waktu orang akan familiar dengan perintah-perintahnya.

Lyx

Lyx merupakan suatu sistem persiapan dokumen. LYX merupakan suatu alat untuk menghasilkan suatu manuskrip, buku, surat dan proposal bahkan puisi yang dalam format yang cantik. Tidak seperti pengolah kata pada umumnya, dalam arti bahwa LYX menggunakan paradigma bahasa markup sebagai gaya pengeditan intinya. Dengan kata lain, ketika Anda mengetik suatu header pada suatu bagian, maka Anda akan menAndainya sebagai "Section", bukan sebagai "Bold, 17 pt type, left justified, 5mm space below". LYX akan mengurus typesetting untuk Anda, sehingga Anda hanya cukup berurusan dengan konsep dan isi dokumen, bukan dengan mekaniknya.
Berikut ini adalah lifecycle dan beberapa pengertian secara ringkas:
TeX –>LaTeX–>Lyx
  • TeX       : Typesetting bahasa dengan kemampuan makro.
  • LaTeX   : Makro paket dibangun di atas TeX.
  • Class     : Deskripsi dari jenis dokumen, menggunakan LaTeX.
  • Style      : Alter perilaku default LaTeX dalam beberapa cara.
  • LyX       : Visual, word-prosesor berprinsip WYSIWYM  yang menggunakan LaTeX untuk melakukan typesetting nya.
Lyx cocok digunakan untuk membuat memo, surat, disertasi dan tesis, catatan kuliah, catatan seminar, prosiding konferensi, dokumentasi software, buku, artikel pada jurnal ilmiah, skrip untuk drama dan film, proposal bisnis, dan presentasi.
Keunggulan dari LyX adalah output yang konsisten – misalnya, semua paragraf dipastikan memiliki margin yang sama, semua judul dipastikan memiliki besar sama, dst. Selain itu, karena dokumen sangat terstruktur maka ada fitur untuk melakukan navigasi intra-dokumen yang sangat bagus (ada daftar judul-judul bab dan sub-bab, kita bisa meng-klik untuk pindah ke bagian tersebut dengan cepat).
Keburukan dari LyX adalah sangat sulit mengatur style (warna, font, dll) yang baku dari style yang sudah ada seperti judul bab, judul sub-bab, dll (walaupun untuk tulisan bukan judul bisa dilakukan). Juga sulit untuk mengatur apa-apa yang sudah di pre-format oleh Lyx, misalnya di mana penomoran halaman diletakkan, atau kata-kata otomatis yang digunakan. Seperti Chapter xxx, Figure xxx, Table xxx (dalam penomoran otomatis)... tetapi versi Bahasa Indonesia seperti Bab xxx, Gambar xxx, Tabel xxx tersedia (dengan memilih bahasa Bahasa (seharusnya Bahasa Indonesia kan???)), tetapi seperti yang sudah dikatakan kita tidak bisa mengubahnya menjadi Bagian xxx atau Figur xxx misalnya.
 

Minggu, 17 Maret 2013

Remote Procedure Call (RPC)




Remote Procedure Call (RPC) adalah protokol yang satu program yang dapat digunakan untuk meminta layanan dari program yang terletak di komputer lain dalam jaringan tanpa harus mengerti detail jaringan. (Sebuah panggilan prosedur ini juga kadang-kadang dikenal sebagai panggilan fungsi atau panggilan subroutine.) RPC menggunakan model client / server. Program meminta adalah klien dan program layanan yang menyediakan adalah server. Seperti prosedur panggilan biasa atau lokal, RPC adalah operasi sinkron membutuhkan program meminta untuk ditunda sampai hasil prosedur remote dikembalikan. Namun, penggunaan proses ringan atau benang yang berbagi ruang alamat yang sama memungkinkan beberapa RPC yang akan dilakukan secara bersamaan.Ketika program pernyataan yang menggunakan RPC dikompilasi menjadi sebuah program dieksekusi, rintisan disertakan dalam kode dikompilasi yang bertindak sebagai wakil dari kode prosedur remote. Ketika program dijalankan dan panggilan prosedur dikeluarkan, stub menerima permintaan dan ke depan untuk sebuah program client runtime di komputer lokal. Program runtime klien memiliki pengetahuan tentang bagaimana untuk menangani aplikasi komputer dan remote server dan mengirim pesan di seluruh jaringan yang meminta prosedur remote. Demikian pula, server mencakup program runtime dan rintisan antarmuka dengan prosedur remote itu sendiri. Hasil yang dikembalikan dengan cara yang sama.Ada beberapa RPC model dan implementasi. Sebuah model populer dan implementasi Distributed Computing Software Foundation Open Lingkungan (DCE). The Institute of Electrical dan Electronics Engineers mendefinisikan RPC di Remote Procedure Spesifikasi nya Panggil ISO, ISO / IEC 11578 CD N6561, ISO / IEC, November 1991.RPC meliputi lapisan Transport dan lapisan aplikasi dalam System Interconnection Model Terbuka (OSI) komunikasi jaringan. RPC membuatnya lebih mudah untuk mengembangkan aplikasi yang mencakup beberapa program didistribusikan dalam jaringan.Metode alternatif untuk klien / server komunikasi termasuk antrian pesan dan Advanced IBM Program-to-Program Communication (APPC).Terkait glossary istilah: Webify, MQSeries, Ruby on Rails (RoR atau Rails), pesan-driven proses, waktu Internet, konten, user interface (UI), kuburan, Object Management Group (OMG), perangkat lunak

Remote Procedure Call (RPC) memberikan paradigma yang berbeda untuk mengakses layanan jaringan. Alih-alih mengakses layanan remote dengan mengirim dan menerima pesan, klien memanggil layanan dengan membuat panggilan prosedur lokal. Prosedur lokal menyembunyikan rincian jaringan komunikasi.Ketika membuat panggilan prosedur remote:

    
Lingkungan memanggil ditunda, parameter prosedur yang ditransfer melalui jaringan ke lingkungan di mana prosedur ini untuk mengeksekusi, dan prosedur yang dieksekusi di sana.

    
Ketika prosedur selesai dan menghasilkan hasil-hasilnya, hasilnya akan ditransfer kembali ke lingkungan menelepon, di mana eksekusi resume seakan kembali dari panggilan prosedur rutin.Tujuan utama dari RPC adalah untuk menyembunyikan keberadaan jaringan dari sebuah program. Akibatnya, RPC tidak cukup cocok dengan model OSI:

    
Sifat message-passing komunikasi jaringan tersembunyi dari pengguna. Pengguna tidak pertama membuka koneksi, membaca dan menulis data, dan kemudian menutup koneksi. Memang, klien sering doesn bahkan tidak tahu bahwa mereka menggunakan jaringan!

    
RPC sering menghilangkan banyak lapisan protokol untuk meningkatkan kinerja. Bahkan peningkatan kinerja kecil penting karena program dapat memanggil RPCs sering. Sebagai contoh, pada (diskless) workstation Sun, setiap akses file dibuat melalui RPC.RPC terutama cocok untuk client-server (misalnya, permintaan-respon) interaksi di mana aliran bergantian kontrol antara pemanggil dan callee. Secara konseptual, klien dan server tidak baik mengeksekusi pada waktu yang sama. Sebaliknya, benang melompat eksekusi dari pemanggil ke callee dan kemudian kembali lagi.Langkah-langkah berikut berlangsung selama RPC:

    
Seorang klien memanggil prosedur rintisan klien, melewati parameter dengan cara yang biasa. Rintisan klien berada dalam ruang alamat klien sendiri.

    
Rintisan klien Marshall parameter ke dalam pesan. Marshalling termasuk mengubah representasi dari parameter ke dalam format standar, dan menyalin setiap parameter ke dalam pesan.

    
Rintisan klien melewati pesan ke lapisan transport, yang mengirimkannya ke mesin server remote.

    
Pada server, lapisan transport melewati pesan ke stub server, yang demarshalls parameter dan memanggil rutin server yang diinginkan dengan menggunakan mekanisme prosedur panggilan biasa.

    
Ketika prosedur Server selesai, ia kembali ke rintisan server (misalnya, melalui prosedur panggilan kembali normal), yang Marshall kembali nilai-nilai ke dalam pesan. Rintisan server maka tangan pesan ke lapisan transport.

    
Lapisan transport mengirimkan pesan hasil kembali ke lapisan transport klien, yang tangan pesan kembali ke client stub.

    
Rintisan klien demarshalls parameter kembali dan kembali eksekusi ke pemanggil. 

RPC MasalahMasalah yang harus diatasi:Marshalling:
    
Parameter harus disusun kedalam representasi standar.

    
Parameter terdiri dari tipe sederhana (misalnya, bilangan bulat) dan jenis senyawa (misalnya, C atau Pascal struktur catatan). Selain itu, karena setiap jenis memiliki representasi sendiri, jenis berbagai parameter harus diketahui oleh modul yang benar-benar melakukan konversi. Misalnya, 4 byte karakter akan ditafsirkan, sementara integer 4-byte mungkin perlu urutan byte yang terbalik.Semantik:
    
Call-by-referensi tidak mungkin: klien dan server tidak berbagi ruang alamat. Artinya, alamat direferensikan oleh server sesuai dengan data yang berada di ruang alamat klien.

    
Satu pendekatan adalah untuk mensimulasikan call-by-referensi menggunakan copy-restore. Dalam copy-restore, call-by-referensi parameter ditangani dengan mengirimkan salinan dari struktur data yang direferensikan ke server, dan kembali mengganti salinan klien dengan yang dimodifikasi oleh server.

    
Namun, copy-restore tidak bekerja dalam semua kasus. Misalnya, jika argumen yang sama dilewatkan dua kali, dua salinan akan dibuat, dan referensi melalui satu-satunya parameter perubahan salah satu salinan.Binding:
    
Bagaimana klien tahu siapa yang menelepon, dan di mana layanan berada?

    
Solusi yang paling fleksibel adalah dengan menggunakan mengikat dinamis dan menemukan server pada saat dijalankan ketika RPC pertama kali dibuat. Pertama kali rintisan klien dipanggil, ia kontak nama server untuk menentukan alamat transportasi di mana server berada.Transport protokol:
    
Apa protokol transport harus digunakan?Exception handling:
    
Bagaimana kesalahan ditangani?MengikatKami akan meneliti satu solusi untuk masalah di atas dengan mempertimbangkan pendekatan yang diambil oleh Birrell dan Nelson []. Binding terdiri dari dua bagian:Penamaan
    
mengacu pada apa layanan yang diinginkan klien untuk menggunakan.

    
Di B & N, prosedur remote bernama melalui antarmuka. Sebuah antarmuka unik mengidentifikasi layanan tertentu, menggambarkan jenis dan jumlah argumen. Hal ini hampir sama dengan definisi ketik languauges pemrograman.

    
Misalnya, ``'' telepon layanan antarmuka mungkin menentukan argumen string tunggal yang mengembalikan sejumlah karakter string telepon.Locating
    
mengacu menemukan alamat transportasi di mana server sebenarnya berada. Setelah kita memiliki alamat transportasi layanan, kita dapat mengirim pesan langsung ke server.Dalam sistem B & N ini, server memiliki layanan untuk menawarkan ekspor sebuah antarmuka untuk itu. Mengekspor antarmuka register dengan sistem sehingga klien dapat menggunakannya.Seorang klien harus mengimpor antarmuka (diekspor) sebelum komunikasi dapat dimulai. Ekspor impor dan operasi yang analog dengan yang ditemukan dalam sistem berorientasi objek.Nama-nama antarmuka terdiri dari dua bagian:

    
Suatu jenis yang unik menentukan antarmuka (layanan) disediakan. Type adalah spesifikasi tingkat tinggi, seperti mail ``'' atau `` file'' akses.

    
Contoh menentukan server tertentu yang menawarkan jenis (misalnya, `` akses file pada WPI'').Nama ServerB & N RPC sistem dikembangkan sebagai bagian dari sistem terdistribusi yang disebut Grapevine. Grapevine dikembangkan di Xerox oleh kelompok riset yang sama yang mengembangkan Ethernet.Antara lain, Grapevine menyediakan database, didistribusikan direplikasi, dilaksanakan oleh server yang berada di berbagai lokasi di internet.Klien dapat query, menambahkan entri baru atau mengubah entri yang ada dalam database.Database Peta Grapevine karakter string kunci untuk entri yang disebut RNames. Ada dua jenis entri:Perorangan:
    
Sebuah contoh dari layanan. Setiap server register alamat transportasi di mana layanan dapat diakses dan setiap instance dari sebuah antarmuka terdaftar sebagai entri individu. Entri individu memetakan kasus ke alamat yang berhubungan transportasi.Kelompok:
    
Jenis antarmuka, yang terdiri dari daftar RNames individu. Entri kelompok mengandung RNames yang mengarah ke server menyediakan layanan yang memiliki nama grup. Entri kelompok memetakan jenis (antarmuka) untuk satu set entri individu yang menyediakan layanan tersebut.Misalnya, jika WPI dan bigboote baik akses file ditawarkan, masuknya kelompok `` file'' akses akan terdiri dari dua RNames individu, satu untuk WPI dan server bigboote itu.Layanan Antarmuka Ekspor / ImporKetika server ingin ekspor interface:

    
Ini panggilan rintisan server-nya, yang kemudian memanggil Grapevine, lewat itu jenis dan contoh dari layanan yang ingin mendaftar. Setelah antarmuka telah terdaftar dengan Grapevine, dapat diimpor oleh klien. Catatan: Grapevine menjamin bahwa baik individu dan entri kelompok telah dibentuk untuk layanan diekspor.

    
Rintisan server kemudian mencatat informasi tentang contoh dalam tabel ekspor internal.

    
Di B & N, ada satu meja ekspor per mesin, yang berisi entri untuk semua antarmuka saat ini diekspor. Tabel ini digunakan untuk memetakan pesan masuk RPC permintaan untuk prosedur server yang sesuai mereka.

    
Setiap entri dalam tabel ekspor berisi:

    
pengenal yang unik yang mengidentifikasi antarmuka yang, dan

    
pointer ke rintisan server yang harus dipanggil untuk memanggil layanan antarmuka. Pengenal unik tidak pernah digunakan kembali. Jika server crash dan restart, pengidentifikasi baru digunakan.Klien mengikat ke layanan diekspor sebagai berikut:

    
Rintisan klien memanggil database Grapevine untuk menemukan contoh dari jenis yang diinginkan.

    
Database server mengembalikan entri grup yang diinginkan, dan klien memilih salah satu server individu.

    
Rintisan client mengirimkan pesan ke server yang dipilih rintisan meminta informasi tentang contoh itu.

    
Rintisan Server mengembalikan identifier unik dan indeks entri tabel ekspor yang tepat. Klien menyimpan [identifier, index] pasangan karena akan membutuhkannya ketika benar-benar membuat RPC.

    
Klien sekarang siap untuk benar-benar memanggil prosedur remote:

        
Klien mengirimkan indeks ekspor meja dan pengenal unik bersama-sama dengan parameter panggilan ke server.

        
Setelah menerima pesan, rintisan server menggunakan tabel indeks yang terkandung dalam pesan untuk menemukan entri yang sesuai dalam tabel ekspor.

        
Rintisan server kemudian membandingkan identifier disediakan dengan satu di meja. Jika mereka berbeda, menolak panggilan prosedur yang tidak valid.

        
Jika tidak memanggil prosedur rintisan server.Binding CatatanCatatan: The pengidentifikasi unik dalam perubahan tabel ekspor setiap kali server crash dan restart, yang memungkinkan klien untuk mendeteksi restart server antara panggilan. Dalam kasus-kasus di mana klien tidak peduli jika server telah ulang, itu hanya rebinds ke contoh lain dari interface dan restart panggilan jarak jauh.Catatan: Identifier dikelola oleh server dan tidak disimpan dalam database Grapevine. Menyimpannya dalam database Grapevine akan mengurangi jumlah pesan yang dipertukarkan selama fase mengikat. Namun, pendekatan saat ini sangat mengurangi beban pada server Grapevine. Dalam kebanyakan kasus, ketika server mengekspor sebuah antarmuka untuk Grapevine, entri akan telah terdaftar sebelumnya, dan tidak ada update ke database diperlukan (update mahal karena database didistribusikan).Menggunakan database Grapevine menyediakan terlambat mengikat. Penelepon mengikat untuk server tertentu di runtime memungkinkan untuk memindahkan server ke komputer lain tanpa memerlukan perubahan perangkat lunak klien.Akhirnya, yang terpisah mendaftarkan jenis dan contoh menyediakan fleksibilitas yang besar. Daripada mengikat contoh spesifik, klien meminta untuk jenis tertentu. Karena semua contoh tipe mengimplementasikan antarmuka yang sama, rutinitas dukungan RPC akan mengambil daftar contoh dikembalikan oleh Grapevine dan memilih salah satu yang paling dekat dengan klien.Bagaimana mengikat dilakukan pada sistem lain?Semantik dari RPCTidak seperti panggilan prosedur normal, banyak hal bisa salah dengan RPC. Biasanya, klien akan mengirim permintaan, server akan mengeksekusi permintaan tersebut dan kemudian kembali respon terhadap klien. Apa semantik yang tepat untuk kegagalan server atau jaringan? Kemungkinan:

    
Hanya menggantung selamanya menunggu jawaban yang tidak akan pernah datang. Ini panggilan prosedur rutin model. Jika prosedur normal masuk ke sebuah loop tak terbatas, si penelepon tidak pernah tahu. Tentu saja, beberapa pengguna akan seperti semantik tersebut.

    
Waktu keluar dan meningkatkan pengecualian atau kegagalan laporan kepada klien. Tentu saja, menemukan nilai waktu yang tepat sulit. Jika prosedur remote memakan waktu lama untuk mengeksekusi, timer mungkin waktu keluar terlalu cepat.

    
Waktu keluar dan memancarkan kembali permintaan.Sedangkan kemungkinan terakhir tampaknya yang paling masuk akal, hal itu dapat menyebabkan masalah. Misalkan:

    
Klien mengirimkan permintaan, server mengeksekusinya, tapi kemudian crash sebelum mengirim respon. Jika kita tidak mendapat jawaban, apakah ada cara untuk mengetahui apakah server bertindak atas permintaan?

    
Restart server, dan klien mentransmisikan kembali permintaan. Apa yang terjadi? Sekarang, server akan menolak pengiriman ulang karena pengenal yang unik yang disediakan tidak lagi pertandingan yang dalam tabel ekspor server. Pada titik ini, klien dapat memutuskan untuk rebind ke server baru dan coba lagi, atau bisa menyerah.

    
Misalkan klien rebinds ke server lain, mentransmisikan kembali permintaan, dan mendapat tanggapan. Berapa kali akan permintaan telah dilaksanakan? Setidaknya sekali, dan mungkin dua kali. Kami tidak memiliki cara untuk mengetahui.Operasi yang aman dapat dilaksanakan dua kali disebut idempoten. Misalnya, mengambil waktu dan tanggal saat ini, atau mengambil halaman tertentu dari file.Adalah dikurangi $ 10.000 dari sebuah idempoten akun? Nomor Satu hanya dapat mengurangi uang sekali. Demikian juga, menghapus file tidak idempotent. Jika permintaan menghapus dijalankan dua kali, upaya pertama akan berhasil, sedangkan upaya kedua menghasilkan `` file error'' tidak ada.RPC SemantikSementara pelaksana RPC, B & N ditentukan bahwa semantik RPCs dapat dikategorikan dalam berbagai cara:Tepat sekali:
    
Jenis yang paling diinginkan semantik, di mana setiap panggilan dilakukan tepat satu kali, tidak lebih dan tidak kurang. Sayangnya, semantik tersebut tidak dapat dicapai dengan biaya rendah, jika klien mengirimkan permintaan, dan server crash, klien tidak memiliki cara untuk mengetahui apakah server telah menerima dan memproses permintaan sebelum menabrak.Paling banyak sekali:
    
Ketika kontrol kembali ke pemanggil, operasi akan telah dilaksanakan tidak lebih dari sekali. Apa yang terjadi jika server crash? Jika server crash, klien akan diberitahu tentang kesalahan, tetapi tidak akan memiliki cara untuk mengetahui apakah atau tidak operasi itu dilakukan.Setidaknya sekali:
    
Klien hanya terus mentransmisi permintaan sampai mendapatkan respon yang diinginkan. Setelah kembali ke pemanggil, operasi akan dilakukan minimal satu kali, tapi kali mungkin beberapa.Transportasi Protokol untuk RPCBisakah kita menerapkan RPC di atas sebuah protokol transport yang ada seperti TCP? Ya. Namun, protokol aliran diandalkan dirancang untuk tujuan yang berbeda: throughput tinggi. Biaya pengaturan dan mengakhiri sambungan tidak signifikan dibandingkan dengan jumlah data dipertukarkan. Sebagian besar waktu yang berlalu dihabiskan mengirim data.Dengan RPC, latency rendah lebih penting daripada throughput tinggi. Jika aplikasi akan menggunakan RPC seperti mereka menggunakan prosedur biasa (misalnya, berulang-ulang), kinerja sangat penting.RPC dapat dicirikan sebagai contoh spesifik komunikasi berorientasi transaksi, di mana:

    
Sebuah transaksi terdiri dari satu permintaan dan respon tunggal.

    
Sebuah transaksi dimulai ketika klien mengirimkan permintaan dan diakhiri oleh respon server.Berapa banyak paket TCP akan diperlukan untuk transaksi permintaan-respon tunggal? Minimal 5 paket: 3 untuk jabat tangan awal, ditambah 2 untuk FIN FIN dan ACK (dengan asumsi bahwa kita dapat piggy kembali data dan FIN pada paket ketiga dari 3-way handshake).Transaksi-oriented protocol transport efisien harus menangani kasus-kasus berikut:

    
Transaksi di mana kedua permintaan dan pesan respon muat dalam satu paket. Tanggapan dapat berfungsi sebagai pengakuan, dan klien menangani kasus paket yang hilang oleh transmisi ulang permintaan yang asli.

    
Besar multi-paket permintaan dan pesan respon, di mana data tidak selalu cocok dalam satu paket. Misalnya, beberapa sistem menggunakan RPC untuk mengambil halaman dari sebuah file dari sebuah file server. Sebuah permintaan tunggal-paket akan menentukan nama file, posisi awal dari data diinginkan, dan jumlah byte untuk dibaca. Tanggapan dapat terdiri dari beberapa halaman (misalnya 8K byte) data.


Layanan Yang Bergantung pada RPCSS
 
Layanan DeskripsiLatar Belakang Cerdas transfer Layanan-Transfer data antara klien dan server di latar belakang.COM + Sistem Event-Mendukung Sistem Acara Pemberitahuan Layanan (SENS), yang menyediakan distribusi otomatis peristiwa untuk berlangganan Component Object Model (COM) komponen.COM + Aplikasi Sistem-Mengelola konfigurasi dan pelacakan dari COM + berbasis komponen.Cryptographic Services-Menyediakan jasa manajemen tiga: Catalog Database Service, yang menegaskan tanda tangan dari file Windows, Akar Layanan Protected, yang menambah dan menghapus sertifikat Trusted Otoritas Sertifikasi Akar dari komputer ini, dan Layanan Kunci, yang membantu mendaftarkan komputer ini untuk sertifikat.DHCP Server-Melakukan TCP / IP konfigurasi untuk klien DHCP, termasuk tugas dinamis alamat IP, spesifikasi WINS dan server DNS, dan koneksi khusus Domain Name System (DNS) nama.Tautan Terdistribusi Pelacakan Klien-Memungkinkan program klien untuk melacak file terkait yang bergerak dalam volume NTFS lain volume NTFS pada komputer yang sama atau volume NTFS di komputer lain.Tautan Terdistribusi Pelacakan Server-Mengaktifkan layanan link Pelacakan Klien Didistribusikan dalam domain yang sama untuk memberikan perawatan yang lebih handal dan efisien dari link dalam domain.Tautan Terdistribusi Transaksi Koordinator-Koordinat transaksi yang span beberapa sumber daya manajer, seperti database, antrian pesan, dan sistem file.DNS Server-Memungkinkan klien DNS untuk menyelesaikan nama DNS dengan menjawab pertanyaan DNS dan permintaan update dinamis.Layanan Pelaporan Kesalahan-Mengumpulkan, menyimpan, dan kegagalan laporan aplikasi yang tak terduga untuk Microsoft.Replikasi File Layanan-Memungkinkan file yang akan otomatis disalin dan dipelihara secara bersamaan pada beberapa server.Bantuan dan Dukungan-Memungkinkan Pusat Bantuan dan Dukungan untuk berjalan di komputer.Human Interface Perangkat Access-Memungkinkan akses masukan umum untuk Human Interface Devices (HID), yang mengaktifkan dan mempertahankan penggunaan tombol panas yang telah ditetapkan pada keyboard, remote kontrol, dan perangkat multimedia lainnya.Indexing Service-Indeks isi dan properti dari file pada komputer lokal dan remote, menyediakan akses cepat ke file melalui bahasa query fleksibel.IPSec Layanan-Menyediakan end-to-end keamanan antara klien dan server pada jaringan TCP / IP.Kerberos Key Distribution Center-Pada kontroler domain, memungkinkan pengguna untuk log on ke jaringan menggunakan protokol otentikasi Kerberos.Logical Disk Manager-Mendeteksi dan memantau drive baru hard disk dan mengirimkan informasi disk volume Disk Manager Layanan Administrasi logis untuk konfigurasi.Disk logis Service Manager Administrasi-Mengkonfigurasi hard disk drive dan volume.Kurir-Mengirim net mengirim dan pesan layanan Alerter antara klien dan server. Layanan ini tidak berhubungan dengan Windows Messenger.Microsoft Software Shadow Copy Provider-Mengatur software berbasis salinan bayangan volume yang diambil oleh layanan Volume Shadow Copy.Jaringan Koneksi-Mengelola objek dalam Jaringan dan Dial-Up Koneksi folder di mana Anda dapat melihat jaringan area lokal (LAN) dan sambungan jarak jauh.Print Spooler-Mengelola semua antrian cetak lokal dan jaringan dan mengendalikan semua pekerjaan pencetakan.Protected Storage-Melindungi penyimpanan informasi sensitif, seperti kunci pribadi dan mencegah akses yang tidak sah oleh layanan, proses, atau pengguna.Remote Desktop Bantuan Session Manager-Mengelola dan mengontrol Remote Assistance.Remote Registry-Memungkinkan pengguna jauh untuk mengubah pengaturan registri pada komputer.Removable Storage-Mengelola dan media removable katalog dan beroperasi otomatis perangkat removable media.Resultan Set Kebijakan Provider-Memungkinkan pengguna untuk terhubung ke komputer remote, mengakses Windows Management Instrumentation (WMI) database untuk komputer itu, dan baik memverifikasi pengaturan Kebijakan Grup saat ini dibuat untuk komputer atau periksa pengaturan sebelum mereka diterapkan.Routing dan Remote Access-Memungkinkan multi-protokol LAN-to-LAN, LAN-to-wide area network (WAN), virtual private network (VPN), dan network address translation (NAT) routing layanan untuk klien dan server pada jaringan.Security Account Manager-Setelah startup, sinyal layanan lain bahwa Security Account Manager (SAM) siap untuk menerima permintaan.Shell Hardware Detection-Menyediakan pemberitahuan untuk acara hardware AutoPlay.Task Scheduler-Memungkinkan pengguna untuk mengkonfigurasi dan jadwal tugas otomatis pada komputer.Telephon-Menyediakan Telephony API (TAPI) dukungan untuk klien menggunakan program yang mengontrol perangkat telephony dan IP berbasis koneksi suara.Telnet-Memungkinkan remote user untuk log on ke program komputer dan menjalankan, mendukung berbagai TCP / IP klien Telnet, termasuk komputer UNIX-based dan berbasis Windows.Terminal Services-Memungkinkan pengguna untuk terhubung secara interaktif ke komputer remote. Remote Desktop, Fast User Switching, Remote Assistance, dan Terminal Server tergantung pada layanan ini.Terminal Services Session Directory-Memungkinkan permintaan pengguna koneksi untuk diteruskan ke server terminal yang sesuai dalam sebuah cluster.Unggah Manajer-Mengelola transfer file sinkron dan asinkron antara klien dan server pada jaringan.Virtual Disk Layanan-Menyediakan Volume software dan hardware layanan manajemen volume.Volume Shadow Copy-Mengelola dan mengimplementasikan Salinan Bayangan Volume digunakan untuk tujuan backup dan lainnya.Windows Audio-Mengelola perangkat audio untuk program berbasis Windows.Windows Image Acquisition (WIA)-Menyediakan jasa akuisisi citra untuk scanner dan kamera.Windows Installer- Menginstal, perbaikan, dan menghapus software sesuai dengan instruksi yang terkandung dalam file MSI..Windows Internet Name Service (WINS)- Resolve nama NetBIOS untuk TCP / IP klien dengan menempatkan layanan jaringan yang menggunakan nama NetBIOS.Windows Management Instrumentation- Menyediakan interface umum dan model obyek untuk mengakses informasi manajemen tentang sistem operasi, perangkat, aplikasi, dan layanan. Jika layanan ini dihentikan, paling Windows berbasis perangkat lunak tidak akan berfungsi dengan baik.Wireless Konfigurasi- Memungkinkan konfigurasi otomatis untuk adapter IEEE 802.11.


WMI Kinerja Adapter
-Menyediakan informasi kinerja perpustakaan dari penyedia WMI untuk klien pada jaringan.


Sumber 
Sumber 
Sumber 

Selasa, 12 Maret 2013

Model Sistem Terdistribusi



Pengertian Model :
Model adalah pola (contoh, acuan, ragam) dari sesuatu yang akan dibuat atau dihasilkan (Departemen P dan K, 1984:75). Definisi lain dari model adalah abstraksi dari sistem sebenarnya, dalam gambaran yang lebih sederhana serta mempunyai tingkat prosentase yang bersifat menyeluruh, atau model adalah abstraksi dari realitas dengan hanya memusatkan perhatian pada beberapa sifat dari kehidupan sebenarnya (Simamarta, 1983: ix – xii).

Definisi sistem :
Menurut Gordon B Davis Sistem adalah seperangkat unsur unsur yang terdiri dari manusia, alat konsep dan proseduryang dihimpun untuk maksud dan tujuan bersama.
Menurut Raymond Mc Leod Sistem adalah sekelompok elemen yang terintegrasi dengan maksud yang sama untuk mencapai suatu tujuan.
Karakteristik sistem :
  1. Komponen
  2. Lingkungan luar
  3. Batasan
  4. Jalinan /interface
  5. Input
  6. Proses
  7. Output
  8. Tujuan

Pengertian Distribusi
Distribusi adalah suatu proses penyampaian barang atau jasa dari produsen ke konsumen dan para pemakai, sewaktu dan dimana barang atau jasa tersebut diperlukan. Proses distribusi tersebut pada dasarnya menciptakan faedah (utility) waktu, tempat, dan pengalihan hak milik.
Dalam menciptakan ketiga faedah tersebut, terdapat dua aspek penting yang terlibat didalamnya, yaitu :
  1. Lembaga yang berfungsi sebagai saluran distribusi (Channel of distribution/marketing channel).
  2. Aktivitas yang menyalurkan arus fisik barang (Physical distribution).
1. Model Client Server
• Client:
– Proses akses data
– Melakukan operasi pada komputer lain
• Server:
– Proses mengatur data
– Proses mengatur resources
– Proses komputasi
• Interaksi:
– Invocation/result
2. Model Multiple Server
• Service disediakan oleh beberapa server
• Contoh:
– Sebuah situs yang jalankan dibeberapa server
• Server menggunakan replikasi atau database terdistribusi


3. Model Proxy Server
• Proxy server membuat duplikasi beberapa server yang  diakses oleh client
• Caching:
– Penyimpanan lokal untuk item yang sering diakses
– Meningkatkan kinerja
– Mengurangi beban pada server
Contoh Model Proxy Server
• Searching satu topik namun dilakukan dua kali maka searching terakhir memiliki waktu yang lebih kecil

4. model Mobile Code
• Kode yang berpindah dan dijalankan pada pc yang berbeda
• Contoh: Applet

5. Model Peer To Peer
Bagian dari model sistem terdistribusi dimana sistem dapat sekaligus berfungsi sebagai client maupun server. Sebuah arsitektur di mana tidak terdapat mesin khusus yang melayani suatu pelayanan tertentu atau mengatur sumber daya dalam jaringan dan semua kewajiban dibagi rata ke seluruh mesin, yang dikenal sebagai peer. Pola komunikasi yang digunakan berdasarkan aplikasi yang digunakan. Peer-to-peer merupakan model yang paling general dan fleksible.




6. Model Mobile Agent
•    Mobile Agent adalah sebuah program yang berpindah (termasuk data dan kode) dari satu komputer ke lainnya dalam jaringan
•    Biasanya melakukan suatu pekerjaan otomatis tertentu
•    Beberapa masalah :
-    Authentication
-    Permission dan keamanan
•    Alternatif
-    Mengambil informasi melalui remote invocation
•    Contoh :
-    Digunakan untuk install dan memelihara software pada komputer dalam suatu organisasi
-    Membandingkan harga produk dari beberapa vendor

Kelebihan dan Kekurangan Model Sistem Terdistribusi


Sistem terdistribusi merupakan sebuah sistem yg komponennya berada pd jaringan komputer. Komponen tsb saling berkomunikasi & melakukan koordinasi hanya dgn pengiriman pesan (message passing). Contoh penerapan Distributed System : Small Area Network (SAN) . Local Area Network (LAN), Metropolitan Area Network (MAN), Online Service (OL) / Outernet, Wide Area Network (WAN) / International Network (Internet).
Sistem diatas terdiri atas tiga model yaitu :
1. Sistem client - server
2. Sistem point to point
3. Sistem terkluster
Client - Server
Merupakan bagian dari model sistem terdistribusi yang membagi jaringan berdasarkan pemberi dan penerima jasa layanan.
Kelebihan jaringan client server
Mendukung keamanan jaringan yang lebih baik
Kemudahan administrasi ketika jaringan bertambah besar
Manajemen jaringan terpusat
Semua data bisa disimpan dan di backup terpusat di satu lokasi
Kekurangan jaringan client server
Butuh administrator jaringan yang profesional
Butuh perangkat bagus untuk digunakan sebagai komputer server
Butuh software tool operasional untuk mempermudah manajemen jaringan
Anggaran untuk manajemen jaringan menjadi besar
Bila server down, semua data dan resource diserver tidak bisa diakses.

Point to Point
Merupakan bagian dari model sistem terdistribusi dimana sistem dapat sekaligus berfungsi sebagai client maupun server.
Kelebihan jaringan point to point
Implementasinya murah dan mudah
Tidak memerlukan software administrasi jaringan yang khusus
Tidak memerlukan administrator jaringan
Kekurangan jaringan point to point
Jaringan tidak bisa terlalu besar (tidak bisa memperbesar jaringan)
Tingkat keamanan rendah
Tidak ada yang memanajemen jaringan
Pengguna komputer jaringan harus terlatih mengamankan komputer masing-masing
Semakin banyak mesin yang disharing, akan mempengaruhi kinerja komputer.
Sistem Terkluster
Secara umum, sistem kluster adalah gabungan dari beberapa sistem individual ( komputer ) yang dikumpulkan pada suatu lokasi, saling berbagi tempat penyimpanan data ( storage ), dan saling terhubung dalam jaringan lokal ( Local Area Network ).
Keuntungan:
a. Absolute scalability . Adalah mungkin untuk menciptakan sistem terkluster yang jauh lebih powerful daripada satu komputer standalone yang terbesar sekalipun. Satu kluster bisa terdiri atas puluhan, bahkan ratusan komputer, dan masing-masing adalah multiprosesor.
b. Incremental scalability . Kluster diatur sedemikian rupa sehingga bisa dupgrade sedikit demi sedikit sesuai dengan kebutuhan, tanpa harus mengupgrade keseluruhan sistem sekaligus secara besar-besaran.
c. High availability . Karena setiap komputer yang tergabung adalah standalone (mandiri), maka kegagalan salah satu komputer tidak menyebabkan kegagalan sistem.
d. Superior price/performance . Dengan konfigurasi yang tepat, dimungkinkan untuk membangun sistem yang jauh lebih powerful atau sama dengan komputer standalone, dengan biaya yang lebih rendah.
Isu yang menarik tentang sistem kluster adalah bagaimana mengatur mesin-mesin penyusun sistem dalam berbagi tempat penyimpanan data ( storage ). Untuk saat ini, biasanya sistem kluster hanya terdiri dari 2 hingga 4 mesin berhubung kerumitan dalam mengatur akses mesin-mesin ini ke tempat penyimpanan data.
Isu di atas juga berkembang menjadi bagaimana menerapkan sistem kluster secara paralel atau dalam jaringan yang lebih luas ( Wide Area Network ). Hal penting yang berkaitan dengan penerapan sistem kluster secara paralel adalah kemampuan mesin-mesin penyusun sistem untuk mengakses data di storage secara serentak. Berbagai software khusus dikembangkan untuk mendukung kemampuan itu karena kebanyakan sistem operasi tidak menyediakan fasilitas yang memadai. Salah satu contoh software -nya adalah Oracle Parallel Server yang khusus didesain untuk sistem kluster paralel.
Seiring dengan perkembangan pesat teknologi kluster, sistim kluster diharapkan tidak lagi terbatas pada sekumpulan mesin pada satu lokasi yang terhubung dalam jaringan lokal. Riset dan penelitian sedang dilakukan agar pada suatu saat sistem kluster dapat melingkupi berbagai mesin yang tersebar di seluruh belahan dunia.


Sumber :
http://lordjames88.multiply.com/journal/item/19
http://extreme24.wordpress.com/2010/02/16/model-sistem-terdistribusi/
http://cobadibaca.blogdetik.com/2010/02/16/kelebihan-dan-kekurangan-model-sistem-terdistribusi/