SOA dan Web Service

SOA dan Web Service

SOA (Service Oriented Architecture) dan Web Service

Apa itu Web Service?

     Web service merupakan suatu komponen software yang merupakan selfcontaining, aplikasi modular self-describing yang dapat dipublikasikan, dialokasikan, dan dilaksanakan pada web .
Web service adalah teknologi yang mengubah kemampuan internet dengan menambahkan kemampuan transactional web, yaitu kemampuan web untuk saling berkomunikasi dengan pola program-to-program (P2P). Fokus web selama ini didominasi oleh komunikasi program-to-user dengan interaksi business-toconsumer (B2C), sedangkan transactional web akan didominasi oleh program-toprogram dengan interaksi business-to-business .

SOA (Service Oriented Architecture) 

SOA adalah suatu aplikasi dibangun secara modular. Sebenarnya pendekatan modular ini bukanlah sesuatu yang baru. Teknik - teknik pemrograman masa kini seperti object oriented programming, telah mengedepankan pendekatan modular dalam pembangunan aplikasi. Namun yang membuat SOA berbeda adalah komponen atau service tersebut dibangun dan berinteraksi satu sama lain secara bebas dan lepas (loose coupled). Dengan bersifat loose coupled, sebuah service dapat di-panggil oleh program/service lainnya tanpa program pemanggil tersebut perlu memperhatikan di mana lokasi service yang dipanggil berada dan platform/teknologi apa yang digunakan oleh service tersebut. Loose coupling sangat penting bagi SOA karena dengan demikian pemanggilan sebuah service oleh service lainnya dapat dilakukan pada saat run-time.

Definisi SOA (Service Oriented Architecture)

SOA adalah sebuah pendekatan dalam merancang (arsitek) suatu aplikasi dengan menggunakan kembali (reuse) komponen-komponen yang sudah ada sebelumnya. Sistem ini tidak hanya dapat di gunakan oleh sistem yang menaunginya, akan tetapi dapat juga di gunakan oleh sistem lain yang berbeda, sehingga integrasi antar sistem dapat tercapai.
Dalam hal ini, komponen-komponen tersebut memberikan suatu jenis layanan bisnis (service) tertentu seperti antara lain: mengecek credit rating, mencari data customer, mengecek status inventori, melakukan transfer dana, dan lain sebagainya. SOA lebih sesuai untuk mengintegrasikan sistem yang bersifat heterogen dan dapat dengan mudah di di sesuaikan dengan perubahan lingkungan dan kebutuhan.  

SOA terdiri atas 4 komponen, yaitu:
  • Message, data yang dibutuhkan untuk menyelesaikan sebagian atau sebuah unit kerja, yang dipertukarkan antara satu service dengan yang lainnya.
  • Operation, fungsi yang dimiliki oleh sebuah service, untuk memproses message hingga menghasilkan sesuatu. Fungsi tersebut akan saling berinteraksi untuk menyelesaikan sebuah unit kerja
  • Service, merepresentasikan sekumpulan operation yang berhubungan untuk menyelesaikan sekumpulan unit kerja yang saling berhubungan
  • Process, merupakan business rule yang menentukan operasi mana yang digunakan untuk mencapai tujuan tertentu. 



SOA dan Web Services

Web Services adalah sebuah teknik pemrograman di mana sebuah service menggunakan standar-standar berbasis XML dalam menjelaskan interface dan protocol yang harus digunakan untuk memanggil service tersebut. Standar-standar tersebut adalah:

• SOAP (Simple Object Access Protocol): Menjelaskan protokol tentang bagaimana sebuah web service dapat dipanggil.
• WSDL (Web Services Deinition Language): Sebuah format XML yang menjelaskan interface dari sebuah web service (parameter input dan output).
• UDDI (Universal Description, Discovery and Integration): Sebuah direktori yang berisi daftar web service yang dapat ditemukan dan dipanggil oleh aplikasi lainnya.Dengan standar di atas, web services sangat mendukung implementasi SOA dimana karakteristik SOA seperti loose coupling dan service interface disediakan oleh teknologi web services. 

 












