Saturday, June 04, 2005

Beda session dengan application

ini mungkin sudah pernah ditanyakan sebelumnya, tapi berhubung belum ada yang membahas, maka singkatnya perbedaannya adalah:

session itu "seolah" variabel local bagi server dari semua client. pada suatu situs, misalnya untuk login menggunakan session, itu cukup wajar, karena misalnya session("username") dan session ("password") pada client A, client B, client C dan seterusnya secara normal adalah berbeda!
misalnya setelah tombol submit ditekan oleh client A dahulu baru client B (untuk site yang sama) maka server akan menerima session untuk client A usernamenya "AAA" dan paswordnya "passAAA" dan setelahnya session untuk client B usernamenya "BBB" dan passwordnya "pasBBB"
session-session untuk Client A nilainya tetap session("username")="AAA" dan session("password") ="passAAA" tidak terpengaruh oleh isi session client B, dan demikian seterusnya untuk client selanjutnya session untuk client B tidak akan dipengaruhi session client C yang melakukan submit, dan seterusnya lebih jauh lagi...

Sedangkan application, itu seolah adalah variabel global dari server untuk semua client. Misalnya untuk situs lelang, katakanlah application("hargamobilkuno") Misalkan client A menawarkan $1000, maka nilai application("hargamobilkuno")="1000"
Begitu client B mengakses application tersebut, nilainya adalah "1000" bukan null atau undefined. Dan bila client B melakukan penawaran $1500, maka nilai menjadi berubah untuk application("hargamobilkuno")="1500" dan pada saat client A mengakses application("hargamobilkuno") nilainya sudah berubah menjadi "1500" begitu seterusnya. Bila ada client C melakukan perubahan pada application("hargamobilkuno") maka client A dan B akan mengetahui perubahan tersebut, demikian seterusnya...

Jadi kesimpulannya, session digunakan untuk menyimpan nilai yang butuh personalisasi client, dimana setiap client mempunyai nilai yang berbeda (meskipun mungkin juga kebetulan sama). update nilai session dari satu client tidak akan mempengaruhi session client yang lain.

sedangkan application digunakan untuk menyimpan nilai yang "dipublikasikan" di server, dimana update yang dilakukan satu client pada application tersebut berpengaruh pada client-client yang lainnya saat mengakses application tersebut

No comments: