2013-09-04 1 views
1

J'utilise z3c.saconfig pour configurer sqlalchemy dans une application Plone/Zope. Dans cette application, nous avons créé une session sqlalchemy avec la méthode z3c.saconfig named_scoped_session("dbmyapp"). La session est créée et fonctionne très bien. Mais nous avons créé une seule session pour l'application.Une seule session sqlalchemy peut-elle être un goulot d'étranglement pour l'application?

Est-ce que [une session sqlalchemy/app] peut être un goulot d'étranglement pour l'application? En passant, pouvons-nous créer plus d'une session par application? Y a-t-il des avantages?

extrait de buildout.cfg:

<configure xmlns="http://namespaces.zope.org/zope" 
    xmlns:db="http://namespaces.zope.org/db"> 
    <include package="z3c.saconfig" file="meta.zcml" /> 

    <db:engine name="dbmyapp" url="oracle://user:[email protected]:port/sid" /> 
    <db:session name="dbmyapp" engine="dbmyapp" /> 
</configure> 
+0

Pourriez-vous reformuler votre question et la relire pour corriger les fautes de frappe? Il est très difficile de comprendre quel est votre véritable problème. – javex

+0

Ok, @javex. Je vais le réécrire. Le texte est très confus. –

Répondre

1

Les machines de la session prend soin de vous fournir une connexion par fil; puisque vous ne pouvez exécuter que le code séquentiel dans un seul thread, cette connexion ne peut pas devenir un goulot d'étranglement.

Différentes parties du code peuvent demander leur propre session; la machine de session réutilisera les connexions de session si nécessaire. Ce n'est pas quelque chose dont vous avez généralement à vous soucier, tout cela est géré pour vous par z3c.saconfig et ses dépendances.

Questions connexes