Selasa, 08 Desember 2009

Java Community Process ( JCP )

Java Community Process atau JCP, didirikan pada tahun 1998, merupakan sebuah proses formal yang memungkinkan pihak-pihak yang tertarik untuk terlibat dalam definisi versi dan fitur dari platform Java.

The JCP melibatkan penggunaan Java Spesification Request (JSRs) - dokumen formal yang menggambarkan spesifikasi dan teknologi yang diusulkan untuk menambah platform Java. Publik formal review dari JSRs akan muncul sebelum JSR final dan Komite Eksekutif JCP suara di atasnya.

JSR terakhir yang menyediakan implementasi referensi yang merupakan implementasi bebas teknologi dalam bentuk kode sumber dan Teknologi Kompatibilitas Kit untuk memverifikasi spesifikasi API.
Sebuah JSR menggambarkan JCP itu sendiri. Hingga 2006 [update], JSR 215 menggambarkan versi sekarang (2.6) dari JCP.

Virtual Machine

Virtual Machine (VM) adalah sebuah implementasi software mesin (misalnya komputer) yang melaksanakan program-program seperti mesin fisik.

Definisi

Sebuah mesin virtual pada awalnya ditentukan oleh Popek dan Goldberg sebagai "yang efisien, terisolasi duplikat dari mesin yang nyata". Saat menggunakan mesin virtual yang mencakup tidak memiliki surat-menyurat langsung ke perangkat keras yang nyata.

Mesin virtual dipisahkan ke dalam dua kategori utama, berdasarkan tingkat penggunaan dan korespondensi untuk mesin nyata. Sebuah sistem mesin virtual menyediakan platform sistem lengkap yang mendukung pelaksanaan sebuah sistem operasi lengkap (OS). Sebaliknya, mesin virtual sebuah proses yang dirancang untuk menjalankan sebuah program tunggal, yang berarti bahwa ia mendukung proses tunggal.

Contoh: Suatu program yang ditulis di Java menerima layanan dari Java Runtime Environment (JRE) perangkat lunak dengan mengeluarkan perintah untuk, dan menerima hasil yang diharapkan dari, perangkat lunak Java. Dengan memberikan layanan ini untuk program tersebut, perangkat lunak Java bertindak sebagai "mesin virtual", menggantikan sistem operasi atau hardware untuk program yang biasanya akan disesuaikan.

Sistem mesin virtual (kadang-kadang disebut mesin virtual hardware) memungkinkan pembagian yang mendasari sumber daya mesin fisik antara mesin virtual yang berbeda, masing-masing berjalan sendiri sistem operasi. Lapisan perangkat lunak yang menyediakan virtualisasi ini disebut mesin virtual monitor atau hypervisor. Sebuah hypervisor dapat berjalan di hardware yang telanjang (Tipe 1 atau pribumi VM) atau di atas sistem operasi (Tipe 2 atau host VM).

Keuntungan utama dari sistem VMS adalah:

* Beberapa OS lingkungan dapat hidup berdampingan pada komputer yang sama, dalam isolasi kuat satu sama lain
* Mesin virtual dapat memberikan sebuah arsitektur set instruksi (ISA) yang agak berbeda dari mesin yang sebenarnya
* Aplikasi provisioning, pemeliharaan, tingkat ketersediaan dan pemulihan bencana

Kerugian utama dari sistem VMS adalah:

* Mesin virtual kurang efisien daripada mesin nyata karena secara tidak langsung mengakses perangkat keras

Beberapa VMS masing-masing berjalan sistem operasi mereka sendiri (yang disebut sistem operasi tamu) yang sering digunakan di server konsolidasi, di mana layanan yang berbeda yang digunakan untuk menjalankan mesin individu untuk menghindari gangguan yang terpisah, bukan berjalan di VMS pada mesin fisik yang sama. Penggunaan ini sering disebut-kualitas dari layanan-isolasi (QoS isolasi).

Keinginan untuk menjalankan beberapa sistem operasi adalah motivasi asli untuk mesin virtual, seperti time-sharing memungkinkan satu komputer di antara beberapa single-tasking OS. Teknik ini memerlukan proses untuk berbagi sumber daya CPU antara sistem operasi tamu dan memori virtualisasi untuk berbagi memori pada host.

OS tamu tidak harus sama, sehingga memungkinkan untuk menjalankan OS yang berbeda pada komputer yang sama (misalnya, Microsoft Windows dan Linux, atau versi lama dari sistem operasi untuk mendukung perangkat lunak yang belum porting ke versi terbaru). Penggunaan mesin virtual untuk mendukung OS tamu yang berbeda menjadi populer di embedded system; yang digunakan adalah khas untuk mendukung real-time sistem operasi pada saat yang sama sebagai OS tingkat tinggi seperti Linux atau Windows.

Penggunaan lainnya adalah untuk sandbox sebuah OS yang tidak dipercaya, mungkin karena itu adalah sebuah sistem dalam pengembangan. Mesin virtual memiliki keuntungan untuk OS lain pembangunan, termasuk akses debugging yang lebih baik dan lebih cepat reboot.

Teknik alternatif seperti Solaris Zones menyediakan tingkat isolasi dalam satu sistem operasi. Ini tidak memiliki isolasi selengkap sebagai VM. Sebuah mengeksploitasi kernel dalam suatu sistem dengan beberapa zona akan mempengaruhi semua zona. Mencapai tujuan yang sama dalam implementasi mesin virtual akan membutuhkan mengeksploitasi kelemahan dalam hypervisor. Sebuah hypervisor biasanya memiliki lebih kecil "serangan permukaan" dari sebuah sistem operasi yang lengkap, membuat ini lebih menantang. Lebih lanjut, sebuah kernel mengeksploitasi tamu di VM tidak akan mempengaruhi VMS lain pada host, seperti gangguan yang sukses menjadi satu zona belum tentu mempengaruhi zona lain. Zona tidak mesin virtual, tetapi contoh "virtualisasi sistem operasi". Ini termasuk lain "lingkungan virtual" (juga disebut "virtual server") seperti Virtuozzo, FreeBSD penjara, Linux-VServer, chroot penjara, dan OpenVZ. Ini memberikan beberapa bentuk rangkuman proses dalam sebuah sistem operasi. Teknologi ini memiliki keunggulan sumber daya yang lebih efisien daripada virtualisasi penuh dan memiliki lebih baik observability menjadi beberapa tamu secara simultan; yang merugikan adalah bahwa, pada umumnya, mereka hanya dapat menjalankan satu sistem operasi dan satu versi / patch tingkat sistem operasi bahwa -- jadi, misalnya, mereka tidak dapat digunakan untuk menjalankan dua aplikasi, salah satu yang hanya mendukung versi OS yang lebih baru dan yang lain hanya mendukung versi OS yang lebih lama pada hardware yang sama. Namun, Sun Microsystems telah meningkatkan Solaris Zones untuk memungkinkan beberapa zona untuk berperilaku seperti Solaris 8 atau Solaris 9 sistem dengan menambahkan system call penerjemah.

Sebuah proses VM, kadang-kadang disebut aplikasi mesin virtual, berjalan sebagai aplikasi biasa di dalam sebuah OS dan mendukung proses tunggal. Hal ini tercipta ketika proses itu dimulai dan hancur ketika keluar. Tujuannya adalah untuk menyediakan sebuah platform-independen lingkungan pemrograman yang abstrak pergi rincian perangkat keras yang mendasarinya atau sistem operasi, dan memungkinkan sebuah program untuk mengeksekusi dengan cara yang sama pada platform apapun.

Sebuah proses VM memberikan abstraksi tingkat tinggi - yang dari tingkat tinggi bahasa pemrograman (dibandingkan dengan tingkat rendah ISA abstraksi dari sistem VM). VMS proses diimplementasikan menggunakan juru bahasa; kinerja yang sebanding dengan bahasa pemrograman terkompilasi dicapai dengan menggunakan just-in-time kompilasi.

Jenis VM ini telah menjadi populer dengan bahasa pemrograman Java, yang diimplementasikan menggunakan mesin virtual Java. Contoh lain termasuk Bayan mesin virtual, yang berfungsi sebagai lapisan yang abstak untuk beberapa ditafsirkan lanugages, dan. NET Framework, yang berjalan pada sebuah VM yang disebut Common Language Runtime.

Suatu kasus khusus VMS adalah proses sistem yang abstrak atas mekanisme komunikasi yang (berpotensi heterogen) komputer cluster. Seperti VM tidak terdiri dari sebuah proses tunggal, tetapi satu proses per mesin fisik di cluster. Mereka dirancang untuk memudahkan tugas pemrograman aplikasi paralel dengan membiarkan programmer fokus pada algoritma daripada mekanisme komunikasi yang disediakan oleh interkoneksi dan OS. Mereka tidak menyembunyikan fakta bahwa terjadi komunikasi, dan dengan demikian tidak berusaha untuk menyajikan cluster sebagai satu mesin paralel.

Tidak seperti proses lain VMS, sistem ini tidak menyediakan bahasa pemrograman tertentu, tetapi tertanam dalam bahasa yang ada; biasanya sistem seperti menyediakan binding untuk beberapa bahasa (misalnya, C dan FORTRAN). Contohnya adalah PVM (Paralel Virtual Machine) dan MPI (Message Passing Interface). Mereka tidak ketat mesin virtual, sebagai aplikasi yang berjalan di atas masih memiliki akses ke semua layanan OS, dan karena itu tidak terbatas pada model sistem yang disediakan oleh "VM".

APIs

Ada tiga jenis Bahasa Pemrograman Java Application Programming Interface (API):

*
the official core Java API, yang terdapat dalam JDK atau JRE, dari salah satu edisi dari Java Platform. Tiga edisi dari Java Platform adalah Java ME (Micro edition), Java SE (Standard edition), dan Java EE (Enterprise edition).


*
optional official APIs yang dapat didownload secara terpisah. Spesifikasi API ini didefinisikan menurut Java Specification Request (JSR), dan kadang-kadang beberapa API ini kemudian dimasukkan dalam API inti dari platform (contoh yang paling terkenal dari jenis ini adalah swing).


* unofficial APIs, yang dikembangkan oleh pihak ketiga, tetapi tidak berkaitan dengan JSRs apapun.

Pihak-pihak ketiga dapat dengan bebas mengimplementasikan spesifikasi JSR API resmi (bahkan untuk API inti dari bahasa), memberikan bahwa mereka menyesuaikan diri dengan Technology Compatibility Kit (TCK) untuk JSR ini (yang TCK adalah paket tes yang memeriksa kesesuaian dari implementasi untuk JSR). Hasil dari kebebasan ini adalah bahwa banyak API resmi memiliki lebih implementasi dari Sun's Reference implementation (RI).

Sumber :

  1. http://en.wikipedia.org/wiki/Virtual_Machine
  2. http://en.wikipedia.org/wiki/List_of_Java_APIs
  3. http://en.wikipedia.org/wiki/Java_Community_Process

The Automotive Multimedia Interface Collaboration (AMIC)

AMIC - The Automotive Multimedia Interface Kolaborasi (AMIC) didirikan pada Oktober 1998 dengan tujuan untuk mengembangkan serangkaian spesifikasi umum untuk multimedia interface ke sistem elektronik kendaraan bermotor untuk mengakomodasi berbagai berbasis komputer perangkat elektronik di dalam kendaraan. Inisiatif ini-yang pendiri Daimler-Chrysler, Ford, General Motors, Renault dan Toyota - sekarang kelompok semua auto utama pembuat, dan dengan demikian menyediakan kesempatan strategis baru untuk mencapai suatu set umum industri mobil persyaratan sebagai dasar untuk konvergensi pasar.

