Trong lập trình, dùng session và cookie dường như đều có thể sử dụng làm lưu trữ phiên đăng nhập, nhưng Session tỏ ra nhiều điểm yếu hơn cookie

Want create site? Find Free WordPress Themes and plugins.

Một vài bạn học lập trình đang hỏi nhau trên diễn đàn: Làm cách nào mà khi người ta đóng trình duyệt thì User tự động logged out ? Ừ, cách hay ho và đơn giản nhất chính là lưu User vào Session. Và khi trình duyệt đóng thì cũng là lúc User bị logged out. Tuy nhiên đây là cách củ chuối nhất.

Khi lưu User vào cookie của trình duyệt, chúng sẽ được gửi dọc theo mọi request của trình duyệt tới server. Và server căn cứ vào đó để biết ông này là ai. Trong khi session lại được khởi tạo và lưu trên Server.

Về mặt lý thuyết thì bình thường như cân đường. Nhưng về mặt thực tế thì, mỗi khi có request mới tới, server sẽ tạo một file session trên ổ đĩa của hệ thống. Mỗi một request khác nó sẽ đọc file trên ổ đĩa đó. Nói chung là vẫn bình thường nếu bạn không sở hữu một website có hàng ngàn người truy cập cùng lúc.

Tôi đã từng thí nghiệm cách lưu giỏ hàng lên session trên Server, tuy nhiên chỉ vài lần request là server nghẽn mạch. Do CPU load cao quá, trong khi ổ đĩa bị bận rộn liên tục do cứ người dùng vào nó lại ghi file ra ổ đĩa.

Nếu các bạn là chuyên gia lập trình thì việc lưu Session lên RAM là quá bình thường, load ngon. Nhưng nếu VPS có 512mb RAM ? Bạn chỉ có nước bỏ session đi mà thôi !

Cookie vẫn là cái tốt nhất để lưu thông tin người dùng như hiện nay. Có nhiều giải pháp cho việc này nhưng cookie hiện vẫn đang sống tốt.

Session được lưu trên Server, còn cookie được lưu trên trình duyệt của người dùng. Hiện nay hầu hết các CMS và website lưu thông tin đăng nhập trên Cookie thay vì Session cho dù Session có vẻ bảo mật hơn.

Một số bạn có ý kiến rằng, sợ người dùng quên không tắt trình duyệt và ai đó sẽ sử dụng. Khi đó nếu lưu trên Session thì người dùng chỉ cần tắt tab đó đi là xong. Tuy nhiên, chưa nói tới giải pháp, chỉ cần nói tới chuyện người dùng quên trình duyệt là vứt đi rồi !

Một website dù tốt tới mấy thì cũng chỉ lo cho người dùng được tới tầm nào đó thôi. Chứ việc quên tài khoản ở đó mà để người khác sử dụng thì khác nào cảnh sát bắt người dùng khâu túi vì sợ người dùng rơi tiền ? Không có cái chuyện ấy. Họ quên thì mặc mẹ nhà họ. Nó giống như việc các bạn quên ví ở quán nét ấy mà. Quán nét nào lo cho bạn tới mức cam kết sẽ tìm ví cho tất thảy mọi người đãng trí ?

Chúc các bạn thành công !

Did you find apk for android? You can find new Free Android Games and apps.

Tôi là Jam, thâm niên 7 năm thiết kế website và làm seo, nếu các bạn thấy bài viết hay thì hãy chia sẻ cho những người khác cùng tham khảo, còn nếu muốn thiết kế website hoặc sửa web hay đặt một plugin có chức năng đặc biệt, hãy liên hệ ngay tới Jam ( thông tin ở chân trang )

Bài viết liên quan

3 thoughts on “Tại sao không nên sử dụng Session để lưu đăng nhập ?”

Trả lời

Thư điện tử của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Lưu ý: Không đăng thông tin cá nhân của bạn như email hay số điện thoại để không bị quấy rầy, tham khảo thêm quy định khi comment !