Source :
Tidwell, D., 2001, Web Services: The Web’s next Revolution, http://www6.software.ibm.com/developerworks/education/wsbasics/wsbasicsa4. Pdf



Grid Computing

Grid Computing

Grid Computing

Grid Computing sebenarnya merupakan sebuah aplikasi pengembangan dari jaringan komputer (network). Hanya saja, tidak seperti jaringan komputer konvensional yang berfokus pada komunikasi antar pirati, aplikasi pada grid computing dirancang untuk memanfaatkan sumber daya pada terminal dalam jaringannya. Grid computing biasanya diterapkan untuk menjalankan sebuah fungsi yang terlalu kompleks atau terlalu intensif untuk dikerjakan oleh satu sistem tunggal.

Definisi Grid Computing
Definisi Grid Computing menurut beberapa sumber, yaitu:
  • Komputasi Grid adalah penggunaan sumber daya yang melibatkan banyak komputer yang terdistribusi dan terpisah secara geografis untuk memecahkan persoalan komputasi dalam skala besar
  • Komputasi grid adalah infrastruktur perangkat keras dan perangkat lunak yang dapat menyediakan akses yang bisa diandalkan, konsisten, tahan lama dan tidak mahal terhadap kemampuan komputasi mutakhir yang tersedia.

     Grid computing merupakan sebuah sistem komputasi terdistribusi, yang memungkinkan seluruh sumber daya (resource) dalam jaringan, seperti pemrosesan, bandwidth jaringan, dan kapasitas media penyimpan, membentuk sebuah sistem tunggal secara virtual.

Struktur Grid Computing

Grid computing merupakan sistem komputer dengan sumber daya yang dikelola dan dikendalikan secara lokal. Dimana sumber daya ini berbeda dalam hal kebijakan dan mekanisme yaitu mencakup sumber daya komputasi yang dikelola oleh sistem batch berbeda, sistem storage berbeda pada node berbeda. Kebijakan berbeda dipercayakan kepada user yang sama pada sumber daya berbeda pada Grid. Grid computing memiliki sifat alami dinamis artinya Sumber daya dan pengguna dapat sering berubah.

Grid computing dibangun dengan cara menggabungkan seluruh sistem komputasi grid yang ada di institusi-institusi penelitian menjadi sebuah kesatuan. Pengaturan hardwaredan software pada masing-masing sistem di tingkat institusi kemungkinan berbeda, namun dengan menjalankan teknologi Grid computing dengan menggabungkan simpul-simpul penghubung dari masing-masing sistem, maka akan terbentuk sebah kesatuan sumber daya komputasi grid.

Dengan ini berarti pengguna pada suatu institusi dapat memanfaatkan sumber daya komputasi yang berada di luar institusinya. Salah satu syarat dari pembentukan grid computing adalah adanya suatu backbone jaringan berkapasitas besar untuk menghubungkan simpul-simpul penghubung (memiliki lebar pita mulai dari 2 Mbps sampai dengan 155 Mbps).

Karakteristik Sistem

Ian Foster dalam jurnalnya tentang "What is grid?" menjelaskan ada 3 karakteristik atau ciri utama dari suatu sistem grid, yaitu :
  •          Tidak ada kontrol terhadap resource yang controlized
  •          Memiliki kesamaan standar protokol, misal TCP/IP
  •          Memberikan layanan yang canggih (non trivial QoS)

Konsep dan Prinsip kerja grid computing

Secara singkat, grid computing berarti menyatukan seluruh sumberdaya TI ke dalam sekumpulan layanan yang bisa digunakan secara bersama-sama untuk memenuhi kebutuhan komputing perusahaan. Infrastruktur gridcomputing secara kontinyu menganalisa permintaan terhadap sumberdaya dan mengatur suplai untuk disesuaikan terhadap permintaan tersebut.

Dimana data disimpan atau computer mana yang memproses permintaan tidak perlu dipikirkan. Sebagaimana arus listrik; untuk memanfaatkannya, tempat pembangkit atau bagaimana pengabelan jaringan listrik tidak perlu diketahui.

