Selasa, 14 Januari 2014

Arsitektur telematika dari sisi klien

Arsitektur Telematika sendiri merupakan struktur desain komputer dan semua rinciannya, seperti sistem sirkuit, chip, bus untuk ekspansi slot, BIOS dan sebagainya. Tiga elemen utama sebuah arsitektur, masing-masing sering dianggap sebagai arsitektur, adalah:
1. Arsitektur sistem pemrosesan
menentukan standar teknis untuk hardware, lingkungan sistem operasi, dan software aplikasi, yang diperlukan untuk menangani persyaratan pemrosesan informasi perusahaan dalam spektrum yang lengkap. Standar merupakan format, prosedur, dan antar muka, yang menjamin bahwa perlengkapan dan software dari sekumpulan penyalur akan bekerja sama.
2. Arsitektur telekomunikasi dan jaringan
menentukan kaitan di antara fasilitas komunikasi perusahaan, yang melaluinya informasi bergerak dalam organisasi dan ke peserta dari organisasi lain, dan hal ini juga tergantung dari standar yang berlaku.
3. Arsitektur data
sejauh ini merupakan yang paling rumit diantara ketiga arsitektur di atas, dan termasuk yang relatif sulit dalam implementasinya, menentukan organisasi data untuk tujuan referensi silang dan penyesuaian ulang, serta untuk penciptaan sumber informasi yang dapat diakses oleh aplikasi bisnis dalam lingkup luas.
Dengan kemajuan teknologi telekomunikasi dan teknologi informasi atau lebih dikenal dikenal dengan istilah Telematika atau dalam istilah asingnya ICT (Information and Communication Technology) menawarkan sesuatu yang pada awal perkembangan komputer sangatlah mahal yaitu mini komputer, workstation dan personal komputer yang memiliki kemampuan setara mainframe dengan harga yang jauh lebih murah.
Hal itu mendorong munculnya paradigma baru dalam pemrosesan data yaitu apa yang disebut Distributed Processing dimana sejumlah komputer mini komputer, workstation atau personal komputer menangani semua proses yang didistribusikan secara phisik melalui jalur jaringan komunikasi.
A. Arsitektur Telematika sisi Client
istilah ini merujuk pada pelaksanaan atau penyimpanan data pada browser (atau klien) sisi koneksi HTTP. JavaScript adalah sebuah contoh dari sisi klien eksekusi, dan cookie adalah contoh dari sisi klien penyimpanan.
Karakteristik Client :
* Selalu memulai permintaan ke server.
* Menunggu balasan.
* Menerima balasan.
* Biasanya terhubung ke sejumlah kecil dari server pada satu waktu.
* Biasanya berinteraksi langsung dengan pengguna akhir dengan menggunakan antarmuka pengguna seperti antarmuka pengguna grafis. Khusus jenis klien mencakup: web browser, e-mail klien, dan online chat klien.
B. Arsitektur Sisi Server

Sebuah eksekusi sisi server adalah server Web khusus eksekusi yang melampaui standar metode HTTP itu harus mendukung. Sebagai contoh, penggunaan CGI script sisi server khusus tag tertanam di halaman HTML; tag ini memicu tindakan terjadi atau program untuk mengeksekusi.
Karakteristik Server:
·          Selalu menunggu permintaan dari salah satu klien.
·          Melayani klien permintaan kemudian menjawab dengan data yang diminta ke klien.
·          Sebuah server dapat berkomunikasi dengan server lain untuk melayani permintaan klien.
·          Jenis-jenisya yaitu : web server, FTP server, database server, E-mail server, file server, print server. Kebanyakan web layanan ini juga jenis server.

Menurut kamus istilah arsitektur dapat diartikan sebagai struktur desain komputer dan semua rinciannya, seperti sistem sirkuit, chip, bus untuk ekspansi slot, BIOS dan sebagainya. 

Tiga elemen utama sebuah arsitektur, masing-masing sering dianggap sebagai arsitektur, adalah:

