Cookies vs Session
Ang HTTP ay stateless, na nangangahulugan na ang anumang data na nakaimbak ay masisira kapag natanggap ng kliyente ang page mula sa server at ang koneksyon ay sarado. Ang cookies at session ay dalawang solusyon para sa problemang ito. Ang cookie ay isang napakaliit na piraso ng impormasyon na iniimbak sa makina ng kliyente ng web site at ibinabalik sa server sa tuwing hihilingin ang isang pahina. Ang session ay isang paraan ng pag-iimbak ng impormasyon sa server kumpara sa machine ng kliyente.
Ano ang Cookies?
Ipinakilala ng Netscape ang konsepto ng cookies sa kanilang web browser ng Netscape Navigator. Ang cookie ay isang napakaliit na piraso ng impormasyon na iniimbak sa makina ng kliyente ng web site at ibinabalik sa server sa tuwing hihilingin ang isang pahina. Dahil ang cookies ay ibinabalik sa bawat oras, isang minimum na halaga ng data ang dapat na i-save upang makatipid ng bandwidth. Ang isang web site ay nagbabasa lamang ng cookie na isinulat nito, kaya nagbibigay ng isang secure na paraan ng pag-iimbak ng impormasyon sa iba't ibang mga pahina. Gayunpaman, ang cookies ay hindi nakatanggap ng magandang pangalan sa simula, dahil sa mga alingawngaw na nagsasabing nababasa ng cookies ang lahat ng impormasyon sa hard drive. Siyempre, ang maling kuru-kuro na ito ay nawala nang mapagtanto ng mga tao na ang cookies ay talagang hindi nakakapinsala, at ngayon ay lubos na tinatanggap ang mga ito. Ang cookies ay may tiyak na tagal ng buhay na tinukoy ng kanilang mga tagalikha. Sa pagtatapos nito, nag-expire ang isang cookie. Madalas na sinusubaybayan ng cookies ang impormasyon tulad ng kung gaano kadalas bumisita ang user, ano ang mga oras ng pagbisita, kung anong mga banner ang na-click, mga kagustuhan ng user, atbp. Karaniwang ginagamit ang cookies upang mag-imbak ng impormasyong kailangan para sa mas maikling panahon. Kung ang impormasyon tulad ng mga email address (na dapat itago sa mas mahabang panahon) ay kailangang maimbak, ang programmer ay kailangang gumamit ng database sa halip na cookies. Gayunpaman, kung maiimbak ang personal na impormasyon sa cookies, kailangang gamitin ang pag-encrypt upang mapabuti ang seguridad.
Ano ang Mga Session?
Ang Session ay isa pang paraan ng pag-iimbak ng impormasyon sa mga page. Ngunit ito ay ginagawa sa server-side. Ang session ay aktwal na gumagamit ng isang server-side at isang client-side na cookie upang mag-imbak ng data. Ngunit ang cookie sa panig ng kliyente ay nag-iimbak lamang ng isang sanggunian sa kaukulang data na nakaimbak sa server. Kapag binisita ng user ang web site, ang client side cookie (na may reference number) ay ipapadala sa server, at ginagamit ng server ang numerong ito upang i-load ang data ng user. Ang server-side cookie ay maaaring mag-imbak ng malaking halaga ng data. Dahil ang client-side na cookie ay nag-iimbak lamang ng reference number, ang bandwidth ay na-save nang husto. Dahil nakaimbak ang data ng session sa server, mas protektado ang mga ito.
Ano ang pagkakaiba ng Cookies at Sessions?
Bagaman ang cookies at session ay dalawang paraan upang mag-imbak ng impormasyon sa mga web page, mayroon silang pagkakaiba. Ang cookies ay nag-iimbak lamang ng client-side na cookies, habang ang mga session ay gumagamit ng parehong client-side at server-side na cookies. Ang mga session ay maaaring mag-imbak ng malaking halaga ng data kumpara sa cookies. Dahil iniimbak lang ng mga session ang reference number sa machine ng kliyente, mas mababa ang paggamit ng bandwidth kumpara sa paggamit ng cookies. Ang data ng session ay medyo mas secure, dahil ang cookies ay maaaring manipulahin ng user.