Untuk berbagai alasan, kendaraan telah tertinggal di belakang rumah dan perangkat komputasi mobile ketika datang ke alat produktivitas dan multimedia. Keamanan, kehandalan, biaya, dan desain waktu memiliki semua faktor dalam produsen mobil 'menunda penerimaan teknologi baru. Makalah membahas otomotif standar untuk antarmuka multimedia. Organisasi seperti Otomotif Kolaborasi Multimedia Interface (AMI-C) memiliki kesempatan untuk menjadi kekuatan pendorong di belakang upaya standardisasi.

The Otomotif Multimedia Interface Kolaborasi (AMI-C) mengumumkan di seluruh dunia cipta penugasan dari 1394 spesifikasi teknis otomotif
ke Trade Association 1394 AMI-C berikut dokumen sekarang milik 1394TA:


•AMI-C 3023 Power Management Specification
•AMI-C 3013 Power Management Architecture
•AMI-C 2002 1.0.2 Common Message Set Power Management
•AMI-C 3034 Power Management Test Documents
•AMI-C 4001 Revision Physical Speci .cation

Sumber : http://www.osun.org/Automotive+Multimedia+Interface+Colaboration-pdf.html

Open Services Gateway Initiative (OSGI)

OSGi.. Open Services Gateway Initiative…

OSGi merupakan suatu layanan untuk membuka jembatan dari berbagai jalan. Maksudnya adalah OSGi merupakan suatu teknologi dimana dapat menggabungkan berbagai fungsi dalam satu tujuan atau aplikasi atau suatu cara untuk menggabungkan berbagai bagian-bagian dimana bagian-bagian tersebut telah menjadi sebuah aplikasi yang dapat digunakan dengan berbagai macam kegunaan. Sebenarnya teknologi ini berawal dari suatu pemikiran bagaimana cara mengubah program tanpa membongkar coding. Kemudian dari sanalah teknologi ini mulai dikembangkan dalam bahasa pemrograman mulai dari instalasi, jalannya program, update dan sampai uninstall tanpa perlu memperbarui coding. Manfaat dalam penerapan OSGi ini adalah:
Programmer dapat mengupdate atau mengupgrade codingnya dengan mudah. Misalnya programmer membuat aplikasi dimana terdapat bug yang harus ditambal, programmer ini tidak perlu melakukan pengkodingan ulang dan mengganti aplikasi yang lama dengan aplikasi baru yang memakan waktu dan biaya yang besar untuk menambalnya (patching). Seperti cara inject (suntik) ke dalam program yang telah dibuat. Dan ini tidak merubah struktur program dan kinerja program tersebut.

• Dengan teknologi OSGi dapat menyatukan berbagai fungsi di dalam aplikasi. Misalnya seperti plug-in yang dapat menambahkan fungsi dalam aplikasi.
• Mudah dalam penerapan, terutama bagi tim yang membuat aplikasi tentunya tugas mereka berbeda. Ada yang membuat desain antar muka atau GUI, ada yang membuat coding jalan softwarenya, ada yang membuat keamanannya, dan lain sebagainya. Nah dari semua coding yang telah dibuat ini kita dapat satukan dengan dan dibungkus dari komponen-komponen OSGi ini.
• Efisiensi biaya, dalam hal ini untuk pengembangan sebuah software dapat menekan biaya yang dikeluarkan dalam pemeliharaan software.

Implementasi OSGi

Teknologi OSGi sudah sangat banyak dikembangkan untuk berbagai macam keperluan dalam sehari hari maupun di bidang teknologi informasi dan industri serta di bidang ilmu komputer.

• Dalam kehidupan sehari-hari

Dikembangkan untuk mengendalikan alat-alat elektronik dalam rumah tangga dengan internet, yaitu dengan menghubungkan berbagai framework OSGi ini untuk mengendalikan alat-alat rumah tangga yang bersifat elektronik. Hal ini dilakukan dengan berbagai protocol network yaitu Bluetooth, uPnP,HAVi, dan X10. Dengan bantuan Jini dan standart OSGi dari sun microsystem yaitu Java Embedded Server. Teknologi ini dinamakan home network dan Jini adalah salah satu standart untuk pembuatan home network yang berbasis Java.
• Teknologi dan industri

Dalam hal ini pengembangan OSGi dalam teknologi dan industri adalah untuk otomatisasi industri. Seperti otomatisnya sistem dalam gudang yang dapat meminta dalam PPIC untuk mengadakan bahan baku, dan masih banyak yang lain.
• Ilmu Komputer

Dalam ilmu Komputer ini sangat banyak pengembang yang memanfaatkan teknologi OSGi ini. Dari surfing di internet banyak yang mengulas tentang Pemrograman Java yang mengapdopsi teknologi OSGi ini. Salah satu contoh adalah knopflerfish merupakan framework untuk melakukan OSGi didalam program Java. Dan juga eclipse IDE merupakan OSGi framework yang dikembangkan oleh eclipse dan berbasis GUI. Dan masih banyak juga dalam server serta program-program lain yang mengembangkan teknologi OSGi ini.

Adapun siklus hidup OSGi yang digambarkan dibawah ini:

Sedangkan Sistem Layer OSGi, sebagai berikut:

*sumber*

Arsitektur OSGi

Teknologi OSGi adalah seperangkat spesifikasi yang mendefinisikan sistem komponen dinamis untuk Java. Spesifikasi ini memungkinkan suatu model pengembangan aplikasi dimana terdiri dari banyak perbedaan komponen. Spesifikasi yang memungkinkan komponen OSGi untuk menyembunyikan implementasi dari komponen lain saat berkomunikasi melalui layanan, yang merupakan objek yang secara khusus dibagi antar komponen.
OSGi adalah teknologi pertama yang benar-benar berhasil dengan sistem komponen yang memecahkan banyak masalah nyata dalam pengembangan perangkat lunak. Teknologi OSGi diciptakan untuk sebuah lingkungan perangkat lunak kolaboratif.


Struktur OSGi

Struktur OSGi digambarkan melalui model layar (layer) yang berlapis-lapis, sebagai berikut:


Spesifikasi OSGi

Spesifikasi OSGi membutuhkan referensi spesifikasi implementasi untuk masing-masing aspek. Namun, karena spesifikasi pertama selalu ada perusahaan komersial yang telah menerapkan spesifikasi serta implementasi open source. Saat ini, terdapat 4 open source implementasi dari kerangka dan terlalu banyak untuk menghitung implementasi dari layanan OSGi. Industri perangkat lunak yang terbuka telah menemukan teknologi OSGi dan semakin banyak proyek artefak menyampaikan sebagai kumpulan.


Spesifikasi OSGi secara matang dan komprehensif memberikan model komponen yang sangat efektif melalui API. Mengkonversi monolitik atau plugin yang ditanam untuk sistem berbasis OSGi hampir selalu memberikan peningkatan besar dalam keseluruhan proses pengembangan software.

OSGi spesifikasi yang dimulai pada tahun 1998 dan ditujukan untuk pasar otomatisasi rumah, berusaha untuk memecahkan masalah dan bagaimana membangun aplikasi dari komponen-komponen independen. Dalam dekade terakhir ini, industri perangkat lunak secara mendasar berubah karena ledakan di proyek sumber terbuka. Sepuluh tahun yang lalu, aplikasi sebagian besar terdiri atas kode yang ditulis secara khusus. Hari ini, sebagian besar sebagian besar perangkat lunak open source pengkabelan atas artefak yang sering tidak dirancang untuk bekerja bersama-sama. Ini adalah masalah yang sesuai dengan OSGi yang dirancang untuk memecahkannya. Banyak proyek mengadopsi spesifikasi OSGi karena mereka melihat bahwa OSGi dapat berfokus pada masalah nyata dan tidak terlalu khawatir tentang infrastruktur, serta menjadi lebih mudah untuk digunakan dalam proyek lainnya.


Referensi Lain:

http://www.osgi.org/

http://www.nagarro.com/blog/osgi-from-here-to-there/

Sumber-sumber:

http://idpelajar.com/komputer/osgi-open-service-gateway-initiative/

Manajemen Data Telematika

Apa yang dimaksud dengan ‘Manajemen data Telematika’???

