cgsService.xml 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed Materials - Property of IBM
  4. IBM Cognos Products: cgs
  5. (C) Copyright IBM Corp. 2005, 2014
  6. US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
  7. -->
  8. <!--COPYRIGHT_DATA {'COMPONENT':'cgs', 'VISIBLE':'YES', 'RELEASE':['2005', '2010']} -->
  9. <service name="graphicsService" class="com.cognos.pogo.services.SoapActionHandlerService" registerInCM="true" CMdefaultName="GraphicsService">
  10. <prerequisites>
  11. <prerequisite disabledProperty="gsIsEnabled"/>
  12. </prerequisites>
  13. <handlers>
  14. <handler name="remoteBalanceHandler" classname="com.cognos.p2plb.clerver.actions.RemoteBalanceHandler">
  15. <service name="graphicsService">
  16. <forwarding delayBetweenAttempts="0" maxAttempts="1" retryOnNoProcess="false"/>
  17. <soapAction>http://developer.cognos.com/schemas/graphicsService/2</soapAction>
  18. <soapAction>http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/</soapAction>
  19. <soapAction>http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/.session</soapAction>
  20. <soapAction>http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/.absolute</soapAction>
  21. <soapAction>http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/.control</soapAction>
  22. <soapAction>http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/.server</soapAction>
  23. </service>
  24. </handler>
  25. <handler name="prepareConversationContext" classname="com.cognos.pogo.handlers.tracking.PrepareConversationContextHandler"/>
  26. <handler name="validateRequestConversationContext" classname="com.cognos.pogo.handlers.tracking.ValidateRequestConversationContextHandler" validateProcessID="true" validateAffinityStrength="true" faultOnValidationError="false"/>
  27. <handler name="validateResponseConversationContext" classname="com.cognos.pogo.handlers.tracking.ValidateResponseConversationContextHandler" validateProcessID="true" validateAffinityStrength="true"/>
  28. <handler name="CGSServiceAsync" classname="com.cognos.pogo.async.impl.AsyncHandler" threadBaseName="asyncgraphicsServiceThread-" expiryCheckIntervalms="10000" abandonLimit="12" graceLimit="12" wrappedHandler="graphicsService.CGSServiceHandler" onCompletionHandler="graphicsService.CGSServiceReporter"/>
  29. <handler name="serviceStatus" classname="com.cognos.pogo.handlers.engine.ServiceStatusHandler" dispatcherStateHandler="dispatcher.dispatcherStatusHandler" serviceName="graphicsService" skip_on_fault="false"/>
  30. <handler name="CGSServiceReporter" classname="com.cognos.pogo.monitoring.QueueableRequestReportingHandler" publisherName="pogoPublisher" reporterName="graphicsService" serviceType="graphicsService" cnRequestInfo="warpRequestInfo" skip_on_fault="false"/>
  31. <handler name="CGSServiceHandler" classname="com.cognos.pogo.async.service.bibustkserver.BIBusTKServerRequestHandler" cnRequestInfo="warpRequestInfo" runTimeInfoReporter="graphicsService.CGSServiceReporter" cn_cleanup_list="cleanup" requestDuration="40" preventSSL="true" connectionFactory="com.ibm.cgsBus.CGSServiceConnectionFactory" servicePrefix="gs" objectFactory="com.cognos.pogo.async.service.connection.bibustkserver.BIBusTKServerComponentFactory">
  32. <target>
  33. <!-- JVM arguments -->
  34. <child-proc-cmd>-option</child-proc-cmd>
  35. <child-proc-cmd>COG_ROOT=</child-proc-cmd>
  36. <child-proc-cmd>idleTimeLimitSec=900</child-proc-cmd>
  37. <child-proc-cmd>-vmargs</child-proc-cmd>
  38. <child-proc-cmd>Xmx1g</child-proc-cmd>
  39. <child-proc-cmd>Xscmx100m</child-proc-cmd>
  40. <child-proc-cmd>Xshareclasses:cachedir=../javasharedresources,name=cgs1%u,nonfatal</child-proc-cmd>
  41. <init-param>
  42. <param-name>exe_name</param-name>
  43. <param-value>cgsLauncher${os.executable.extension}</param-value>
  44. </init-param>
  45. <init-param>
  46. <!-- The host where the CGSServer is running on. This is only used if report_server_port is NOT ZERO -->
  47. <param-name>report_server_host</param-name>
  48. <param-value>localhost</param-value>
  49. </init-param>
  50. <init-param>
  51. <!-- The port the CGSServer is listening to. 0 (zero) should be used if the -->
  52. <!-- dispatcher spawns the process and uses a dynamically assigned port -->
  53. <param-name>report_server_port</param-name>
  54. <param-value>0</param-value>
  55. </init-param>
  56. <init-param>
  57. <param-name>worker_request_path</param-name>
  58. <param-value>/cgs</param-value>
  59. </init-param>
  60. <init-param>
  61. <!-- The maximum number of processes that can be running at one time -->
  62. <param-name>max_process</param-name>
  63. <param-value>1</param-value>
  64. </init-param>
  65. <init-param>
  66. <!-- The minimum number of processes to keep in memory once they're started -->
  67. <param-name>linger_process</param-name>
  68. <param-value>1</param-value>
  69. </init-param>
  70. <init-param>
  71. <!-- The maximum number of non-affine connections per process -->
  72. <param-name>max_non_affine_connections_per_process</param-name>
  73. <param-value>4</param-value>
  74. </init-param>
  75. <init-param>
  76. <!-- Time period between checks for idle or expired processes (in ms) .
  77. Everytime we check an idle process we bump its tick count. Every time we use
  78. a process the count is reset to 0. If the count ever reaches the value
  79. of idle_process_max_idle_ticks (below) the process is destroyed.
  80. -->
  81. <param-name>idle_process_check_interval_ms</param-name>
  82. <param-value>30000</param-value>
  83. </init-param>
  84. <init-param>
  85. <!-- number of idle check ticks before an idle process is killed. -->
  86. <param-name>idle_process_max_idle_ticks</param-name>
  87. <param-value>10</param-value>
  88. </init-param>
  89. <init-param>
  90. <!-- Should the CGSServer be started at initialization time rather than on-demand? -->
  91. <param-name>prestart_process</param-name>
  92. <param-value>false</param-value>
  93. </init-param>
  94. <init-param>
  95. <!-- The maximum time a request is queued before it gives up (in ms) -->
  96. <param-name>queue_time_limit_ms</param-name>
  97. <param-value>30000</param-value>
  98. </init-param>
  99. <init-param>
  100. <!-- The amount of time the dispatcher will wait for a async request before it cancels it (in ms) -->
  101. <param-name>async_wait_timeout_ms</param-name>
  102. <param-value>30000</param-value>
  103. </init-param>
  104. <init-param>
  105. <param-name>publish_stats_interval_ms</param-name>
  106. <param-value>60000</param-value>
  107. <!-- 0 for never -->
  108. </init-param>
  109. <init-param>
  110. <!-- The default number of requests that can be made to a process before it is expired -->
  111. <param-name>default_process_use_limit</param-name>
  112. <param-value>0</param-value>
  113. <!-- 0 for unlimited -->
  114. </init-param>
  115. <init-param>
  116. <!-- The amount of time the dispatcher will wait for the process to shutdown before killing it -->
  117. <param-name>process_shutdown_timeout_ms</param-name>
  118. <param-value>300000</param-value>
  119. </init-param>
  120. </target>
  121. </handler>
  122. <handler name="CGSServiceChainHandler" classname="com.cognos.pogo.handlers.logic.ChainHandler">
  123. <chain>
  124. <handler_ref name="pogo.auth_check"/>
  125. <handler_ref name="prepareConversationContext"/>
  126. <handler_ref name="validateRequestConversationContext"/>
  127. <handler_ref name="bridge.request"/>
  128. <handler_ref name="CGSServiceAsync" skip_on_fault="false"/>
  129. <handler_ref name="CGSServiceReporter" skip_on_fault="false"/>
  130. <handler_ref name="diagnostics.LogConvStatusHandler"/>
  131. <handler_ref name="pogo.logResponseConversationContext"/>
  132. <handler_ref name="validateResponseConversationContext"/>
  133. <handler_ref name="bridge.response"/>
  134. <handler_ref name="pogo.respond" skip_on_fault="false"/>
  135. </chain>
  136. </handler>
  137. <!--
  138. This is the handler chain for the "new" CGS service
  139. -->
  140. <handler name="graphicsServiceHandler" classname="com.ibm.cgsBus.service.GraphicsServiceHandler" servicePrefix="gs"
  141. connectionFactory="com.ibm.cgsBus.service.GraphicsServiceConnectionFactory"
  142. objectFactory="com.ibm.cgsBus.service.GraphicsServiceComponentFactory"
  143. cn_cleanup_list="cleanup"
  144. cnRequestInfo="warpRequestInfo"
  145. runTimeInfoReporter="graphicsService.CGSServiceReporter"
  146. preventSSL="false">
  147. <externalProcess>
  148. <!-- JVM arguments -->
  149. <child-proc-cmd>-option</child-proc-cmd>
  150. <child-proc-cmd>COG_ROOT=</child-proc-cmd>
  151. <child-proc-cmd>idleTimeLimitSec=900</child-proc-cmd>
  152. <child-proc-cmd>-vmargs</child-proc-cmd>
  153. <child-proc-cmd>Xmx1g</child-proc-cmd>
  154. <child-proc-cmd>DuseNonAsync</child-proc-cmd>
  155. <child-proc-cmd>Xscmx100m</child-proc-cmd>
  156. <child-proc-cmd>Xshareclasses:cachedir=../javasharedresources,name=cgs1%u,nonfatal</child-proc-cmd>
  157. <!-- External process configuration -->
  158. <init-param>
  159. <param-name>exe_name</param-name>
  160. <param-value>cgsLauncher${os.executable.extension}</param-value>
  161. </init-param>
  162. <init-param>
  163. <!-- The host where the CGSServer is running on. This is only used if report_server_port is NOT ZERO -->
  164. <param-name>server_host</param-name>
  165. <param-value>localhost</param-value>
  166. </init-param>
  167. <init-param>
  168. <!-- The port the CGSServer is listening to. 0 (zero) should be used if the -->
  169. <!-- dispatcher spawns the process and uses a dynamically assigned port -->
  170. <param-name>server_port</param-name>
  171. <param-value>0</param-value>
  172. </init-param>
  173. <init-param>
  174. <!-- The maximum number of processes that can be running at one time -->
  175. <param-name>max_process</param-name>
  176. <param-value>1</param-value>
  177. </init-param>
  178. <init-param>
  179. <!-- The minimum number of processes to keep in memory once they're started -->
  180. <param-name>linger_process</param-name>
  181. <param-value>1</param-value>
  182. </init-param>
  183. <init-param>
  184. <!-- The maximum number of non-affine connections per process -->
  185. <param-name>max_non_affine_connections_per_process</param-name>
  186. <param-value>4</param-value>
  187. </init-param>
  188. <init-param>
  189. <!-- Time period between checks for idle or expired processes (in ms) .
  190. Everytime we check an idle process we bump its tick count. Every time we use
  191. a process the count is reset to 0. If the count ever reaches the value
  192. of idle_process_max_idle_ticks (below) the process is destroyed.
  193. -->
  194. <param-name>idle_process_check_interval_ms</param-name>
  195. <param-value>30000</param-value>
  196. </init-param>
  197. <init-param>
  198. <!-- number of idle check ticks before an idle process is killed. -->
  199. <param-name>idle_process_max_idle_ticks</param-name>
  200. <param-value>10</param-value>
  201. </init-param>
  202. <init-param>
  203. <!-- Should the CGSServer be started at initialization time rather than on-demand? -->
  204. <param-name>prestart_process</param-name>
  205. <param-value>true</param-value>
  206. </init-param>
  207. <init-param>
  208. <!-- The maximum time a request is queued before it gives up (in ms) -->
  209. <param-name>queue_time_limit_ms</param-name>
  210. <param-value>30000</param-value>
  211. </init-param>
  212. <init-param>
  213. <param-name>publish_stats_interval_ms</param-name>
  214. <param-value>60000</param-value>
  215. <!-- 0 for never -->
  216. </init-param>
  217. <init-param>
  218. <!-- The default number of requests that can be made to a process before it is expired -->
  219. <param-name>default_process_use_limit</param-name>
  220. <param-value>0</param-value>
  221. <!-- 0 for unlimited -->
  222. </init-param>
  223. <init-param>
  224. <!-- The amount of time the dispatcher will wait for the process to shutdown before killing it -->
  225. <param-name>process_shutdown_timeout_ms</param-name>
  226. <param-value>300000</param-value>
  227. </init-param>
  228. </externalProcess>
  229. </handler>
  230. <handler name="graphicsServiceChainHandler" classname="com.cognos.pogo.handlers.logic.ChainHandler">
  231. <chain>
  232. <handler_ref name="prepareConversationContext"/>
  233. <handler_ref name="bridge.request"/>
  234. <handler_ref name="graphicsServiceHandler"/>
  235. <handler_ref name="CGSServiceReporter" skip_on_fault="false"/>
  236. <handler_ref name="bridge.response"/>
  237. <handler_ref name="pogo.respond"/>
  238. </chain>
  239. </handler>
  240. </handlers>
  241. <soapActions>
  242. <soapAction path="http://developer.cognos.com/schemas/graphicsService/2" handler="graphicsService.graphicsServiceChainHandler"/>
  243. <soapAction path="http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/" handler="graphicsService.graphicsServiceChainHandler"/>
  244. <soapAction path="http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/.session" handler="graphicsService.graphicsServiceChainHandler"/>
  245. <soapAction path="http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/.absolute" handler="graphicsService.graphicsServiceChainHandler"/>
  246. <soapAction path="http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/.control" handler="graphicsService.graphicsServiceChainHandler"/>
  247. <soapAction path="http://www.ibm.com/xmlns/prod/cognos/graphicsService/*/.server" handler="graphicsService.graphicsServiceChainHandler"/>
  248. </soapActions>
  249. <attributes>
  250. <attribute>gsAffineConnections</attribute>
  251. <attribute>gsNonAffineConnections</attribute>
  252. <attribute>gsMaximumProcesses</attribute>
  253. <attribute>gsPeakAffineConnections</attribute>
  254. <attribute>gsPeakNonAffineConnections</attribute>
  255. <attribute>gsPeakMaximumProcesses</attribute>
  256. <attribute>gsQueueLimit</attribute>
  257. <attribute>gsExecutionTimeLimit</attribute>
  258. <attribute>gsAuditLevel</attribute>
  259. <attribute>advancedSettings</attribute>
  260. </attributes>
  261. </service>