Dalam menyelesaikan masalah system monolitik dan sumberdaya yang terfragmentasi, grid computing bertujuan menciptakan keseimbangan antara pengaturan suplai sumberdaya dan kontrol yang fleksibel. Sumberdaya TI yang dikelola dalam grid mencakup:

RFT/GridFTP (Reliable File Transfer/Grid File Transfer Protocol)
·   
    Komponen ini dibuat agar pengguna dapat mengakses data yang berukuran besar dari semua simpul komputasi yang telah tergabung dalam sebuah sistem komputasi secara efisien.

 Hal ini tentu saja berpengaruh karena kinerja komputasi tidak hanya bergantung pada kecepatan komputer yang tergabung dalam mengeksekusi program, tapi juga seberapa cepat data yang dibutuhkan dapat diakses. Data yang diakses juga tidak selalu ada pada komputer yang mengeksekusi.
    
MDS (Monitoring and Discovery Service)
·      
     Komponen ini dibuat untuk memonitoring proses komputasi yang sedang dijalankan agar dapat mendeteksi masalah yang timbul dengan segera. Sedangkan fungsi disovery dibuat agar pengguna mampu mengetahui keberadaan sumber daya komputasi beserta karakteristiknya.

GSI (Grid Security Infrastructure)
·  
   Komponen ini dibuat untuk mengamankan sistem komputasi grid secara keseluruhan. Komponen ini membedakan teknologi GT4 dengan teknologi-teknologi sebelumnya. Dengan menerapkan mekanisme keamanan yang tergabung dengan komponen-komponen komputasi grid lainnya, sistem ini dapat diakses secara luas tanpa sedikitpun mengurangi tingkat keamanannya. Sistem keamanan ini dibangun dengan segala komponen yang telah diuji, mencakup proteksi data, autentikasi, delegasi dan autorisasi.

Jenis-jenis Grid Computing

Jenis-jenis atau komponen-komponen grid computing adalah:

Gram (Grid Resources Allocation & Management)Komponen ini dibuat untuk mengatur seluruh sumberdaya komputasi yang tersedia dalam sebuah sistem komputasi grid.

Pengaturan ini termasuk eksekusi program pada seluruh komputer yang tergabung dalam sistem komputasi grid, mulai dari inisiasi, monitoring, sampai dengan penjadwalan dan koordinasi antar proses yang terjadi dalam sistem tersebut.

Dapat juga berkoordinasi dengan sistem-sistem pengaturan sumber daya yang telah ada sebelumnya. Dengan mekanisme ini program-program yang telah dibuat sebelumnya tidak perlu dibangun ulang atau bila dimodifikasi, modifikasinya minimum.

Kelebihan & Kekurangan Grid Computing

Beberapa kelebihan dari Grid computing adalah:
  •  Perkalian dari sumber daya: Resource pool dari CPU dan storage tersedia ketika idle.
  •  Lebih cepat dan lebih besar: Komputasi simulasi dan penyelesaian masalah dapat berjalan lebih cepat dan mencakup domain yang lebih luas.
  • Software dan aplikasi: Pool dari aplikasi dan pustaka standard, akses terhadap model dan perangkat berbeda, metodologi penelitian yang lebih baik.
  • Data: Akses terhadap sumber data global dan hasil penelitian lebih baik.
  • Ukuran dan kompleksitas dari masalah mengharuskan orang-orang dalam beberapa organisasi berkolaborasi dan berbagi sumber daya komputasi, data dan instrumen sehingga terwujud bentuk organisasi baru yaitu virtual organization.
Organisasi virtual sebagai hasil kolaborasi memberikan beberapa keuntungan lebih lanjut, di antarnya :
o   Sumber daya dan orang-orang yang tersebar
o   Dihubungkan oleh jaringan, melintasi domain-domain admin
o   Berbagi sumber daya, tujuan bersama
o   Dinamis
o   Fault-tolerant
o   Tidak ada batas-batas geografis.

Kekurangan Grid Computing

Kekurangan pada grid computing yang lebih DItekankan disini adalah mengenai hambatan yang dialami oleh masyarakat Indonesia dalam mengaplikasikan teknologi grid computing. Hambatan-hambatan tersebut adalah sebagai berikut :
  • Manajemen institusi yang terlalu birokratis menyebabkan mereka enggan untuk merelakan fasilitas yang dimiliki untuk digunakan secara bersama agar mendapatkan manfaat yang lebih besar bagi masyarakat luas.
  • Masih sedikitnya sumber daya manusia yang kompeten dalam mengelola grid computing.
  • Kurangnya pengetahuan yang mencukupi bagi teknisi IT maupun user non teknisi mengenai manfaat dari grid computing itu sendiri.



Sumber :

Cluster Computing

Cluster Computing

Cluster Computing

Definisi Cluster Computing

Cluster Computing merupakan sebuah teknologi di dalam jaringan komputer,di mana terdapat dua atau lebih komputer yang dihubungkan untuk dapat bersama – sama mengerjakan tugas yang di dalamnya dan dalam penerapannya dapat terdiri atas puluhan,ratusan,hingga ribuan dan jutaan komputer yang diclusterkan untuk pengerjaan satu atau beberapa buah tugas.
Sistem Kerja Cluster Computing

Cluster Computing memiliki sistem kerja yang menghubungkan sejumlah komputer yang berada di dalam satu buah tempat/jaringan maupun berbeda lokasi,untuk bersama – sama mengerjakan sebuah tugas.
Terkait dengan fungsionalnya, Cluster Computing dapat dibagi ke dalam empat kelompok bagian. Empat kelompok bagian tersebut yaitu :

High Avaibility Cluster
·   
     High Avaibility Cluster merupakan Cluster Computing yang umum digunakan untuk kebutuhan akan sumber daya komputer yang besar, sehingga ketersediaannya harus tinggi. Contoh proyek open source untuk High Avaibility Cluster yaitu Linux Ha.

Load Balancing Cluster
·    
    Load Balancing Cluster merupakan Cluster Computing yang umum digunakan untuk melakukan load balancing pada beban komputasi komputer. Pada Cluster Computing, konsep kerja bersamaan yang dianutnya,menjadikan beban komputasi dibagi sama rata untuk semua komputer pada jaringan Cluster Computing tersebut, sehingga pekerjaan dapat dilakukan dengan lebih baik secara bersama – sama. Contoh penerapan Load Balancing Cluster adalah Linux Virtual Server.

Computing Cluster
·        
     Computing Cluster merupakan Cluster Computing yang dikhususkan untuk komputasi skala besar,seperti misalkan pada perhitungan matematika yang rumit,astronomi,kimia,fisika,dan terapan lainnya.

Grid Computing

Grid Computing merupakan Cluster Computing yang Penggunaan bersama sumber daya melibatkan multi komputer yang terdistribusi,dengan lokasi geografis yang berbeda -  beda dalam untuk memecahkan masalah komputasi skala besar

Penerapan Cluster Computing
Di seluruh dunia sudah banyak diterapkan Cluster Computing dalam berbagai di bidang kehidupan. Seperti misalkan di salah satu perguruan tinggi di Jerman, yaitu Technischen Universitat Chemnitz, yaitu menerapkan Large Linux Cluster untuk keperluan riset dan industry.

Hal lainnya adalah pembuatan sejumlah distribusi (distro) sistem operasi Linux dan komputer server berbasis Linux yang dapat digunakan oleh siapapun dalam untuk mengemplementasikan Cluster Computing menggunakan sistem operasi Linux sesuai dengan kebutuhan. Beberapa contoh sebagai berikut:
  •              Knoppix Cluster
  •              Beuwolf Cluster
  •              Kentucky Linux Athlon Testbed
  •              Open Source Cluster Application Resources
  •              MOSIX
  •              ITB Bosscha cluster computing






Sumber :

Cloud Computing

Cloud Computing

Definisi Cloud Computing  :

Definisi Cloud Computing Menurut NIST (National Institute of Standard and Technology) yaitu sebuah model yang memungkinkan adanya penggunaan  sumber daya (Resource) secara bersama – sama dan mudah, menyediakan jaringan akses di mana- mana,dapat dikonfigurasi, dan layanan yang digunakan sesuai keperluan (on demand).

Latar Belakang Cloud Computing :

