AnsweredAssumed Answered

Sharing external DB connection pool between multiple B2s

Question asked by assistmicro on Jan 18, 2018

Hi,

 

Now, I estimate to develop multiple B2s with connect to external RDBMS other than Learn's DB schemas.

For Learn is Oracle, external RDBMS is SQLServer.

The custom B2s will connect Learn via B2API and also will connect SQLServer via JNDI resource.

 

At this point,

what I would like to is to manage each B2's MSSQLServer connections in one place,

I would use <GlobalNamingResouces> element on the Tomcat server.xml.

 

"/usr/local/blackboard/config/tomcat/conf/server.xml"

 

<GlobalNamingResources>
  <Resource name="jdbc/BBLEARN"
            auth="Container"
            type="javax.sql.DataSource"
            factory="blackboard.platform.reporting.service.birt.jdbc.BirtConnectionObjectFactory"/>
  <Resource name="jdbc/BBLEARN_stats"
            auth="Container"
            type="javax.sql.DataSource"
            factory="blackboard.platform.reporting.service.birt.jdbc.BirtConnectionObjectFactory"/>
  <!-- 
  ADD NEW RESOURCE FOR EXTERNAL DB
  -->
</GlobalNamingResources>

 

Until now I have defined resource information in the /META-INF/context.xml of each B2, but this time I feel this way might be not so rational.

In this way, since each B2 will have own connection pool, I guess that wasted connections could be made.

 

So if possible I would like to manage the external DB connections in one place through my B2s.

 

For now, this is just my idea, so I do not clarified whether <GlobalNamingResouces> work or not on Learn,

and also is this appropriate way.

 

I would be very appreciated if I could hear any advice for my idea.

 

Sincerely,

Ted

Outcomes