Hi

I have 2 sessions created:

a_engine = create_engine('mysql:///host1', echo=True)
a_session = scoped_session(sessionmaker(autoflush=True,
transactional=True, bind=a_engine))

b_engine = create_engine('mysql:///host2', echo=True)
b_session = scoped_session(sessionmaker(autoflush=True,
transactional=True, bind=b_engine))

The issue I run into is, what happens when b_session's server crashes?
I am looking at this from a high availability standpoint. I want to
round-robin between 2 pools of persistent connetions. Both hosts share
the same data. If b_session is down, don't use that session until its
recovered.

In my cases using a hardware vip would probably make this easier, but
since we're dealing with persistent connections -- it makes it a tad
more complex. I *could* create 1 pool thats connected directly to a
hardware vip and let that round-robin through the DBs on the initial
'connect'. But if I start adding more servers that host my application
I could run into a scenario of more connections living on A vs B and
it becomes unpredictable. Managing 2 pools allows me to control X
connections per host and adjust as I add more servers.

Thoughts?

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalchemy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to