Rabu, 31 Maret 2010

Coldfusion dan kompetitor

Produk web application server yang ada saat ini cukup beragam. Sebagai contoh: Zope, HoTMetal Application Server, Oracle Application Server, Netscape Application Server, Lotus Domino Application Server, Websphere Application Server, Inprise Application Server dan masih banyak lagi. Namun dibandingkan dengan aplikasi-aplikasi server lainnya tersebut, ColdFusion jauh lebih unggul baik dari segi penjualan maupun dari segi jumlah jumlah pemakai atau pengembangnya (DEV2000).

Dengan melihat kenyataan tersebut, pada artikel ini akan diperbandingkan secara kasar antara ColdFusion dengan bahasa pemrograman web lain yang banyak digunakan pada saat ini, yaitu Perl, PHP dan ASP.

1. Perl
Perl merupakan salah satu bahasa pemrograman web yang banyak digunakan. Perl memiliki fitur-fitur yang mendukung pemrograman web, seperti pustaka koneksi basis data, pustaka koneksi low-level socket, dan kemampuan pemroses teks yang sangat baik.

ColdFusion menyediakan seluruh fasilitas yang diberikan oleh Perl, meskipun untuk beberapa fitur low-level socket, ColdFusion menyediakannya dengan memberikan fasilitas untuk berkomunikasi dengan obyek-obyek lain.

Kelemahan utama yang ada pada Perl adalah Perl tidak didesain dengan baik untuk penciptaan halaman-halaman web (ASH2000). Perl harus melakukan perubahan pada kode sumber HTML yang telah dibuat, yang akhirnya menyebabkan aplikasi web yang dikembangkan dengan Perl menjadi kurang scalable. Selain itu Perl menggunakan CGI sebagai metode utama untuk berkomunikasi dengan web server yang banyak menghabiskan resources dan memakan waktu lebih lama untuk melakukan proses (BAL1996).

Sementara itu ColdFusion seperti telah disebutkan diatas, dapat langsung disisipkan pada halaman web yang telah ada. ColdFusion melakukan komunikasi dengan web server melalui berbagai metoda, yaitu: ISAPI, NSAPI, WSAPI, Apache Module dan CGI yang membuat performansi ColdFusion lebih baik.

2. PHP
PHP banyak dimanfaatkan oleh para pengembang web karena sifatnya yang open source dan dapat diimplementasikan pada banyak sistem operasi.

Allaire sebagai pencipta ColdFusion telah berusaha mengakomodir sifat open source dengan menyediakan fasilitas-fasilitas yang menunjang hal tersebut. Namun karena Allaire adalah perusahaan yang tentu saja berusaha mencari laba, maka sifat open source ini dibatasi dengan tidak memberikan kode sumber ColdFusion. Selain itu pengembang yang ingin menggunakan ColdFusion pun diharuskan membelinya dengan harga yang cukup tinggi. Untuk keperluan sederhana, Allaire memberikan aplikasi ColdFusion Express secara gratis namun dengan fasilitas terbatas. Mengenai kemampuan porting pada berbagai sistem operasi, ColdFusion juga menyediakan fasilitas tersebut. Saat ini ColdFusion dapat diimplementasikan pada sistem operasi Win32, Solaris UNIX, LINUX dan HP-UX.

PHP saat ini memiliki masalah besar disisi performansi. Dalam dua rilis terakhir, PHP menunjukkan peningkatan performansi yang cukup tinggi, namun tetap saja masih lebih buruk dibandingkan dengan para kompetitornya (ASH2000). Selain itu, masalah yang lebih besar adalah mengenai portabilitas basis data. PHP menggunakan kode-kode yang berbeda untuk setiap basis data yang digunakan.

Berikut adalah contoh potongan kode untuk melakukan interaksi dengan basis data dalam PHP:

