1.
Spesifikasi dan arsitektur OSGI serta
penerapannya
Inti bagian dari spesifikasi adalah suatu kerangka kerja
yang mendefinisikan aplikasi model manajemen siklus hidup, sebuah layanan
registrasi, sebuah lingkungan eksekusi dan modul. Berdasarkan kerangka ini,
sejumlah besar OSGI layers, API, dan Jasa telah ditetapkan. Spesifikasi OSGI
yang dikembangkan oleh para anggota dalam proses terbuka dan tersedia untuk
umum secara gratis di bawah Lisensi Spesifikasi OSGI. OSGI Alliance yang
memiliki program kepatuhan yang hanya terbuka untuk anggota. Pada Oktober 2009,
daftar bersertifikat OSGI implementasi berisi lima entri.
Spesifikasi OSGI yang sekarang digunakan dalam aplikasi
mulai dari ponsel ke open source Eclipse IDE. Wilayah aplikasi lain meliputi
mobil, otomasi industri, otomatisasi bangunan, PDA, komputasi grid, hiburan
(misalnya iPronto), armada manajemen dan aplikasi server. Adapun spesifikasi
yang lain dimana OSGI akan dirancang untuk melengkapi standar perumahan yang
ada, seperti orang – orang LonWorks (lihat kontrol jaringan), CAL, CEBus, HAVi,
dan lain-lain.
Open Service Gateway Initiative (OSGi) adalah sebuah system dan aplikasi interoperability berbasis komponen platform yang terintegrasi. OSGi merupakan system modul dinamik untuk Java. Teknologi OSGi adalah Universal Middleware. Teknologi OSGi menyediakan sebuah service-oriented, lingkungan yang berbasis komponen untuk pengembang dan menawarkan jalan standard untuk mengatur siklus hidup software. Kemampuan ini dapat menambah nilai jangkauan dari computer dan peralatan yang menggunakan platform Java dengan sangat hebat. Teknologi OSGi mengadopsi keuntungan dari menambah time-to-market dan mengurangi biaya pengembangan karena teknologi OSGi menyediakan subsistem komponen yang terintegrasi dari pre-build dan pre-tested. Teknologi ini juga mengurangi biaya perawatan dan memberikan kesempatan aftermarket yang baru dan unik karena jaringan dapat digunakan untuk update secara dinamik dan mengirimkan service dan aplikasi di lapangan.
OSGi ARSITEKTUR
OSGi adalah sebuah set spesifikasi yang mendefinisikan sebuah komponen system dinamik untuk Java. Spesifikasi ini memungkinkan sebuah model pengembangan dimana aplikasi (secara dinamik) terdiri dari berbagai komponen yang berbeda. Spesifikasi OSGi memungkinkan komponen-komponennya untuk menyembunyikan implementasinya dari komponen lainnya ketika berkomunikasi melalui services dimana biasanya ketika hal ini berlangsung implementasi antar komponen dapat terlihat jelas. Model yang simple ini telah jauh mencapai efek dari segala aspek dari proses pengembangan software.
KEUNTUNGAN TEKNOLOGI OSGi
Menjelaskan teknologi OSGi kepada yang belum familiar dengan teknologi ini sangatlah sulit. Ada begitu banyak artikel yang menjelaskan teknologi OSGi tetapi hal itu masih belum bisa dimengerti oleh user yang benar-benar awam karena teknologi OSGi menyediakan solusi untuk permasalahan yang banyak orang menganggap bahwa maslah itu merupakan aspek instrinsik dari Java.
Permasalahan ini sebenarnya bukan masalah instrinsik dari Java dan teknologi OSGi dapat mengatasi itu semua. Alasan utama mengapa teknologi OSGi dapat sukses karena teknologi ini menyediakan komponen system yang benar-benar matang yang dapat bekerja di lingkungan yang sangat banyak jumlahnya. Komponen system yang biasa digunakan untuk membangun aplikasi yang tingkat kekompleksannya sangat tinggi seperti IDEs (Eclipse), aplikasi server (GlassFish, IBM Websphere, Oracle/BEA Weblogic, Jonas, JBoss), aplikasi framework (Spring, Guice), otomatisasi industry, telepon dan banyak lainnya.
Keuntungan dari teknologi OSGi antara lain adalah sebagai berikut :
1.Mengurangi kompleksitas : mengembangkan dengan OSGi berarti menembangkan bundles : salah satu komponen OSGi. Bundles adalah modul. Bundles menyembunyikan aspek internalnya dari bundles lainnya. Hal ini berarti ada banyak kebebasan untuk menggantinya di kemudian hari.
2.Dapat digunakan kembali : model komponen OSGi sangat mudah digunakan dan dapat digunakan dengan aplikasi pihak ketiga.
3.RealWorld : OSGi framework dinamik. Hal ini berarti OSGi dapat diupdate secara online.
4.Mudah Penyebarannya : teknologi OSGi bukanlah sebuah teknologi standard. OSGi dapat dimanage sedemikian rupa serta dapat diatur cara penginstalannya.
5.Update yang dinamik : OSGi komponen bisa diupdate secara dinamik.
6.Adaptif : model komponen OSGi didesain sedemikian rupa hingga diperbolehkan untuk mengkombinasi dan mencocokan antar komponen.
7.Transparan
8.Banyak versinya
9.Simple : OSGi API sangat simple. API OSGi hanya terdiri dari satu paket dan berjumlah kurang dari 30 kelas.
10.Ukurannya kecil
11.Kinerjanya cepat
12.Malas : Malas dalam software itu berarti bagus. Teknologi OSGi mempunyai banyak mekanisme hanya ketika dibutuhkan saja.
13.Aman
14.Sederhana
15.Tidak Mengganggu Kinerja Aplikasi Lainnya
16.Berjalan dimana saja
17.Digunakan secara luas
18.Didukung Oleh Berbagai Perusahaan : OSGi juga didukung oleh berbagai perusahaan seperti Oracle, IBM, Samsung, Nokia, IONA, Motorola, NTT, Siemens, Hitachi, Deutsche Telekom, Redhat, Ericsson, dan masih banyak lagi.
Penerapannya
Kerangka kerja yang OSGi sistem modul untuk Java yang lengkap dan
mengimplementasikan sebuah model komponen dinamis, sesuatu yang tidak ada di
Jawa standalone / VM lingkungan. Aplikasi atau komponen (datang dalam bentuk
bungkusan untuk penyebaran) dapat jarak jauh diinstal, mulai, berhenti,
diperbarui dan dihapus tanpa memerlukan reboot; pengelolaan paket Jawa / kelas
ditentukan dengan sangat rinci. Hidup siklus manajemen dilakukan melalui API
yang memungkinkan untuk remote men-download dari kebijakan manajemen. Registri
layanan memungkinkan berkas untuk mendeteksi penambahan layanan baru, atau
penghapusan layanan, dan beradaptasi sesuai.
Asli layanan fokus pada penerapan gateway tapi ternyata jauh lebih
luas. OSGi spesifikasi yang sekarang digunakan dalam aplikasi mulai dari ponsel
ke open source Eclipse IDE. Wilayah aplikasi lain meliputi mobil, otomasi
industri, otomatisasi bangunan, PDA, komputasi grid, hiburan (misalnya
iPronto), manajemen armada, dan aplikasi server.
2. Virtualization serta software2 nya
dalam dunia
komputer, virtualisasi adalah teknik untuk membuat abstraksi (bisa dikatakan
emulasi) resources komputer. resources dapat berupa: satu set hardware komputer
(mainboard + harddisk + dll), satu set OS, atau dapat berupa hanya sebuah
aplikasi.
Contoh konkritnya adalah: OS dalam OS, aplikasi dalam aplikasi.
Contoh konkritnya adalah: OS dalam OS, aplikasi dalam aplikasi.
Microsoft
Virtual PC
Microsoft
sebagai penyedia OS yang terbesar juga membuat software virtualkomputer. Software ini mendukung instalasi beberapa OS seperti :
Windows Server 2003, Standard Edition (32-bit x86); Windows Server 2003,
Standard x64 Edition; Windows Vista Business; Windows Vista Business 64-bit
edition; Windows Vista Enterprise; Windows Vista Enterprise 64-bit edition;
Windows Vista Ultimate; Windows Vista Ultimate 64-bit edition; Windows XP
Professional Edition ; Windows XP Professional x64 Edition ; Windows XP Tablet
PC Edition.
Bochs
Dibangun
oleh Kevin Lawton dengan bahasa C++ dan dilisensikan dibawah GNU/GPL. Bochs
dapat berjalan pada hampir semua platform sistem operasi seperti Windows dan
Linux . Sebagai emulator, Bochs mampu mengemulasikan CPU intel x86, BIOS Custom
dan berbagai I/O devices. Untuk suara, bochs mengemulasikan sounds blaster dan
untuk perangkat jaringan, bochs mengemulasikan kartu NE2000, atau yang
kompatibel. GXEMUL
Dibangun
oleh Anders Gavare, merupakan emulator komputer lengkap dengan CPU dan berbagai
komponen hardware, seperti framebuffer, interrupt controller, bus, disk
controller, dan serial controller. Emulator ini dibangun dengan bahasa C dan
dilisensikan dibawah revised BSD-style.
Hercules
Program
canggih ini dibangun oleh Roger Bowler dan saat ini, dimaintain oleh Jay
Marnard, dilisensikan dibawah Q Public License. Sebagai host, Hercules mampu
berjalan pada Linux, Windows (98, 2000, XP), Mac OS X.
Mac-On Linux
Aplikasi
ini memungkinkan virtualisasi Mac OS atau Mac OS X di Linux. Dengan demikian
kita yang menggunakan arsitektur x86 tidak dapat memanfaatkan aplikasi ini.
Untuk Host, Mac On Linux mendukung Linux dengan kernel 2.4 dan 2.6. http://bochs.sourceforge.net/
3. Apa itu API (Application
Programming Interface) - Api Fasapay
API adalah sebuah aplikasi permrograman yang secara khusus
dikembangkan untuk digunakan sebagai perantara komunikasi antara
komponen-komponen perangkat lunak. Dokumen ini berisi mengenai deskripsi dari
fungsi-fungsi dan bagian tertentu dari FasaPay XML API.
XML API memungkinkan anda untuk memproses pengiriman dan
penerimaan pembayaran secara otomatis, dab mendapatkan Informasi transaksi
maupun daftar catatan transaksi yang telah dilakukan melalui FasaPay. Layanan
ini diperuntukkan bagi semua situs yang memilih FasaPay sebagai salah satu
pilihan pembayaran atau segala macam kegiatan bisnis yang membutuhkan transfer
antar rekening elektronik melalui akun FasaPay Layanan Pembayaran Online
Indonesia Cepat dan Aman
Siapa Saja yang Membutuhkan Dokumen Ini?
Dokumen ini diperlukan untuk semua developer yang bekerja
pada bidang pemprograman yang ingin menintegrasikan layanan pembayaran FasaPay
pada website mereka. Agar dapat mengimplementasikan XML API dengan baik
sebaiknya anda sudah paham atau memiliki pengalaman di beberapa hal berikut :
Mempersiapkan data dan pengiriman request ke webserver
Menerima dan menganalisa responds dari webserver
Bekerja dengan HTTPS protokol
Memiliki pengetahuan tentang XML dan mampu menggunakan HASH
Informasi Mendasar Mengenai XML API
XML API merupakan kumpulan perintah, yang digunakan sebagai
perantara antara FasaPay dan sites web yang lain. Format dan struktur data dari
XML API dikembangkan dari standar XML-1.0
Cara Kerja XML API
XML API merupakan sistem yang mengirim dan menerima request
informasi. Sistem ini akan memproses permintaan tersebut sesuai dengan perintah
kemudian akan menggabungkan laporan data yang dibutuhkan dan mengirimnya
kembali ke pengirim request.
Setiap request terdiri dari perintah tertentu yang kemudian akan ditafsirkan (interprets) oleh API dan kemudian memerintah server untuk mengikuti instruksi tersebut. Setelah setiap instruksi dilaksanakan maka server akan merespon dengan hasil yang sudah dilaksanakan atau dengan pesan error yang menjelaskan kenapa error terjadi.
Setiap request dan response harus diatur sedemikian rupa mengikuti format yang sudah ditentukan sehingga akan membentuk data yang spesifik dan dapat dibaca oleh XML API. Beberapa request akan menghasilkan lebih dari satu perintah dan atau lebih dari satu response. Berikut adalah beberapa langkah agar XML API dapat berjalan dengan lancar.
Setiap request terdiri dari perintah tertentu yang kemudian akan ditafsirkan (interprets) oleh API dan kemudian memerintah server untuk mengikuti instruksi tersebut. Setelah setiap instruksi dilaksanakan maka server akan merespon dengan hasil yang sudah dilaksanakan atau dengan pesan error yang menjelaskan kenapa error terjadi.
Setiap request dan response harus diatur sedemikian rupa mengikuti format yang sudah ditentukan sehingga akan membentuk data yang spesifik dan dapat dibaca oleh XML API. Beberapa request akan menghasilkan lebih dari satu perintah dan atau lebih dari satu response. Berikut adalah beberapa langkah agar XML API dapat berjalan dengan lancar.
Pengumpulan Data request
Pembentukan XML dengan format yang benar
Pembuatan HTTP GET atau POST Request berdasarkan XML yang
telah dipersiapkan.
Pengiriman HTTP GET atau POST request ke FasaPay Server
melalui HTTPS
Menunggu response dari server
Menganalisan dan mengolah data response yang dikirim oleh
server FasaPay
PENGOPERASIAN XML API
XML API mendukung beberapa pilihan pengoperasian yaitu
sebagai berikut :
Transfer. Memungkinkan anda untuk mentransfer dana dari satu
akun ke akun yang lain. Dengan perintah ini anda dapat mentransfer salah satu
mata uang yang tersedia di FasaPay. Opsi ini juga memungkinkan anda untuk melakukan
mass transfer.
History. Opsi ini memungkinkan anda untuk mendapatkan
catatan transaksi yang terjadi di akun FasaPay anda. Opsi ini mendukung banyak
parameter tambahan untuk memfilter data yang ingin anda dapatkan seperti
tanggal, mata uang, rekening tujuan, dan sebagainya.
Detail. Opsi ini memungkinkan anda untuk mendapatkan
informasi detail dari sebuah transaksi. Dalam satu request anda dapat
mencantumkan lebih dari satu opsi ini untuk mendapatkan lebih dari informasi
transaksi.
Balance. Opsi ini memungkinkan anda untuk mengetahui balance
saldo di akun FasaPay anda
Account. Opsi ini memungkinkan anda untuk melakukan check
apakah nomor Akun tersebut ada di fasapay atau tidak.
Tidak ada komentar:
Posting Komentar