commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Praveen Sripati <praveensrip...@gmail.com>
Subject Re: Connection Pooling in Azure Cloud
Date Mon, 19 Jul 2010 15:15:09 GMT
Hi Phil,

Thanks for the reply.

This is a problem that will get repeated again and again in the cloud due to
the dynamic nature of the cloud. Servers gets added and removed all the time
in the cloud. I am not sure if a change in DBCP or Driver is the right
approach, but it's a nice to have feature.

Some of the Clouds like Amazon Web Services have Sticky Address (the IP
address of the server can be controlled) using which the problem can be
contained to some extent, but still Tomcat somehow needs to be aware of the
change in the Topology (scaling up/down) of the Database.

Regards,
Praveen

On Sun, Jul 18, 2010 at 8:16 PM, Phil Steitz <phil.steitz@gmail.com> wrote:

> Praveen Sripati wrote:
> > We are in the process of migrating Tomcat and MySQL to Microsoft Azure
> Cloud
> > and facing challenges due to the dynamic nature of the cloud like
> allocation
> > of dynamic ip and ports to the instances of Tomcat & MySQL in Azure.
> Because
> > of this behavior Tomcat needs to
> >
> > 1) Dynamically update the ip and ports of the different MySQL instances
> in
> > the JDBC URL (
> >
> http://dev.mysql.com/doc/refman/5.5/en/connector-j-reference-replication-connection.html
> ).
> > Suppose the following is the JDBC URL, then it has to be updated in
> Tomcat
> > at run-time when a new instance of MySQL is bought up or an instance of
> > MySQL is bought down.
> >
> > url=jdbc:mysql:replication://127.0.0.1:5104,127.0.0.1:5108,
> 127.0.0.1:5112,
> > 127.0.0.1:5116,127.0.0.1:5116/itops
> >
> > 2) We are using DBCP (http://commons.apache.org/dbcp/) for connection
> > pooling. Similarly when a new instance of MySQL is bought up or an
> instance
> > of MySQL is bought down the pool has to be updated dynamically
> accordingly
> > at run-time.
> >
> Per comments on similar thread on tomcat-user, if the requirement is
> to somehow kill and reestablish the pool dynamically, that is not a
> good idea.  You can't kill and force re-establishment of active
> connections without either coding applications to work around this
> infrastructure "feature" or waiting for all active requests to
> complete before doing it.  If on the other hand the driver can
> handle all of this transparently to the client (in this case, DBCP),
> then there is nothing to do on the DBCP config side other than to
> specify the right URL string. If you need to dynamically update the
> connection URL of the connection factory used by DBCP, that is not
> currently supported by any of the connection factories provided by
> DBCP.  You would have to create a custom connection factory to
> support this and I assume also to somehow detect the need to do it.
>
> Phil
> > Has anyone come across a solution for these problems while deploying
> Tomcat
> > and MySQL in Cloud?
> >
> > Thanks,
> > Praveen
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
>
>


-- 
Praveen

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message