PutEnv(”ORACLE_HOME=/export/home/oracle/app/oracle/product/8.1.5″);
PutEnv(”ORACLE_SID=ecom”);
$conn=ora_logon(”aspri_xxxxxx@ecom”,?aspri_xxxxxx”);
$query=”select * from t_todo”;
if(ora_parse($cursor,$query)) ora_exec($cursor);
ora_close($cursor);
ora_logoff($connection);

(catatan: kode berhuruf tebal adalah kode khusus untuk jenis basis data yang digunakan)

Hal ini tentu saja sangat buruk pagi pengembang aplikasi enterpise yang menggunakan berbagai basis data. Masalah ini menyebabkan aplikasi web yang dibangun oleh PHP akhirnya menjadi kurang portable dan scalable.

ColdFusion disisi lain memberikan performansi yang lebih baik dibandingkan PHP. Selain itu ColdFusion dengan menggunakan teknologi ODBC dan OLEDB yang memungkinkan porting basis data dilakukan dengan mudah, yang pada akhirnya menyebabkan aplikasi-aplikasi yang dibangun dengan ColdFusion lebih portable, scalable dan sangat tepat untuk enterprise system.

Berikut adalah contoh potongan kode untuk melakukan interaksi basis data dalam ColdFusion:




username=?#application.strDBUser#?
password=?#application.strDBPass#?
datasource=?#application.strDSN?>
select * from t_todo


(catatan: kode berhuruf tebal adalah untuk menampung setting database yang digunakan, dan hanya perlu diset satu kali untuk seluruh aplikasi)

3. ASP
ASP menjadi salah satu pilihan utama pengembang aplikasi web berbasis Windows disebabkan oleh harganya yang gratis dan sudah merupakan paket dari web server Internet Information Service (IIS) yang merupakan web server standar dilingkungan Windows.
Selesai dah …………….
Lanjut ke aplikasi pembuatan webnyadah…… silakan simak bahasan selanjutnmya……….>>>>>>>>>

1. Type lisensi CF ada 3, Developer Edition, standart Edition dan Enterprise Edition.
Tiap lisensi memiliki dukungan atas data base yang berbeda. Pada Developer dan standart Edition tidak ada perbedaaan database yang bisa dipakai, hanya tersedia untuk :
a. MS Access (dengan MDAC 2,6 atau lebih)
b. MYSQL mulai 3.23.47
c. MSQL 7.0
d. PosgreeSQL
e. SQLAnywhere
khusus d & e, drivernya tidak tersedia build in, tapi cari sendiri.

Sedangkan untuk Enterprise edition, selain database yang diatas tadi ditambah dengan :
a. ORACLE mulai 8.1 R3
b. SYBASE Adaptive Server
c. DB2 UDP
d. Informix Dynamic Server

2. Sisi lemahnya (menurut saya), rakus terhadap resource system, dengan minimal RAM 256 MB, itupun concurent conection harus saya batasi 6 koneksi. Pernah dites, dengan spesifikasi diatas, 6 conc. performa system menurun cukup signifikan. Tambah RAM menjadi 4 kali lipat, ganti Type Database, concurent connection bisa dinaikkan menjadi 20, itupun masih lumayan.

Fungsi unik CF (menurut saya lagi), dalam satu server, bisa dihubungkan dengan semua tipe database tadi tanpa ada masalah. Bisa kompak dengan apache, IIS, Netscape server, PHP, mySQL di dalam satu komputer. (3 web server , dengan 1 CF server dalam 1 komputer)
Adanya fasilitas internal search engine yang cukup lumayan sehingga hasil pencarian bisa dirangking.
Koneksi ke EJB, J2EE (walau hanya support untuk deploy) baik.

Apa lagi??? Kalau ketemu saya tuliskan lagi.

NB : Menurut saya diskusi dan tanggapan “agak sinis” dari Mas GOKU ada karena mas TAMBUNAN terlalu meng-anak emas-kan CF, tanpa membuat komparasi +/- dengan pesaing CF (PHP, ASP, dll)
————-

Tidak ada komentar:

Posting Komentar