1.      Arsitektur sistem pemrosesan, menentukan standar teknis untuk hardware, lingkungan sistem operasi, dan software aplikasi, yang diperlukan untuk menangani persyaratan pemrosesan informasi perusahaan dalam spektrum yang lengkap. Standar merupakan format, prosedur, dan antar muka, yang menjamin bahwa perlengkapan dan software dari sekumpulan penyalur akan bekerja sama.
2.      Arsitektur telekomunikasi dan jaringan, menentukan kaitan di antara fasilitas komunikasi perusahaan, yang melaluinya informasi bergerak dalam organisasi dan ke peserta dari organisasi lain, dan hal ini juga tergantung dari standar yang berlaku.
3.      Arsitektur data, sejauh ini merupakan yang paling rumit diantara ketiga arsitektur di atas, dan termasuk yang relatif sulit dalam implementasinya, menentukan organisasi data untuk tujuan referensi silang dan penyesuaian ulang, serta untuk penciptaan sumber informasi yang dapat diakses oleh aplikasi bisnis dalam lingkup luas.

Dengan kemajuan teknologi telekomunikasi dan teknologi informasi atau lebih dikenal dikenal dengan istilah Telematika atau dalam istilah asingnya ICT (Information and Communication Technology) menawarkan sesuatu yang pada awal perkembangan komputer sangatlah mahal yaitu mini komputer, workstation dan personal komputer yang memiliki kemampuan setara mainframe dengan harga yang jauh lebih murah.
Hal itu mendorong munculnya paradigma baru dalam pemrosesan data yaitu apa yang disebut Distributed Processing dimana sejumlah komputer mini komputer, workstation atau personal komputer menangani semua proses yang didistribusikan secara phisik melalui jalur jaringan komunikasi.
Salah satu bentuk dari distributed processing adalah arsitektur client-server. MenurutWikipedia, klien-server atau client-server merupakan sebuah paradigma dalam teknologi informasi yang merujuk kepada cara untuk mendistribusikan aplikasi ke dalam dua pihak: pihak klien dan pihak server. Dalam model klien/server, sebuah aplikasi dibagi menjadi dua bagian yang terpisah, tapi masih merupakan sebuah kesatuan yakni komponen klien dan komponen server. 
Komponen client juga sering disebut sebagai front-end, sementara komponen server disebut sebagai back-end. Komponenclient dari aplikasi tersebut dijalankan dalam sebuah workstation dan menerima masukan data dari pengguna. Komponen client tersebut akan menyiapkan data yang dimasukkan oleh pengguna dengan menggunakan teknologi pemrosesan tertentu dan mengirimkannya kepada komponen server yang dijalankan di atas mesin server, umumnya dalam bentuk request terhadap beberapa layanan yang dimiliki oleh server. Komponen server akan menerima request dari clinet, dan langsung memprosesnya dan mengembalikan hasil pemrosesan tersebut kepadaclientClient pun menerima informasi hasil pemrosesan data yang dilakukan server dan menampilkannya kepada pengguna, dengan menggunakan aplikasi yang berinteraksi dengan pengguna.


C. Kolaborasi Arsitektur Telematika sisi Client dan Server
Berikut ini adalah penjelasan mengenai beberapa kolaborasi arsitektur sisi client dan sisi server :
1. Arsitektur Single- Tier
Arsitektur Single- Tier adalah semua komponen produksi dari sistem dijalankan pada komputer yang sama. Sederhana dan alternatifnya sangat mahal. Membutuhkan sedikit perlengkapan untuk dibeli dan dipelihara.
2. Arsitektur Two-tier
Pada Arsitektur Two-tier, antarmukanya terdapat pada lingkungan desktop dan sistem manajemen database biasanya ada pada server yang lebih kuat yang menyediakan layanan pada banyak client. Pengolahan informasi dibagi antara lingkungan antarmuka sistem dan lingkungan server manajemen database.
3. Arsitektur Three-tier
Arsitektur Three-Tier diperkenalkan untuk mengatasi kelemahan dari arsitektur two-tier. Di tiga tingkatan arsitektur, sebuah middleware digunakan antara sistem user interface lingkungan client dan server manajemen database lingkungan. Middleware ini diimplementasikan dalam berbagai cara seperti pengolahan transaksi monitor, pesan server atau aplikasi server. Middleware menjalankan fungsi dari antrian, eksekusi aplikasi dan database staging.
Sumber :


Open Services Gateway Initiative (OSGi)

Pengertian Gateway

            Gateway adalah sebuah perangkat yang digunakan untuk menghubungkan
