Python'da yazılmış bir Veritabanı Uygulama Programlama Arabirimi oluşturmak ve SQLAlchemy'ı (veya bu tür bir görev için SQLAlchemy'ı kullanmanın iyi bir yol olmadığını söylemesi durumunda başka bir veritabanı bağlayıcısı) kullanmak istiyorum. . Kurulum, Linux veya BSD üzerinde çalışan bir MySQL sunucusudur ve bir Linux veya BSD makinesinde çalışan bir Python yazılımıdır (Yabancı veya yerel).Çok iş parçacıklı kullanımı SQLAlchemy
Temel olarak, ne yapmak istediğim her bağlantı için yeni bir iş parçacığı oluşturuyor ve her istek için yeni bir işlem (veya okudum gibi oturum açmak istiyorum) açmak istediğim halde protokol çok özel ve oldukça basit olurdu. Seansı vermem gerek. Şu anda karşı karşıya olduğum problem, başka bir oturumun aynı zamanda başka bir bağlantıdan meydana gelme olasılığının yüksek olmasıdır.
Buradaki sorum şu, bu durumla başa çıkmak için ne yapmalıyım?
- Kilitleme kullanmalıyım, bu nedenle yalnızca tek bir oturum aynı anda çalışabilir mi?
- Oturumlar gerçekten güvenli midir ve yanlış olduklarını düşünmek konusunda yanılıyor musunuz?
- Bu durumu halletmenin daha iyi bir yolu var mı?
- Gitmemek için yolu yoruyor mu?
O 'session.remove()' değil mi? –
@AllanRuin: "Oturum" ile sağlanan örnekte "some_session" kastediyorsanız, hayır. Bir 'session' nesnesinin' remove' yöntemi yoktur. Bu durumda, 'Session' bir' scoped_session' nesnesidir. Onun 'remove' yöntemi mevcut' session'ı tanımlar ve atmadan önce 'close' yöntemini çağırır. [Dokümanlar] [http://docs.sqlalchemy.org/en/latest/orm/contextual.html?vurgulamak =) # sqlalchemy.orm.scoping.scoped_session.remove kapsamlı. – bfin
güncelleştirilmiş dokümanlar: http://docs.sqlalchemy.org/en/latest/orm/contextual.html – Mahdi