If you are unable to create a new account, please email support@bspsoftware.com

 

News:

MetaManager - Administrative Tools for IBM Cognos
Pricing starting at $2,100
Download Now    Learn More

Main Menu

What is the connection for service

Started by ricky_ru, 29 Jul 2013 07:26:25 AM

Previous topic - Next topic

ricky_ru

As to the following in
http://pic.dhe.ibm.com/infocenter/rentrpt/v1r0m1/index.jsp?topic=%2Fcom.ibm.swg.ba.cognos.ug_cra.10.1.1.doc%2Fc_setthemaximumnumberofprocessesandconnections.html

Number of high affinity connections for the <service_name> during peak period
Maximum connections for <service_name> service during non-peak period


​Could any one explain what is the connection above? For database connection, it is the one between client(jdbc, odbc) and database server, can be pooled for reusing, pretty much easy to understand.  But what is the connection for service?  What is the two endpoints between the connection(what client, what server)?  A service handles SOAP request during http conversation. Once done, the connection will be finished, it is the http nature. So, how is it for reusing by different clients? And what's the purpose to set the number above?  I am confused. Appreciate any post.

MFGF

Hi,

If you look in the Admin console under Dispatchers and Services, you will see that there are a whole slew of services running within the java application server. If you think about the Report Service, for example, you can specify how many instances of this will run within the java container. The more instances that run, the more concurrent report requests the server will attempt to handle. It's not as simple as that, though. Each report service has a number of connections defined (connections as in connections between the dispatcher and the report service within the architecture). If you have (say) three low-affinity connections and one high-affinity connection defined, and you have four instances of the Report Service, your machine would in theory be able to handle (4 x 3) + (4 x 1) concurrent requests for interactive reports = 16 concurrent requests. Any more than this coming in concurrently would be queued, and the queued requests processed once the currently running requests are done.

Cheers!

MF.
Meep!

ricky_ru

#2
Thanks MF. It does make sense.
The following up question is about the number of BIBusTKServerMain process and itself.
As you said, it is possible for cognos to handle 16 concurrent requests with 4 instance of report services and the affinity connections setting. But the server may has 2 CPUs and the maximum number of  BIBusTKServerMain process is 4 for report service. So, What I want to know is How BIBusTKServerMain handles.
1) Each BIBusTKServerMain only handles 1 request(fetching data from source) once. That means 4 requests can be concurrent. Others are queued. Once BIBusTKServerMain finishes the particular request, it will process a new one from queue.
2) Each BIBusTKServerMain contains identical threads(the same code logic) to process requests. Each BIBusTKServerMain can handle concurrent requests within threads. So, the 16 requests can be concurrently executed within 4 threads in each of the 4 BIBusTKServerMains.

Which one from my understanding is right? Or do you have any comment on that?