satu jaringan komputer dengan satu atau lebih jaringan komputer yang menggunakan protokol komunikasi yang berbeda sehingga informasi dari satu jaringan computer dapat diberikan kepada jaringan komputer lain yang protokolnya berbeda. Definisi tersebut adalah definisi gateway yang utama. Seiring dengan merebaknya internet , definisi gateway seringkali bergeser. Tidak jarang pula pemula menyamakan "gateway" dengan "router" yang sebetulnya tidak benar. Kadangkala, kata "gateway" digunakan untuk mendeskripkan perangkat yang menghubungkan jaringan komputer besar dengan jaringan komputer besar lainnya. Hal ini muncul karena seringkali perbedaan protokol komunikasi dalam jaringan komputer hanya terjadi di tingkat jaringan komputer yang besar.
Gateway adalah sebuah perangkat yang digunakan untuk menghubungkan satu jaringan komputer dengan satu atau lebih jaringan komputer yang menggunakan protokol komunikasi yang berbeda sehingga informasi dari satu jaringan computer dapat diberikan kepada jaringan komputer lain yang protokolnya berbeda. Istilah gateway merujuk kepada hardware atau software yang menjembatani dua aplikasi atau jaringan yang tidak kompatibel, sehingga data dapat ditransfer antar komputer yang berbeda-beda. Salah satu contoh penggunaan gateway adalah pada email, sehingga pertukaran email dapat dilakukan pada sistem yang berbeda. Host yang digunakan untuk mengalihkan lalu lintas jaringan dari satu jaringan ke jaringan lain, juga digunakan untuk melewatkan lalu lintas jaringan dari satu protokol ke protokol lain. Dipergunakan untuk menghubungkan dua jenis jaringan komputer yang arsitekturnya sama sekali berbeda. Jadi gateway lebih kompleks daripada bridge. Gateway dapat diaplikasikan antara lain untuk menghubungkan IBM SNA dengan digital DNA, LAN (Local Area Network) dengan WAN (Wide Area Network). Salah satu fungsi poko gateway adalah melakukan protocol converting, agar dua arsitektur jaringan komputer yang berbeda dapat berkomunikasi. Gateway juga bisa diartikan sebagai komputer yang memiliki minimal 2 buah network interface untuk menghubungkan 2 buah jaringan atau lebih. Di Internet suatu alamat bisa ditempuh lewat gateway-gateway yang memberikan jalan/rute ke arah mana yang harus dilalui supaya paket data sampai ke tujuan. Kebanyakan gateway menjalankan routing daemon (program yang meng-update secara dinamis tabel routing). Karena itu gateway juga biasanya berfungsi sebagai router. Gateway/router bisa berbentuk Router box seperti yang di produksi Cisco, 3COM, dll atau bisa juga berupa komputer yang menjalankan Network Operating System plus routing daemon. Misalkan PC yang dipasang Unix FreeBSD dan menjalankan program Routed atau Gated. Namun dalam pemakaian Natd, routing daemon tidak perlu dijalankan, jadi cukup dipasang gateway saja.




Open Services Gateway Initiative (OSGi)


The OSGi Alliance (sebelumnya dikenal sebagai Open Services Gateway inisiatif, sekarang nama kuno) adalah terbuka organisasi standar yang didirikan pada Maret 1999. Aliansi dan anggota-anggotanya telah ditentukan yang Java berbasis layanan platform yang dapat dikelola dari jarak jauh. Inti bagian dari spesifikasi adalah sebuah kerangka kerja yang mendefinisikan suatu manajemen siklus hidup aplikasi model, layanan registry, sebuah lingkungan Eksekusi dan Modul. Berdasarkan kerangka ini, sejumlah besar OSGi layers, API, dan Jasa telah ditetapkan.
OSGi teknologi adalah sistem modul dinamis untuk Java ™
OSGi teknologi menyediakan layanan berorientasi, komponen berbasis lingkungan untuk para pengembang dan menawarkan cara-cara standar untuk mengelola siklus hidup perangkat lunak. Kemampuan ini sangat meningkatkan nilai berbagai komputer dan perangkat yang menggunakan platform Java.
Pengadopsi teknologi OSGi manfaat dari peningkatan waktu ke pasar dan mengurangi biaya pengembangan karena teknologi OSGi menyediakan integrasi pra-dibangun dan pra-komponen subsistem diuji. Teknologi ini juga mengurangi biaya pemeliharaan dan kemajuan aftermarket baru peluang unik karena jaringan dapat dimanfaatkan untuk secara dinamis mengupdate atau memberikan layanan dan aplikasi di lapangan.

