2010-05-03 12 views
5

Web sunucusu ve veritabanı tarafından barındırılan bir web sunucusu (yerde) ve Amazon Web Services EC2 üzerinde çalışan bir sunucu kullanan bir web uygulaması geliştirdim. Her iki sunucu da bir kullanıcı tarafından bir oturum sırasında kullanılabilir ve her ikisi de bir kullanıcı hakkındaki bazı oturum bilgilerini bilmelidir. Her iki sunucu tarafından ihtiyaç duyulan bilgileri POST istemiyorum çünkü tarayıcılar/Firebug vb. Tarafından görülebilmesini istemiyorum. Bu yüzden sunucu verilerinde kalıcı olmak için oturum verilerime ihtiyacım var. Ve bunun en iyi seçeneğin, bir oturumda değil, veritabanında ihtiyaç duyduğum verilerin tümünü/bir kısmını saklamak olduğu anlamına geldiğini düşünüyorum. Yapılacak en kolay şey, oturumları tutmak, ancak sunucular arasında session_id POST yapmak ve bunu veritabanında 'user_session_data' tablosundan ihtiyaç duyduğum verileri aramak için anahtar olarak kullanmak gibi görünüyor.PHP oturum verilerini bir veritabanında depolamak için en iyi yöntemler nelerdir?

Tony Marston'un "Saving PHP Session Data to a database" makalesine baktım - bunu kullanmalı mıyım yoksa ihtiyaç duyduğum oturum verilerini ve session_id anahtar yeterliğini içeren bir tablo mu kullanmalıyım? Veritabanında ihtiyaç duyduğum verileri saklamak için kendi masamı oluşturmamın ve dezavantajlı yöntemler dizisi ne olurdu?

cevap

2

EC2 ile veritabanı sunucusu arasında aktarım hızı ve yanıt süreleri yeterliyse, anlatıldığı şekilde oturum verilerinin depolanması ve kullanıcıyı farklı bir sunucuya aktarırken oturum_id'in geçirilmesiyle ilgili bir sorun görmüyorum.

- bir veritabanında oturum verilerini saklamak

oldukça yaygın bir uygulamadır. "Verilerin bir oturumda saklanması", herhangi bir kurulum gerektirmediği için gerçek bir depolama yöntemi anlamına gelmez - diskteki dosyaları oluşturmak sadece PHP'nin varsayılan ayarıdır.

İlgili konular