Minggu, 12 April 2015
Tugas Besar Smart City " Smart Water "
https://www.dropbox.com/s/l936cjld6icf6pi/JodiGandaWijaya_1211002_tugasbesarPTI.pdf?dl=0
Senin, 09 Maret 2015
Socket Programming
Socket adalah Saluran komunikasi antarkomputer yang berbasis
protocol internet socket programming adalah bagaimana cara menggunakan socket
API ( Application Socket Programming ), untuk menghubungkan komunikasi antara
proses remote dan local. Sedangkan API adalah sebuah library atau fungsi
windows untuk mengeksekusi sebuah perintah yang ada di dalam semua tampilan
windows , sebagai contoh untuk tampilan desktop ,screen saver ,shutdown
computer dll.
Jenis protokol
·
TCP (Transmission
Control Protocol)
adalah protokol
yang paling umum digunakan di Internet. Alasan untuk ini
adalah karena TCP menawarkan koreksi kesalahan. Ketika
protokol TCP digunakan ada “guaranteed delivery.” yaitu jaminan bahwa
packet akan terkirim. Hal ini disebabkan metode yang disebut “flow
control.” Flow control menentukan kapan data harus dikirim
kembali, dan menghentikan aliran
data paket sebelumnya sampai berhasil ditransfer. Saat
paket data dikirim, tabrakan dapat terjadi. Ketika
ini terjadi, client akan meminta kembali paket dari server sampai seluruh paket lengkap
dan identik dengan aslinya.
·
UDP (User
Datagram Protocol)
adalah protokol
yang umum digunakan di Internet. Namun, UDP tidak pernah
digunakan untuk mengirim data penting seperti halaman
web, informasi database, dll. UDP umumnya digunakan
untuk streaming audio dan video. Media streaming seperti
Windows Media audio files (. WMA), Real
Player (. RM), dan lain-lain menggunakan UDP karena
menawarkan kecepatan! Alasan UDP lebih cepat
daripada TCP adalah karena tidak ada bentuk flow control
atau koreksi kesalahan. Data yang dikirim melalui
Internet dipengaruhi oleh tabrakan, dan error akan muncul.
Ingatlah bahwa UDP hanya berkaitan dengan
kecepatan. Ini adalah alasan utama mengapa
media streaming tidak berkualitas tinggi.
Port
Dalam protokol jaringan,TCP/IP.
sebuah port adalah mekanisme yang mengizinkan sebuah komputer untuk mendukung
beberapa sesi koneksi dengan komputer lainnya dan program di dalam jaringan.
Port dapat mengidentifikasikan aplikasi dan layanan yang menggunakan koneksi di
dalam jaringan TCP/IP. Sehingga, port juga mengidentifikasikan sebuah proses
tertentu di mana sebuah server dapat memberikan sebuah layanan kepada klien
atau bagaimana sebuah klien dapat mengakses sebuah layanan yang ada dalam
server. Port dapat dikenali dengan angka 16bit (dua byte) yang disebut dengan
Port Number dan diklasifikasikan dengan jenis protokol transport apa yang
digunakan, ke dalam Port TCP dan Port UDP. Karena memiliki angka 16-bit, maka
total maksimum jumlah port untuk setiap protokol transport yang digunakan
adalah 65536 buah.
Dilihat dari penomorannya, port UDP
dan TCP dibagi menjadi tiga jenis, yakni sebagai berikut:
·
Well-known
Port: yang pada awalnya berkisar antara 0 hingga 255 tapi kemudian diperlebar
untuk mendukung antara 0 hingga 1023. Port number yang termasuk ke dalam
well-known port, selalu merepresentasikan layanan jaringan yang sama, dan
ditetapkan oleh Internet Assigned Number Authority (IANA). Beberapa di antara
port-port yang berada di dalam range Well-known port masih belum ditetapkan dan
direservasikan untuk digunakan oleh layanan yang bakal ada di masa depan.
Sebagai contoh www atau http ada di port 80, sedangkan mail ada di port 25
·
Registered
Port: Port-port yang digunakan oleh vendor-vendor komputer atau jaringan yang
berbeda untuk mendukung aplikasi dan sistem operasi yang mereka buat.
Registered port juga diketahui dan didaftarkan oleh IANA tapi tidak
dialokasikan secara permanen, sehingga vendor lainnya dapat menggunakan port
number yang sama. Range registered port berkisar dari 1024 hingga 49151 dan
beberapa port di antaranya adalah Dynamically Assigned Port.
·
Dynamically
Assigned Port: merupakan port-port yang ditetapkan oleh sistem operasi atau
aplikasi yang digunakan untuk melayani request dari pengguna sesuai dengan
kebutuhan. Dynamically Assigned Port berkisar dari 1024 hingga 65536 dan dapat
digunakan atau dilepaskan sesuai kebutuhan.
Contoh Socket
Programming bahasa C : Chat sederhana client - server
Sesuai dengan judulnya,
kita akan membuat sebuah program chat antara client dengan server menggunakan
bahasa C. Siapkan text editor untuk
membuat kode.
Pertama, kita akan membuat server berikut ini kode yang perlu diketikkan
#include<stdio.h>
#include<netinet/in.h>
#include<sys/types.h>
#include<sys/socket.h>
#include<netdb.h>
#include<stdlib.h>
#include<string.h>
#define MAX 80
#define PORT 43454
#define SA struct sockaddr
void func(int sockfd)
{
char buff[MAX];
int n;
for(;;)
{
bzero(buff,MAX);
read(sockfd,buff,sizeof(buff));
printf("From client: %s\t To client :
",buff);
bzero(buff,MAX);
n=0;
while((buff[n++]=getchar())!='\n');
write(sockfd,buff,sizeof(buff));
if(strncmp("exit",buff,4)==0)
{
printf("Server Exit...\n");
break;
}
}
}
int main()
{
int sockfd,connfd,len;
struct sockaddr_in servaddr,cli;
sockfd=socket(AF_INET,SOCK_STREAM,0);
if(sockfd==-1)
{
printf("socket creation failed...\n");
exit(0);
}
else
printf("Socket successfully created..\n");
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family=AF_INET;
servaddr.sin_addr.s_addr=htonl(INADDR_ANY);
servaddr.sin_port=htons(PORT);
if((bind(sockfd,(SA*)&servaddr,
sizeof(servaddr)))!=0)
{
printf("socket bind failed...\n");
exit(0);
}
else
printf("Socket successfully binded..\n");
if((listen(sockfd,5))!=0)
{
printf("Listen failed...\n");
exit(0);
}
else
printf("Server listening..\n");
len=sizeof(cli);
connfd=accept(sockfd,(SA *)&cli,&len);
if(connfd<0)
{
printf("server acccept failed...\n");
exit(0);
}
else
printf("server acccept the client...\n");
func(connfd);
close(sockfd);
}
Setelah itu kita membuat client dengan kode berikut :
#include<stdio.h>
#include<netinet/in.h>
#include<sys/types.h>
#include<sys/socket.h>
#include<netdb.h>
#include<string.h>
#include<stdlib.h>
#define MAX 80
#define PORT 43454
#define SA struct sockaddr
void func(int sockfd)
{
char buff[MAX];
int n;
for(;;)
{
bzero(buff,sizeof(buff));
printf("Enter the string : ");
n=0;
while((buff[n++]=getchar())!='\n');
write(sockfd,buff,sizeof(buff));
bzero(buff,sizeof(buff));
read(sockfd,buff,sizeof(buff));
printf("From Server : %s",buff);
if((strncmp(buff,"exit",4))==0)
{
printf("Client Exit...\n");
break;
}
}
}
int main()
{
int sockfd,connfd;
struct sockaddr_in servaddr,cli;
sockfd=socket(AF_INET,SOCK_STREAM,0);
if(sockfd==-1)
{
printf("socket creation failed...\n");
exit(0);
}
else
printf("Socket successfully created..\n");
bzero(&servaddr,sizeof(servaddr));
servaddr.sin_family=AF_INET;
servaddr.sin_addr.s_addr=inet_addr("127.0.0.1");
servaddr.sin_port=htons(PORT);
if(connect(sockfd,(SA
*)&servaddr,sizeof(servaddr))!=0)
{
printf("connection with the server
failed...\n");
exit(0);
}
else
printf("connected to the server..\n");
func(sockfd);
close(sockfd);
}
Setelah selesai membuat file kode bahasa C, buka
terminal, ubah direktori ke lokasi file .c, kemudian compile dan run file .c.
Setelah server dijalankan, buka terminal baru, ubah
direktori seperti langkah sebelumnya, kemudian compile dan run dengan cara yang
sama seperti langkah sebelumnya. Lalu muncul tempat untuk mengisi pesan di
kedua jendela terminal. Sekarang coba menulis pesan "halo" pada
client, coba perhatikan yang muncul di server. Pesan dari client muncul di
jendela server, kemudian coba mengirim pesan balik "halo juga "
Pengertian Komputasi Paralel
Pengertian
Komputasi Paralel
Komputasi paralel adalah salah satu teknik
melakukan komputasi secara bersamaan dengan memanfaatkan beberapa komputer
independen secara bersamaan. Ini umumnya diperlukan saat kapasitas yang
diperlukan sangat besar, baik karena harus mengolah data dalam jumlah besar (di
industri keuangan, bioinformatika, dll) ataupun karena tuntutan proses
komputasi yang banyak. Kasus kedua umum ditemui di kalkulasi numerik untuk
menyelesaikan persamaan matematis di bidang fisika (fisika komputasi), kimia
(kimia komputasi) dll.
Pemrograman paralel adalah teknik pemrograman
komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan baik
dalam komputer dengan satu (prosesor tunggal) ataupunbanyak (prosesor ganda
dengan mesin paralel) CPU. Tujuan utama dari pemrograman parallel adalah untuk
meningkatkan performa komputasi. Semakin banyak hal yang bisa dilakukan secara bersamaan
(dalam waktu yang sama), semakin banyak pekerjaan yang bisa diselesaikan.
Untuk melakukan aneka jenis komputasi paralel ini
diperlukan infrastruktur mesin paralel yang terdiri dari banyak komputer yang
dihubungkan dengan jaringan dan mampu bekerja secara paralel untuk
menyelesaikan satu masalah. Untuk itu diperlukan aneka perangkat lunak
pendukung yang biasa disebut sebagai middleware yang berperan untuk mengatur
distribusi pekerjaan antar node dalam satu mesin paralel. Selanjutnya pemakai
harus membuat pemrograman paralel untuk merealisasikan komputasi. Tidak berarti
dengan mesin paralel semua program yang dijalankan diatasnya otomatis akan
diolah secara parallel.
Di dalam komputasi parallel ada yang dinamakan
dengan pemrograman parallel. Pemrograman paralel adalah teknik pemrograman
komputer yang memungkinkan eksekusi perintah/operasi secara bersamaan
(komputasi paralel), baik dalam komputer dengan satu (prosesor tunggal) ataupun
banyak (prosesor ganda dengan mesin paralel) CPU. Bila komputer yang digunakan
secara bersamaan tersebut dilakukan oleh komputer-komputer terpisah yang
terhubung dalam suatu jaringan komputer lebih sering istilah yang digunakan
adalah sistem terdistribusi (distributed computing).
Tujuan utama dari pemrograman paralel adalah untuk
meningkatkan performa komputasi. Semakin banyak hal yang bisa dilakukan secara
bersamaan (dalam waktu yang sama), semakin banyak pekerjaan yang bisa
diselesaikan. Analogi yang paling gampang adalah, bila anda dapat merebus air
sambil memotong-motong bawang saat anda akan memasak, waktu yang anda butuhkan
akan lebih sedikit dibandingkan bila anda mengerjakan hal tersebut secara
berurutan (serial). Atau waktu yg anda butuhkan memotong bawang akan lebih
sedikit jika anda kerjakan berdua.
Performa dalam pemrograman paralel diukur dari
berapa banyak peningkatan kecepatan (speed up) yang diperoleh dalam menggunakan
tehnik paralel. Secara informal, bila anda memotong bawang sendirian
membutuhkan waktu 1 jam dan dengan bantuan teman, berdua anda bisa melakukannya
dalam 1/2 jam maka anda memperoleh peningkatan kecepatan sebanyak 2 kali.
Parallel processing berbeda dengan multitasking,
yaitu satu CPU mengeksekusi beberapa program sekaligus. Parallel processing
disebut juga parallel computing. Pada system komputasi parallel terdiri dari
beberapa unit prosesor dan beberapa unit memori. Ada dua teknik yang berbeda
untuk mengakses data di unit memori, yaitu shared memory address dan message
passing. Berdasarkan cara mengorganisasikan memori ini computer parallel
dibedakan menjadi shared memory parallel machine dan distributed memory
parallel machine.
Rabu, 25 Februari 2015
SOA
Jika kita pernah mengenal Object Oriented Programming (OOP), kini dunia bisnis dapat berfikir secara service oriented.
SOA adalah solusi yang dapat digunakan untuk efektifitas dalam pengembangan system.
SOA ( Service Oriented Architecture) adalah Arsitektur yang dibangun dengan berorientasi kepada service
Dengan kata lain,SOA adalah sebuah arsitektur kerangka kerja berbasis standar terbuka yang memungkinkan perusahaan-perusahaan untuk saling mengintegrasikan data yang sebelumnya hanya tersimpan rapat di markas para pelanggan, mitra, atau pemasok.Dengan kata lain,SOA merupakan arsitektur yang mendukung integrasi bisnis sebagai layanan yang terhubung dan menjadi jalan menuju inovasi.(SOA juga menjadi strategi bisnis berbasis teknologi dan hasil evolusi untuk mengintegrasi berbagai sumber informasi dari sumber kode atau platform yang berbeda-beda)
Tantangan Perusahaan
Dalam bisnis perusahaan akan selalu mendapatkan tantangan, yang datang dari permintaan pelanggan dan persaingan pasar. Hal ini menuntut perusahaan agar secara cepat merespon dengan membuat inovasi. Namun inovasi ini terbentur dengan teknologi yang sedang berjalan di perusahaan. Hal ini mengakibatkan cost yang besar ketika akan melakukan inovasi. Hal inilah yang akhirnya membatasi perusahaan dalam berinovasi. Dilain pihak tantangan itu tidak akan berhenti. Pelanggan bisa saja tidak loyal dan pesaing melakukan invoasi yang lebih canggih.
Menjawab tantangan
Ketika kita berpikir dengan arsitektur tradisional, tentunya akan sulit dan butuh effort yang besar untuk berinovasi. Bisnis proses yang terlanjur berjalan dengan aplikasi-aplikasi yang ada. Ternyata mempunyai platform dan tempat yang berbeda. Dengan SOA hal ini dapat dipecahkan. Bisnis proses dipecah kedalam service-service. Service adalah bagian dari bisnis proses yang kumpulan fungsi, prosedur atau proses yang memberikan respon jika diminta.Service ini dapat saling berkomunikasi walaupun berbeda platform.
Karakteristik SOA
Seperti yang dideinisikan diatas,SOA adalah suatu cara perancangan aplikasi dengan menggunakan komponen-komponen atau pelayanan yang sudah ada.Dengan kata lain, 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.
Misalnya sebuah aplikasi core banking menyediakan sebuah service Fund Transfer, maka aplikasi-aplikasi banking lainnya seperti treasury, payment gateway, ATM switching dan sebagainya dapat memanggil service Fund Transfer tersebut tanpa perlu memusingkan di mana Fund Transfer tersebut berada di dalam jaringan dan teknik pemanggilan yang harus digunakan.Hal ini kontras dengan pendekatan tight coupling di mana dalam hal ini setiap aplikasi perbankan di atas masing-masing harus mempunyai fungsi Fund Transfer di dalamnya sehingga akan menyulitkan dan membutuhkan biaya/resource besar jika perlu merubah logic dari Fund Transfer ke requirement bisnis yang baru di dalam setiap aplikasinya. Karakteristik lainnya adalah service dalam SOA disusun atas 2 hal: Service Interface dan Service Implementation.
tidak perlu memperdulikan bagaimana sebuah service diimplementasikan. Entah ditulis dengan bahasa Java atau COBOL, yang penting adalah bagaimana service tersebut dapat dipanggil dan memberikan informasi sesuai dengan Service Interface-nya. Karakteristik SOA yang terakhir adalah service tersebut harus business oriented. Dalam arti, setiap service yang didiinisikan harus melakukan suatu aktiitas bisnis tertentu, misalkan Customer Lookup, Fund Transfer, Check Inventory, dan sebagainya. Tidak dapat dipungkiri pula bahwa keberhasilan SOA belakangan ini ikut dimotori oleh tingginya penerimaan teknologi web services di kalangan pengembang aplikasi. Walaupun ide tentang SOA telah ada sebelum web services dilahirkan, web services dan SOA saat ini telah menjadi suatu si-nergi dan bahkan beberapa kalangan menganggap dengan menggunakan web services maka ia telah menerapkan SOA.
SOA adalah solusi yang dapat digunakan untuk efektifitas dalam pengembangan system.
SOA ( Service Oriented Architecture) adalah Arsitektur yang dibangun dengan berorientasi kepada service
Dengan kata lain,SOA adalah sebuah arsitektur kerangka kerja berbasis standar terbuka yang memungkinkan perusahaan-perusahaan untuk saling mengintegrasikan data yang sebelumnya hanya tersimpan rapat di markas para pelanggan, mitra, atau pemasok.Dengan kata lain,SOA merupakan arsitektur yang mendukung integrasi bisnis sebagai layanan yang terhubung dan menjadi jalan menuju inovasi.(SOA juga menjadi strategi bisnis berbasis teknologi dan hasil evolusi untuk mengintegrasi berbagai sumber informasi dari sumber kode atau platform yang berbeda-beda)
Tantangan Perusahaan
Dalam bisnis perusahaan akan selalu mendapatkan tantangan, yang datang dari permintaan pelanggan dan persaingan pasar. Hal ini menuntut perusahaan agar secara cepat merespon dengan membuat inovasi. Namun inovasi ini terbentur dengan teknologi yang sedang berjalan di perusahaan. Hal ini mengakibatkan cost yang besar ketika akan melakukan inovasi. Hal inilah yang akhirnya membatasi perusahaan dalam berinovasi. Dilain pihak tantangan itu tidak akan berhenti. Pelanggan bisa saja tidak loyal dan pesaing melakukan invoasi yang lebih canggih.
Menjawab tantangan
Ketika kita berpikir dengan arsitektur tradisional, tentunya akan sulit dan butuh effort yang besar untuk berinovasi. Bisnis proses yang terlanjur berjalan dengan aplikasi-aplikasi yang ada. Ternyata mempunyai platform dan tempat yang berbeda. Dengan SOA hal ini dapat dipecahkan. Bisnis proses dipecah kedalam service-service. Service adalah bagian dari bisnis proses yang kumpulan fungsi, prosedur atau proses yang memberikan respon jika diminta.Service ini dapat saling berkomunikasi walaupun berbeda platform.
Karakteristik SOA
Seperti yang dideinisikan diatas,SOA adalah suatu cara perancangan aplikasi dengan menggunakan komponen-komponen atau pelayanan yang sudah ada.Dengan kata lain, 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.
Misalnya sebuah aplikasi core banking menyediakan sebuah service Fund Transfer, maka aplikasi-aplikasi banking lainnya seperti treasury, payment gateway, ATM switching dan sebagainya dapat memanggil service Fund Transfer tersebut tanpa perlu memusingkan di mana Fund Transfer tersebut berada di dalam jaringan dan teknik pemanggilan yang harus digunakan.Hal ini kontras dengan pendekatan tight coupling di mana dalam hal ini setiap aplikasi perbankan di atas masing-masing harus mempunyai fungsi Fund Transfer di dalamnya sehingga akan menyulitkan dan membutuhkan biaya/resource besar jika perlu merubah logic dari Fund Transfer ke requirement bisnis yang baru di dalam setiap aplikasinya. Karakteristik lainnya adalah service dalam SOA disusun atas 2 hal: Service Interface dan Service Implementation.
tidak perlu memperdulikan bagaimana sebuah service diimplementasikan. Entah ditulis dengan bahasa Java atau COBOL, yang penting adalah bagaimana service tersebut dapat dipanggil dan memberikan informasi sesuai dengan Service Interface-nya. Karakteristik SOA yang terakhir adalah service tersebut harus business oriented. Dalam arti, setiap service yang didiinisikan harus melakukan suatu aktiitas bisnis tertentu, misalkan Customer Lookup, Fund Transfer, Check Inventory, dan sebagainya. Tidak dapat dipungkiri pula bahwa keberhasilan SOA belakangan ini ikut dimotori oleh tingginya penerimaan teknologi web services di kalangan pengembang aplikasi. Walaupun ide tentang SOA telah ada sebelum web services dilahirkan, web services dan SOA saat ini telah menjadi suatu si-nergi dan bahkan beberapa kalangan menganggap dengan menggunakan web services maka ia telah menerapkan SOA.
Web Service
Web service adalah aplikasi sekumpulan data (database), perangkat lunak (software) atau bagian dari perangkat lunak yang dapat diakses secara remote oleh berbagai piranti dengan sebuah perantara tertentu. Secara umum,web service dapat diidentifikasikan dengan menggunakan URL seperti hanya web pada umumnya. Namun yang membedakan web service dengan web pada umumnya adalah interaksi yang diberikan oleh web service. Berbeda dengan URL web pada umumnya, URL web service hanya menggandung kumpulan informasi, perintah, konfigurasi atau sintaks yang berguna membangun sebuah fungsi-fungsi tertentu dari aplikasi.
Web service dapat diartikan juga sebuah metode pertukaran data, tanpa memperhatikan dimana sebuahdatabase ditanamkan, dibuat dalam bahasa apa sebuah aplikasi yang mengkonsumsi data, dan di platform apa sebuah data itu dikonsumsi. Web service mampu menunjang interoperabilitas. Sehingga web service mampu menjadi sebuah jembatan penghubung antara berbagai sistem yang ada.
Definisi lain : Web service adalah sistem software yang dirancang untuk mendukung interopabilitas mesin-ke-mesin yang dapat berinteraksi melalui jaringan. Web service memiliki antarmuka yang dijelaskan dalam format mesin-processable (khusus WSDL). Sistem lain berinteraksi dengan Web service dalam cara ditentukan oleh deskripsi dengan menggunakan pesan SOAP, biasanya disampaikan menggunakan HTTP dengan serialisasi XML dalam hubungannya dengan Web lainnya yang terkait standar.
Dalam pengertian yang sederhana , XML Web Services dapat di definisikan sebagai aplikasi yang diakses oleh aplikasi yang lain. Mungkin orang berpendapat itu semacam web site, tetapi itu bukan demikian.
Ada perbedaan – perbedaan yang membedakan dengan web site.
Perbedaan tersebut dapat dilihat dibawah ini :
-WEB SITE
WEB SERVICES
Web service dapat diartikan juga sebuah metode pertukaran data, tanpa memperhatikan dimana sebuahdatabase ditanamkan, dibuat dalam bahasa apa sebuah aplikasi yang mengkonsumsi data, dan di platform apa sebuah data itu dikonsumsi. Web service mampu menunjang interoperabilitas. Sehingga web service mampu menjadi sebuah jembatan penghubung antara berbagai sistem yang ada.
Definisi lain : Web service adalah sistem software yang dirancang untuk mendukung interopabilitas mesin-ke-mesin yang dapat berinteraksi melalui jaringan. Web service memiliki antarmuka yang dijelaskan dalam format mesin-processable (khusus WSDL). Sistem lain berinteraksi dengan Web service dalam cara ditentukan oleh deskripsi dengan menggunakan pesan SOAP, biasanya disampaikan menggunakan HTTP dengan serialisasi XML dalam hubungannya dengan Web lainnya yang terkait standar.
Dalam pengertian yang sederhana , XML Web Services dapat di definisikan sebagai aplikasi yang diakses oleh aplikasi yang lain. Mungkin orang berpendapat itu semacam web site, tetapi itu bukan demikian.
Ada perbedaan – perbedaan yang membedakan dengan web site.
Perbedaan tersebut dapat dilihat dibawah ini :
-WEB SITE
- Memiliki web interface
- Dibuat untuk ber interaksi langsung dengan user
- Dibuat untuk bekerja pada web browser.
WEB SERVICES
- Tidak memiliki interface yang bagus
- Dibuat untuk ber interaksi langsung dengan applikasi yang lain baik beda OS / Konsep sekalipun.
- Dibuat untuk bekerja pada semua tipe client applikasi / perangkat device
Beberapa karakteristik dari web service adalah:
- Message-based
- Standards-based
- Programming language independent
- Platform-neutral
Gambar 1. Proses Umum Web Service
Selasa, 10 Februari 2015
SEO
SEO (Search Engine
Optimization)
SEO atau kepanjangan dari (Search Engine Optimization)
adalah suatu cara atau teknik untuk membuat situs atau blog kita berada pada
halaman/posisi satu di mesin pencarian (search engine) seperti Google, Bing,
dan Yahoo.
Pengertian dari SEO juga sangat luas tetapi semuanya
mencakup hal yang sama yaitu mengoptimisasi suatu halaman website/blog agar
berada pada halaman/posisi satu di search engine dengan kata kunci yang
ditarget
Keuntungan Melakukan SEO
Banyak sekali keuntungan dari melakukan SEO yang tidak
bisa saya sebutkan satu persatu, diantaranya yaitu :
1# Mendatangkan Traffic yang Banyak
Kita semua pasti tahu jika situs atau blog berada pada halaman satu Search Engine pasti akan mendatangkan pengunjung (Traffic) yang sangat besar, tergantung pada keyword yang kita target dan besar kecilnya data hasil pencarian dari Google Planner.
2# Meningkatkan Penjualan
Jika suatu situs menjual suatu produk atau barang seperti lazada.co.id yang menjual aneka barang seperti laptop atau lainnya, maka jika ada orang mencari di google dengan keyword “jual laptop murah” kemudian situs tersebut ranking 1, maka sudah 95% lazada akan mendapatkan penjualan dari hasil SEO tersebut.
Mudah saja untuk keuntungan SEO yang satu ini, jika posisi suatu situs lebih tinggi maka secara otomatis daya saingnya pun akan lebih tinggi. Masih banyak lagi keuntungan dari SEO ini yang tidak saya sebutkan semua, karena saya yakin dengan 3 hal diatas saja pasti anda sudah mengerti mengenai keuntungan SEO.
Wilayah SEO tidak hanya meliputi optimasi halaman website;
dengan kata lain targetnya tidak hanya bersifat umum, tetapi juga membidik
pencarian spesifik seperti : pencarian gambr,pencarian video, pencarian local,
pencarian berita, pencarian akaemik, dan lain sebagainya.
Sebagai bagian dari strategi internet marketing, SEO
mempertimbangkan beberapa hal agar upaya optimasi tepat, diantaranya adalah:
bagaimana search engine bekerja; kueri apa saja yang digunakan (apa yang dicari
user SE, keyword analysis); dan memahami factor-faktor ranking (algoritma).
Strategi SEO meliputi banyak hal, misalnya adalah dengan memperhatikan standar
website yang baik (Onpage SEO), meningkatkan jumlah dan kualitas backlink,
strategi dan analisis konten.
Keamanan Data :
Terhadap kebutuhan untuk melakukan transaksi atau komunikasi secara aman pada jaringan internet, teknik-teknik terus di kembangkan pada semua lapisan arsitektur protokol yang di gunakan. Khususnya arsitektur protokol TCP/IP.
Arsitektur keamanan untuk XML (XML security), di kembangkan
untuk menjawab kebutuhan terssebut. Dan juga dapat menyediakan keamanan yang
fleksibel tidak hanya untuk dokumen XML, tetapi juga untuk semua obyek yang
dapat di tangani melalui sebuah URL.
Sebuah arsitektur keamanan mendasari dirinya pada beberapa layanan keamanan yaitu :
1. Kerahasiaan (confidentiality)
2. Integritas (integrity)
3. Authentication
4. Nonrepudiation
Sebuah arsitektur keamanan mendasari dirinya pada beberapa layanan keamanan yaitu :
1. Kerahasiaan (confidentiality)
2. Integritas (integrity)
3. Authentication
4. Nonrepudiation
Berikut ini standar-standar inti dari XML security :
1. XML digital signature untuk tanda tangan dan integritas.
2. XML encryption untuk kerahasiaan.
1. XML digital signature untuk tanda tangan dan integritas.
2. XML encryption untuk kerahasiaan.
Internet of things
Internet of Things merupakan istilah yang merujuk pada
terhubungnya berbagai perangkat ke internet, bukan hanya komputer atau
smartphone tapi juga perangkat sehari-hari seperti kulkas, mesin cuci, sepatu,
jam tangan dan benda-benda lainnya.
Sedangkan definisi Cisco untuk Internet of Things merujuk
pada koneksi intelijen dari perangkat cerdas, yang bisa mendorong efisiensi,
pertumbuhan bisnis dan kualitas hidup.
Selasa, 27 Januari 2015
Smart CIty
Perkembangan teknologi yang semakin pintar membuat konsep smart city tak hanya diterapkan pada berbagai perangkat, tetapi pada sistem dan tatanan. Salah satunya yang mencuat belakangan ini yaitu konsep dari Smart City. Konsep yang disebut dengan kota pintar ini adalah konsep yang mengetengahkan sebuah tatanan kota cerdas yang bisa berperan dalam memudahkan masyarakat untuk memudahkan masyartakat mendapatkan informasi secara cepat dan tepat.
Indikator Smart City
Konsep smart city sendiri pertama kali dikemukakan oleh IBM, perusahaan komputer ternama Amerika. Perusahaan tersebut memperkenalkan konsep smart city untuk meningkatkan kualitas hidup masyarakat perkotaan. Untuk menyukseskan konsep smart city ini, IBM menelurkan enam indikator yang harus dicapai. Keenam indikator tersebut adalah masyarakat penghuni kota, lingkunan, prasarana, ekonomi, mobilitas, serta konsep smart.
Konsep smart city ini kini menjadi impian banyak kota besar di Indonesia. Konsep in dianggap sebagai solusi dalam mengatasi kemacetan yang merayap, sampah yang berserakan, ataupun sebagai solusi dalam mengatasi kemacetan yang merayap, sampah yang berserakan, ataupun pemantau kondisi lingkungan di suatu tempat. Perjalanan menuju konsep smart city ini juga sudah mulai kreatif di bidang teknologi, merupakan langkah awal yang baik menuju kota pintar. Setidaknya, hal tersebut dapat dilihat di kota semacam Jakarta, Bandung, Yogyakarta, Surabaya, dan Makassar.
Kota cerdas di beberapa negara tentu sudah matang dalam penanganan masalah banjir, kemacetan, ledakan penduduk, air bersih. Ada tahapan pembangunan yang jelas, kemudian diterjemahkan sebagai konsep pembangunan, sehingga tahapan pembangunan tata kota di negara maju berlangsung secara berkelanjutan. Kemapanan ini perlu dilanjutkan dalam sebuah sistem agar tidak berhenti pada periode tertentu saja, maka lahirlah konsep smart city/kota cerdas yang menjadi konsep besar dari Sustainable city.
Jika ada enam indikator untuk membuat kesuksesan sebuah smart city, maka hal tersebut belum lengkap jika tidak ada elemen pendukung. Menurut Suhono, smart city aka terbang dengan dukungan lima teknologi pintar seperti sensor pintar, komunikasi dari suatu mesin msein lain, komputasi awan, media sosial, dan teknologi Geographical InformationSystem atau GIS.
Kelima teknologi ini cukup penting meski Suhono mengakui komunikasi mesin dengan mesin lain (machine to machine) merupkan hal yang masih belum bisa diterapkan di masa sekarang. Namun, keempat unsur lain masih memungkinkan. Setidaknya agar masyarakat bisa mendapatkan informasi dan akses lebih cepat
Indikator Smart City
Konsep smart city sendiri pertama kali dikemukakan oleh IBM, perusahaan komputer ternama Amerika. Perusahaan tersebut memperkenalkan konsep smart city untuk meningkatkan kualitas hidup masyarakat perkotaan. Untuk menyukseskan konsep smart city ini, IBM menelurkan enam indikator yang harus dicapai. Keenam indikator tersebut adalah masyarakat penghuni kota, lingkunan, prasarana, ekonomi, mobilitas, serta konsep smart.
Konsep smart city ini kini menjadi impian banyak kota besar di Indonesia. Konsep in dianggap sebagai solusi dalam mengatasi kemacetan yang merayap, sampah yang berserakan, ataupun sebagai solusi dalam mengatasi kemacetan yang merayap, sampah yang berserakan, ataupun pemantau kondisi lingkungan di suatu tempat. Perjalanan menuju konsep smart city ini juga sudah mulai kreatif di bidang teknologi, merupakan langkah awal yang baik menuju kota pintar. Setidaknya, hal tersebut dapat dilihat di kota semacam Jakarta, Bandung, Yogyakarta, Surabaya, dan Makassar.
Kota cerdas di beberapa negara tentu sudah matang dalam penanganan masalah banjir, kemacetan, ledakan penduduk, air bersih. Ada tahapan pembangunan yang jelas, kemudian diterjemahkan sebagai konsep pembangunan, sehingga tahapan pembangunan tata kota di negara maju berlangsung secara berkelanjutan. Kemapanan ini perlu dilanjutkan dalam sebuah sistem agar tidak berhenti pada periode tertentu saja, maka lahirlah konsep smart city/kota cerdas yang menjadi konsep besar dari Sustainable city.
Jika ada enam indikator untuk membuat kesuksesan sebuah smart city, maka hal tersebut belum lengkap jika tidak ada elemen pendukung. Menurut Suhono, smart city aka terbang dengan dukungan lima teknologi pintar seperti sensor pintar, komunikasi dari suatu mesin msein lain, komputasi awan, media sosial, dan teknologi Geographical InformationSystem atau GIS.
Kelima teknologi ini cukup penting meski Suhono mengakui komunikasi mesin dengan mesin lain (machine to machine) merupkan hal yang masih belum bisa diterapkan di masa sekarang. Namun, keempat unsur lain masih memungkinkan. Setidaknya agar masyarakat bisa mendapatkan informasi dan akses lebih cepat
Minggu, 25 Januari 2015
Pengertian Web Service
Apa yang dimaksud Web Service ?
Web service adalah sebuah software aplikasi yang tidak terpengaruh oleh platform, ia akan menyediakan method-method yang dapat diakses oleh network. Ia juga akan menggunakan XML untuk pertukaran data, khususnya pada dua entities bisnis yang berbeda.
Web service menurut W3.org mendefinisikan web service sebagai “sebuah software aplikasi yang dapat teridentifikasi oleh URI dan memiliki interface yang didefiniskan, dideskripsikan, dan dimengerti oleh XML dan juga mendukung interaksi langsung dengan software aplikasi yang lain dengan menggunakan message berbasis XML melalui protokol internet”.
Web service dapat diartikan juga sebuah metode pertukaran data, tanpa memperhatikan dimana sebuah database ditanamkan, dibuat dalam bahasa apa sebuag aplikasi yang mengkonsumsi data, dan di platform apa sebuah data itu dikonsumsi. Web service mampu menunjan interoperabilitas. Sehingga web service mampu menjadi sebuag jembatan penghubung antara berbagai sistem yang ada.
Perbedaan Web Service dan Web Site
Web pada umumnya digunakan untuk melakukan respon dan request yang dilakukan antara client dan server. Sebagai contoh, seorang pengguna layanan web tertentu mengetikan alamat url web untuk membentuk sebuahrequest. Request akan sampai pada server, diolah dan kemudian disajikan dalam bentuk sebuah respon. Dengan singkat kata terjadilah hubungan client-server secara sederhana.
Sedangkan pada web service hubungan antara client dan server tidak terjadi secara langsung. Hubungan antaraclient dan server dijembatani oleh file web service dalam format tertentu. Sehingga akses terhadap databaseakan ditanggani tidak secara langsung oleh server, melainkan melalui perantara yang disebut sebagai web service. Peran dari web service ini akan mempermudah distribusi sekaligus integrasi database yang tersebar di beberapa server sekaligus.
WEB SITE :
1.Memiliki web interface
2.Dibuat untuk ber interaksi langsung dengan user
3.Dibuat untuk bekerja pada web browser.
WEB SERVICES :
1.Tidak memiliki interface yang bagus
2.Dibuat untuk ber interaksi langsung dengan applikasi yang lain baik beda OS / Konsep sekalipun.
3.Dibuat untuk bekerja pada semua tipe client applikasi / perangkat device
Beberapa karakteristik dari web service adalah:
1.Message-based
2.Standards-based
3.Programming language independent
4.Platform-neutral
Contoh kasus Web service :
Contoh implementasi web service seperti system login pada beberapa web site yang dapat menggunakan akun facebook twitter dan yahoo untuk sinkronsasi. Contoh lain adalah ketika kita hendak berkomentar detik.com kita dapat menggunakan akun facebook kita sebagai identitas komentar.
Penjelasan :
Ini dapat terjadi karena facebook,twitter, yahoo dan lain lain memiliki suatu web service yang memungkinkan system lain dapat menggunakan akun mereka untuk login. Ide dasaranya adalah ketika ada dua system yaitu A dan B secara masin-masing berdiri secara mandiri. Pada system a.com disana terdapat database username dan pasword. Pada system b.com terdapat script form yang nantinya memanggil username dan password dari system a.com. Dalam proses login, script pada login form tersebut mengirim parameter username dan password ke sistem a.com untuk dicek validitasnya melalui GET Request. Selanjutnya di dalam sistem a.com terdapat script untuk membaca username dan password yang berasal dari GET request dari sistem B untuk diproses validitasnya. Sebagai responnya, sistem A akan mengenerate sebuah dokumen XML yang di dalamnya terdapat sebuah data misalkan berbentuk TRUE atau FALSE. Bernilai TRUE jika username dan password tersebut valid, dan FALSE jika tidak valid. Selanjutnya di sistem B respon tersebut dibaca, jika data yang dibaca bernilai TRUE maka proses login berhasil dan jika FALSE maka login gagal.
Web service adalah sebuah software aplikasi yang tidak terpengaruh oleh platform, ia akan menyediakan method-method yang dapat diakses oleh network. Ia juga akan menggunakan XML untuk pertukaran data, khususnya pada dua entities bisnis yang berbeda.
Web service menurut W3.org mendefinisikan web service sebagai “sebuah software aplikasi yang dapat teridentifikasi oleh URI dan memiliki interface yang didefiniskan, dideskripsikan, dan dimengerti oleh XML dan juga mendukung interaksi langsung dengan software aplikasi yang lain dengan menggunakan message berbasis XML melalui protokol internet”.
Web service dapat diartikan juga sebuah metode pertukaran data, tanpa memperhatikan dimana sebuah database ditanamkan, dibuat dalam bahasa apa sebuag aplikasi yang mengkonsumsi data, dan di platform apa sebuah data itu dikonsumsi. Web service mampu menunjan interoperabilitas. Sehingga web service mampu menjadi sebuag jembatan penghubung antara berbagai sistem yang ada.
Perbedaan Web Service dan Web Site
Web pada umumnya digunakan untuk melakukan respon dan request yang dilakukan antara client dan server. Sebagai contoh, seorang pengguna layanan web tertentu mengetikan alamat url web untuk membentuk sebuahrequest. Request akan sampai pada server, diolah dan kemudian disajikan dalam bentuk sebuah respon. Dengan singkat kata terjadilah hubungan client-server secara sederhana.
Sedangkan pada web service hubungan antara client dan server tidak terjadi secara langsung. Hubungan antaraclient dan server dijembatani oleh file web service dalam format tertentu. Sehingga akses terhadap databaseakan ditanggani tidak secara langsung oleh server, melainkan melalui perantara yang disebut sebagai web service. Peran dari web service ini akan mempermudah distribusi sekaligus integrasi database yang tersebar di beberapa server sekaligus.
WEB SITE :
1.Memiliki web interface
2.Dibuat untuk ber interaksi langsung dengan user
3.Dibuat untuk bekerja pada web browser.
WEB SERVICES :
1.Tidak memiliki interface yang bagus
2.Dibuat untuk ber interaksi langsung dengan applikasi yang lain baik beda OS / Konsep sekalipun.
3.Dibuat untuk bekerja pada semua tipe client applikasi / perangkat device
Beberapa karakteristik dari web service adalah:
1.Message-based
2.Standards-based
3.Programming language independent
4.Platform-neutral
Contoh kasus Web service :
Contoh implementasi web service seperti system login pada beberapa web site yang dapat menggunakan akun facebook twitter dan yahoo untuk sinkronsasi. Contoh lain adalah ketika kita hendak berkomentar detik.com kita dapat menggunakan akun facebook kita sebagai identitas komentar.
Penjelasan :
Ini dapat terjadi karena facebook,twitter, yahoo dan lain lain memiliki suatu web service yang memungkinkan system lain dapat menggunakan akun mereka untuk login. Ide dasaranya adalah ketika ada dua system yaitu A dan B secara masin-masing berdiri secara mandiri. Pada system a.com disana terdapat database username dan pasword. Pada system b.com terdapat script form yang nantinya memanggil username dan password dari system a.com. Dalam proses login, script pada login form tersebut mengirim parameter username dan password ke sistem a.com untuk dicek validitasnya melalui GET Request. Selanjutnya di dalam sistem a.com terdapat script untuk membaca username dan password yang berasal dari GET request dari sistem B untuk diproses validitasnya. Sebagai responnya, sistem A akan mengenerate sebuah dokumen XML yang di dalamnya terdapat sebuah data misalkan berbentuk TRUE atau FALSE. Bernilai TRUE jika username dan password tersebut valid, dan FALSE jika tidak valid. Selanjutnya di sistem B respon tersebut dibaca, jika data yang dibaca bernilai TRUE maka proses login berhasil dan jika FALSE maka login gagal.
Langganan:
Postingan (Atom)