Spesifikasi:
OSGi spesifikasi yang dikembangkan oleh para anggota dalam proses terbuka dan tersedia untuk umum secara gratis di bawah Lisensi Spesifikasi OSGiOSGi Allianceyang memiliki kepatuhan program yang hanya terbuka untuk anggota. Pada Oktober 2009, daftar bersertifikat OSGi implementasi berisi lima entri.

Proses Spesifikasi
Spesifikasi OSGi dikembangkan oleh para anggota dalam proses terbuka dan tersedia untuk publik secara gratis di bawah Lisensi Spesifikasi OSGi. The Alliance OSGi memiliki kepatuhan program yang hanya terbuka untuk anggota. Pada November 2010, ada tujuh bersertifikat OSGi kerangka implementasi . Sebuah halaman terpisah daftar baik bersertifikat dan non-bersertifikat Implementasi Spesifikasi OSGi, yang meliputi kerangka OSGi dan spesifikasi OSGi lainnya.

Kerangka OSGi (OSGi framework)
Definisi
Kerangka OSGi adalah sistem modul dan layanan platform untuk Java bahasa pemrograman yang menerapkan lengkap dan dinamis model komponen , sesuatu yang seperti tahun 2012 tidak ada di Jawa standalone / VM lingkungan. Aplikasi atau komponen (datang dalam bentuk dari bundel untuk penyebaran) dapat jarak jauh diinstal, mulai, berhenti, diperbarui, dan dihapus tanpa memerlukan restart, pengelolaan paket Jawa / kelas ditentukan dengan sangat rinci. Aplikasi manajemen siklus hidup (start, stop, install, dll) dilakukan melalui API yang memungkinkan untuk remote download dari kebijakan manajemen. Registri layanan memungkinkan berkas untuk mendeteksi penambahan layanan baru, atau penghapusan layanan dan beradaptasi sesuai.
Spesifikasi OSGi telah bergerak melampaui fokus asli gateway layanan, dan sekarang digunakan dalam aplikasi mulai dari ponsel ke open source Eclipse IDE. Area aplikasi lainnya termasuk mobil, otomasi industri, otomatisasi bangunan, PDA, komputasi grid, hiburan, armada manajemen dan aplikasi server .

Arsitektur (Architecture)
Setiap kerangka yang menerapkan standar OSGi menyediakan suatu lingkungan untuk modularisasi aplikasi ke dalam bundel kecil. Setiap bundel adalah koleksi, erat dynamically loadable kelas, guci, dan file konfigurasi yang secara eksplisit menyatakan dependensi eksternal mereka (jika ada).
Kerangka ini secara konseptual dibagi menjadi bidang-bidang berikut:

  1. Bundles
    Bundles adalah normal jar komponen dengan nyata tambahan header
  2. Services
    Layanan yang menghubungkan lapisan bundel dalam cara yang dinamis dengan menawarkan menerbitkan-menemukan-model mengikat Jawa lama untuk menikmati objek (POJO).
  3. Services
    API untuk jasa manajemen (ServiceRegistration, ServiceTracker dan ServiceReference).
  4. Life-Cycle
    API untuk manajemen siklus hidup untuk (instal, start, stop, update, dan uninstall) bundel.
  5. Modules
    Lapisan yang mendefinisikan enkapsulasi dan deklarasi dependensi (bagaimana sebuah bungkusan dapat mengimpor dan mengekspor kode).
  6. Security
    Layer yang menangani aspek keamanan dengan membatasi fungsionalitas bundel untuk pra-didefinisikan kemampuan.
  7. Execution Environment
    Mendefinisikan metode dan kelas apa yang tersedia dalam platform tertentuTidak ada daftar tetap eksekusi lingkungan, karena dapat berubah sebagai Java Community Process menciptakan versi baru dan edisi Jawa. Namun, set berikut saat ini didukung oleh sebagian besar OSGi implementasi:
    •   CDC-1.1/Foundation-1.1
    •   OSGi/Minimum-1.0
    •   OSGi/Minimum-1.1
    •   JRE-1.1
    •   From J2SE-1.2 up to J2SE-1.6 Dari J2SE-1.2 hingga J2SE-1,6
    •    CDC-1.0/Foundation-1.0 CDC-1.0/Foundation-1.0