Menurut DAMA (Demand Assigned Multiple Access) Manajemen Data adalah pengembangan dan penerapan arsitektur, kebijakan, praktik, dan prosedur yang secara benar menangani siklus hidup lengkap data yang dibutuhkan oleh suatu perusahaan. Jadi, Manajemen data telematika merupakan prosedur yang menangani siklus hidup lengkap data yang dibutuhkan oleh perusahaan dengan bantuan telematika.

Manajemen Data pada telematika terdiri dari 3 macam, yaitu :

1. Manajemen Data sisi klien (Client-side data management)

Manajemen Data yang terjadi pada sisi klien dapat kita pahami pada DBMS dibawah ini.

􀁺 Mobile DBMS (Embedded/Ultra tiny/Java Database)

Merupakan suatu DBMS yang terdapat pada peralatan bergerak (mobile device). mobile DBMS adalah versi khusus dari sebuah departemen atau perusahaan DBMS. Ini dirancang untuk digunakan dengan remote pengguna yang biasanya tidak terhubung ke jaringan. DBMS memungkinkan mobile akses database lokal dan modifikasi pada laptop atau perangkat genggam, seperti PDA atau PocketPC Palm. Selanjutnya, mobile DBMS menyediakan mekanisme untuk sinkronisasi perubahan basis data jauh terpusat, perusahaan atau departemen server database. [1]

2. Manajemen Data sisi Server (Server-side data management)

Manajemen Data yang terjadi pada sisi server dapat kita pahami pada versi DBMS dibawah ini.

􀁺 MODBMS (Moving Object DBMS)

MODBMS (Memindahkan Obyek DBMS) adalah sebuah DBMS yang menyimpan dan mengelola informasi lokasi serta dinamis lainnya informasi tentang obyek bergerak. MODBMS memungkinkan seseorang untuk mewakili benda-benda bergerak dalam database dan untuk menanyakan pertanyaan tentang gerakan tersebut. Daerah MODBMS merupakan bidang yang belum dijelajahi relatif terhadap RDBMS atau DBMS Spasial di mana beberapa karya yang telah dilakukan dalam standarisasi dan komersialisasi. Ada beberapa penelitian prototipe untuk MODBMS seperti DOMINO tetapi hanya sedikit produk MODBMS komersial. Memindahkan objek dapat diklasifikasikan ke dalam bergerak poin dan bergerak daerah. Memindahkan objek hanya relevan tergantung waktu posisi dalam ruang. Mereka bisa mobil, truk, pesawat terbang, kapal atau ponsel pengguna. Pindah daerah objek bergerak dengan rupa seperti badai, hutan file, tumpahan minyak, wabah penyakit, dan sebagainya. Pindah daerah berubah posisi dan geometri objek dengan waktu sambil bergerak poin hanya berubah posisi benda.[2]

Aplikasi pada MODBMS :

· DBMS for LBS (Location-Based Service)

· LBS (Location-based Services)

· Transportation

· Vehicle tracking

· Reference: DOMINO(Database fOr MovINg Objects tracking)

􀁺 Data stream management system

Berbeda dengan DBMS tradisional, DSMSs terus menerus dapat mengeksekusi query lebih dari stream data kontinu yang memasuki dan meninggalkan sistem secara real-time, yaitu data hanya disimpan dalam memori utama untuk pengolahan. Stream data tersebut dapat sensor pembacaan, data pasar saham, atau net - bekerja lalu lintas [3]. Querying the data stream (sensor data, GPS)


Aplikasi pada Data stream management system :

· Telematics (vehicle fleet management)

· Sensor stream monitoring

· Environment monitoring

· Reference: TelegraphCQ, Aurora

3. Manajemen data Base system perangkat bergerak

Karakterstiknya :

1) Memungkinkan untuk menginstal di dalam embedded devices

2) Replika Data dan sinkronisasi ke Database perusahaan tradisional

Aplikasi pada Data stream management system :

· Finance

· mobile office

· mobile sales


[1] www.craigsmullins.com/dbta_010.htm

