jBPM6 provides various predefined strategies for handling knowledge sessions. An simple example using singleton strategy is shown in https://community.jboss.org/people/bpmn2user/blog/2014/01/14/jbpm6--angularuing-grid-web-example. It uses a single knowledge session to execute all the process instances. A different strategy ‘PerRequestRequestManager’ is used in this blog. This approach creates a new knowledge session for each request.
![explore.PNG](https://developer.jboss.org/servlet/JiveServlet/downloadImage/38-5427-22276/explore.PNG)
RuntimeManager is craeted using the strategy 'PerRequestRuntimeManager' as shown below.
![perreqmgr.PNG](https://developer.jboss.org/servlet/JiveServlet/downloadImage/38-5427-22274/perreqmgr.PNG)
A knowledge session is created for each request for performing various tasks such as process create, query and approve etc.
![createsessionexample.PNG](https://developer.jboss.org/servlet/JiveServlet/downloadImage/38-5427-22275/createsessionexample.PNG)
![taskgridkris.PNG](https://developer.jboss.org/servlet/JiveServlet/downloadImage/38-5427-22271/taskgridkris.PNG)
![taskgridskrisapprove.PNG](https://developer.jboss.org/servlet/JiveServlet/downloadImage/38-5427-22272/taskgridskrisapprove.PNG)
![taskgridjohn.PNG](https://developer.jboss.org/servlet/JiveServlet/downloadImage/38-5427-22273/taskgridjohn.PNG)