Kemunculan Cloud Computing dilatarbelakangi oleh keutuhan dunia industri dan komputerasi akan pemanfaatan bersama sumber daya komputasi yang tersebar namun dapat digunakan sesuai keperluan (on demand).

Hal lainya yang mendukung kemunculan Cloud Computing adalah teknologi web 2.0,teknologi Web Service, serta kemampuan komputasi otomatis yang dilalukan oleh komputer terkait dengan manajemen sumber daya yang dimilikinya.

Nilai lebih yang Ditawarkan oleh Cloud Computing
Sebagai sebuah teknologi jaringan komputer yang banyak digunakan saat ini, Cloud Computing menawarkan sejumlah nilai lebih yang tidak dimiliki oleh teknologi – teknologi pendahulunya. Beberapa kelebihan yang dimiliki oleh  Cloud Computing  antara lain sebagai berikut:
  • Kemudahan untuk menggunakan aplikasi secara bersama- sama dan online tanpa perlu instalasi dan konfigurasi, Contoh nyata pada lanyanan SAAS.
  • Dapat diterapkan di jaringan lokal (Internet),publik (internet), maupun keduanya.
  • Penghematan biaya terkait dengan poin 1 dan 2.
  • Layanan penyimpanan data dan informasi secara online.
  • Layanan komputasi dengan sistem tersebar.
  • Kemudahan untuk digunakan di sebanyak mungkin sistem operasi dan komputer(Baik komputer desktop,laptop,tablet,mobile,smartphone)
  • Kemudahan di dalam pengembangan aplikasi secara bersama – sama sesuai kebutuhan. Contoh pada layanan PAAS.
  • Kemudahan di dalam berbagi dan menggunakan layanan infrastruktur, baik perangkat keras maupun perangkat lunak dan kombinasi keduanya. Contoh pada layanan  IAAS.

Karakteristik Cloud Computing
Sebagai sebuah teknologi dan layanan di jaringan komputer, sebagaimana jaringan komputer itu sendiri, Cloud Computing juga memiliki karakteristik khusus. Karakteristik khusus yang dimiliki oleh Cloud Computing  yaitu :
  •       On Demand Self Service.
  •       Brand Network Access
  •       Resource Pooling.
  •       Rapid Elasticit.
  •       Measured Service


On demand Self Service

On demand Self Service merupakan karakterisktik Cloud Computing dimana pengguna layanan Cloud dapat secara mandiri menyediakan semua keperluan dan kapabilitas terkait dengan komputasi pada Cloud Computing.

Brand Network Access

Brand Network Access merupakan karakterisktik Cloud Computing dimana pengguna layanan Cloud memerlukan akses jaringan komputer yang memadai,baik pada internet,intranet. Pada skala besar, adanya kapabilitas yang tersedia pada jaringan komputer dan akses ke jaringan, akan memudahkan di dalam penyediaan layanan kepada para pengguna dari berbagai platform dan media akses.

Resource Pooling

Resource Pooling merupakan karakterisktik Cloud Computing dimana sumber daya komputasi dapat diberdayakan secara bersama – sama dengan lokasi fisik yang berbeda – beda.

Rapid Elasticity

Rapid Elasticity merupakan karakterisktik Cloud Computing dimana terjadi elastisitas yang cepat pada layanan Cloud sesuai dengan kebutuhan pengguna yang bersifat on demand.

Measured Service

Measured Service merupakan karakterisktik Cloud Computing dimana layanan Cloud dapat diukur. Pengukuran pada layanan Cloud Computing dapat dilakukan melalui QoS dan QoE untuk kualitas layanan.



Sumber :




HOODLES

Gumbo beet greens corn soko endive gumbo gourd. Parsley shallot courgette tatsoi pea sprouts fava bean collard greens dandelion.

JACKETS & SUIT

Gumbo beet greens corn soko endive gumbo gourd. Parsley shallot courgette tatsoi pea sprouts fava bean collard greens dandelion.

SPORT SHOES

Gumbo beet greens corn soko endive gumbo gourd. Parsley shallot courgette tatsoi pea sprouts fava bean collard greens dandelion.

 
Copyright © 2015. My Blog