Bundles (Kumpulan)
Bundel adalah sekelompok kelas Java dan sumber daya tambahan yang dilengkapi dengan manifes rinci MANIFEST.MF file pada semua isinya, serta layanan tambahan yang diperlukan untuk memberikan kelompok termasuk kelas Java perilaku yang lebih canggih, sejauh deeming seluruh agregat komponen.
Di bawah ini adalah contoh khas MANIFEST.MF file dengan Headers OSGi:
Bundle-Nama: Hello World
Bundle-SymbolicName: org.wikipedia.helloworld
Bundle-Description: Sebuah bundel Hello World
Bundle-ManifestVersion: 2
Bundle-Version: 1.0.0
Bundle-Activator: org.wikipedia.Activator
Ekspor-Paket: org.wikipedia.helloworld, version = “1.0.0″
Impor-Paket: org.osgi.framework, version = “1.3.0″
Makna dari isi dalam contoh adalah sebagai berikut :
§  Bundle-Nama: Mendefinisikan nama terbaca-manusia untuk bundel ini, Cukup memberikan nama pendek untuk bundel.
§  Bundle-SymbolicName: Header hanya diperlukan, entri ini menetapkan pengenal unik untuk bundel, berdasarkan konvensi nama domain terbalik (digunakan juga oleh paket java ).
§  Bundle-Description: Penjelasan mengenai fungsi bundel itu.
§  Bundle-ManifestVersion: Menunjukkan spesifikasi OSGi digunakan untuk membaca bundel ini.
§  Bundle-Version: menunjuk nomor versi ke bundel.
§  Bundle-Activator: Menunjukkan nama kelas yang akan dipanggil sekali bundel diaktifkan.
§  Ekspor-Paket: mengungkapkan mana Java paket yang terkandung dalam sebuah kemasan akan dibuat tersedia untuk dunia luar.
§  Impor-Paket: Menunjukkan mana Java paket akan diperlukan dari dunia luar untuk memenuhi dependensi yang dibutuhkan dalam sebuah kemasan.

Siklus Kehidupan (Life-cycle)
Lapisan Siklus Hidup menambahkan bundel yang dapat secara dinamis diinstal, mulai, berhenti, diperbarui dan dihapus. Bundel bergantung pada lapisan modul untuk pemuatan kelas tetapi menambahkan API untuk mengelola modul dalam waktu dijalankan. Lapisan siklus hidup memperkenalkan dinamika yang biasanya bukan bagian dari aplikasi. Mekanisme ketergantungan luas digunakan untuk menjamin operasi yang benar dari lingkungan. Hidup operasi siklus sepenuhnya dilindungi dengan arsitektur keamanan.

Bundle Negara
Deskripsi
DIPASANG
Bundel telah berhasil diinstal.
RESOLVED
Semua kelas Java bahwa kebutuhan bundel tersedia. Kondisi ini menunjukkan bahwa bundel ini baik siap untuk memulai atau telah berhenti.
STARTING
Bundel ini sedang dimulai, BundleActivator.start metode akan dipanggil, dan metode ini belum kembali. Ketika bundel memiliki kebijakan aktivasi, bundel akan tetap di negara STARTING sampai bundel diaktifkan sesuai dengan kebijakan aktivasi ..
AKTIF
Bundel ini telah berhasil diaktifkan dan berjalan, Bundle nya Activator mulai metode telah dipanggil dan kembali.
MENGHENTIKAN
Bundel ini sedang dihentikan. The BundleActivator.stop Metode telah dipanggil tetapi metode berhenti belum kembali.
Dihapus
Bundel telah dihapus. Ini tidak bisa pindah ke negara lain.

Di bawah ini adalah contoh dari kelas khas Jawa melaksanakan BundleActivator antarmuka:
Paket org.wikipedia;
impor org.osgi.framework.BundleActivator;
mengimpor org.osgi.framework.BundleContext;
public class Activator mengimplementasikan BundleActivator {
private BundleContext konteks;
kekosongan awal publik (BundleContext konteks) throws Exception {
Sistem keluar println (“Memulai: Hello World”)..;
konteks ini = konteks.;
}
kekosongan berhenti publik (BundleContext konteks) throws Exception {
Sistem keluar println (“Menghentikan: Dunia Kejam Goodbye”)..;
konteks ini = null.;
}
}

Sumber :