[2] http://www.realtimetech.co.kr/english/03_kairos/04_mo_01.asp

[3] http://www.pam2004.org/papers/113.pdf

[4] http://www.pointbase.com

[5] Junehwa Song, Introduction to Telematics , NC Lab, Korea Advanced Institute of Science and Technology

Middleware Telematika

Middleware

• Software yang berfungsi sebagai lapisan konversi atau penerjemah.

• S/W penghubung yang berisi sekumpulan layanan yang memungkinkan beberapa proses dapat berjalan pada satu atau lebih mesin untuk saling berinteraksi pada suatu jaringan

• Juga sebagai integrator.

• Middleware saat ini dikembangkan untuk memungkinkan satu aplikasi berkomunikasi dengan lainnya walaupun berjalan pada platform yang berbeda.

Biasa dipakai saat bermigrasi

Gambar Software Layer

Contoh Middleware

• Java’s: Remote Procedure Call

• Object Management Group's: Common Object Request Broker Architecture

(CORBA)

• Microsoft's COM/DCOM (Component Object Model)

– Also .NET Remoting


Layanan Middleware

• Menyediakan kumpulan fungsi API (Application Programming Interfaces) yang lebih tinggi daripada API yang disediakan sistem operasi dan layanan jaringan yang memungkinkan suatu aplikasi dapat :

– Mengalokasikan suatu layanan secara transparan pada jaringan

– Menyediakan interaksi dengan aplikasi atau layanan lain

– Diperluas (dikembangkan) kapasitasnya tanpa kehilangan fungsinya

Contoh Layanan Middleware

• Transaction Monitor

- Produk pertama yang disebut middleware.

- Menempati posisi antara permintaan dari program client dan database,untuk menyakinkan bahwa semua transaksi ke database terlayani dengan baik

• Messaging Middleware

- Menyimpan data dalam suatu antrian message jika mesin tujuan sedang mati atau overloaded

- Mungkin berisi business logic yang merutekan message ke tujuan sebenarnya dan memformat ulang data lebih tepat

- Sama seperti sistem messaging email, kecuali messaging middleware digunakan untuk mengirim data antar aplikasi

• Distributed Object Middleware

- Contoh: RPC, CORBA dan DCOM/COM

• Middleware basis data

- menyediakan antarmuka antara sebuah query dengan beberapa database yang terdistribusi

- Contoh: JDBC, ODBC, dan ADO.NET

• Application Server Middleware

- J2EE Application Server, Oracle Application Server


Jenis middleware
Sistem klasifikasi berbagai jenis middleware yang tersedia saat ini menurut Hurwitz, didasarkan pada skalabilitas dan recoverability yaitu:

- Remote Procedure Call - Klien membuat panggilan dengan prosedur yang berjalan pada sistem remote. Dapat asinkron atau sinkron.

- Message Oriented Middleware - Pesan yang dikirim ke klien dikumpulkan dan disimpan sampai mereka ditindaklanjuti, sementara klien terus dengan pengolahan lain.

- Object Request Broker - jenis middleware ini memungkinkan aplikasi untuk mengirim permintaan benda dan jasa dalam suatu sistem berorientasi objek.

- SQL-oriented Data Access - middleware antara aplikasi dan database server.

- Embedded Middleware - layanan komunikasi dan integrasi antarmuka software / firmware yang tertanam beroperasi antara aplikasi dan sistem operasi waktu-nyata.


Sumber-sumber lain termasuk klasifikasi tambahan ini:

- Transaction processing monitors- Menyediakan alat dan lingkungan untuk mengembangkan dan menyebarkan aplikasi terdistribusi.

- Aplikasi server - Perangkat lunak yang diinstal pada komputer untuk memfasilitasi porsi (berjalan) dari aplikasi lain.

- Enterprise Service Bus - Sebuah lapisan abstraksi di atas Olahpesan Enterprise System.

Sumber :

1. http://lecturer.ukdw.ac.id/anton/download/PEMROGRAMAN%20JARINGAN-Modul2.pdf

2. http://en.wikipedia.org/wiki/Middleware