[Twisted-Python] So how does everyone use an ORM in twisted?

Jean-Paul Calderone exarkun at divmod.com
Tue Mar 17 09:17:38 MDT 2009


On Tue, 17 Mar 2009 11:05:59 -0400, Ryan Lepidi <ryeguy1 at gmail.com> wrote:
>I have searched a bit, and it seems as though you can't use SQL Alchemy with
>twisted due to SA being thread unsafe. The only solution I found was sAsync,
>but this is old and unmaintained. What is everyone else doing for database
>access for a multiuser server? Is everyone really using raw sql queries or
>is there some easy solution that I'm missing?
>
>I'm not even stuck on SQL Alchemy; if there is some other ORM that works in
>this case, I'd be willing to learn it.
>

I use Axiom (for Mantissa, a somewhat general-purpose application server,
for Quotient, a mail server based on it, for Imaginary, a text adventure
server based on it, for Blendix, a person aggregator based on it, for
Merit, a test results database, etc) most of the time.  I know some other
people are using Storm.

Overall, I think that the way all existing ORMs work (including Axiom and
Storm) is hostile towards the typical Twisted program structure (or vice
versa, or both).  So it's tough.  The approach Axiom takes is to warn you
that any database operation you perform must complete quickly or your app
will suffer, and to restrict you to SQLite, so network issues can't hurt
you.

Jean-Paul




More information about the Twisted-Python mailing list