(2) Oracle BPM Architecture

download (2) Oracle BPM Architecture

of 16

Transcript of (2) Oracle BPM Architecture

  • 8/6/2019 (2) Oracle BPM Architecture

    1/16

    1

  • 8/6/2019 (2) Oracle BPM Architecture

    2/16

    2

  • 8/6/2019 (2) Oracle BPM Architecture

    3/16

    3

  • 8/6/2019 (2) Oracle BPM Architecture

    4/16

    4

  • 8/6/2019 (2) Oracle BPM Architecture

    5/16

    5

  • 8/6/2019 (2) Oracle BPM Architecture

    6/16

    6

  • 8/6/2019 (2) Oracle BPM Architecture

    7/16

    7

  • 8/6/2019 (2) Oracle BPM Architecture

    8/16

    8

  • 8/6/2019 (2) Oracle BPM Architecture

    9/16

    9

  • 8/6/2019 (2) Oracle BPM Architecture

    10/16

    10

  • 8/6/2019 (2) Oracle BPM Architecture

    11/16

    11

  • 8/6/2019 (2) Oracle BPM Architecture

    12/16

    The following slides presents a highly distributed topology when

    12

    ALBPM is deployed in a J2EE Application Server like WebLogic orWebSphere. The following is a map of how the WorkSpace (or anyother client application using PAPI) and Process ExecutionEngine(s) can be deployed. The following map displayes thedifferent protocols used to connect each one of the ALBPMruntime components that are involved in orchestrating human andsystem centric activities.

    This diagram shows a single J2EE Cluster where the ALBPMWorkSpace Web Application is deployed. It would be also possibleto have other Clusters where the ALBPM WorkSpace is deployed.Multiple Clusters hosting the WorkSpace Web Application wouldmake sense when connecting geographically dispersed humancommunities. It is important to provide high availability to thisfront end layer since it is the layer that connects persons toprocess their work based on what roles have been assigned tothem within the Organization.This is the layer to scale with a large concurrent user base. Asmore users connect to the system, more WorkSpace nodes willneed to be added to the cluster. The scalability strategy in thiscase, is to continue to add more WorkSpace nodes or eventuallycreate a new cluster with more nodes to host the WorkSpace WebApplication.

  • 8/6/2019 (2) Oracle BPM Architecture

    13/16

    This diagram will explain the effect of processing an interactive

    13

    activity in the displayed highly available architecture.

    1. A request comes from the end user requesting the completion

    of an interactive activity. This will trigger the WorkSpace WebApplication to invoke certain servlets to process the end userrequested action.

    2. The WorkSpace Servlet layer uses PAPI to request theexecution of a given operation to the Engine. In this case, asthe deployment of the Engine is in a J2EE Container, the endpoint of the PAPI Request is a call into a Stateless EJB. In theevent that there are not enough threads for this Stateless EJB,the request will get enqueued until a thread becomes available.

    3. When the Stateless EJB is able to start processing the request,

    it will start an XA transaction with the backend Engine RDBMSto persist the latest and eventually modified instance state intothe Engine DB.

    4. Once this transaction has been completed, the Engine willexecute the routing action and will determine which is thenext activity the instance should be moved to. The result of thisis a message into the Engine News JMS Topic indicating thatthe instance is leaving a given interactive activity. In theEvent that the next activity that the instance is going to is anInteractive one, a special message indicating IN/OUT will be

  • 8/6/2019 (2) Oracle BPM Architecture

    14/16

    This diagram illustrates the execution of an Automatic activity in

    14

    the overall distributed architecture presented above.

    1. When an automatic action needs to be executed by the Engine,

    a JMS Message is pushed into the Engine ToDo JMS Queue.This message is then picked up by an associated MessageDriven Bean that in this diagram is identified by the labelDispatcher MDB that will start the processing of therequested operation. There are different ways in which amessage may get into this activity and it is usually associatedto any of the following actions:

    The execution of a previous activity routed the instance to anautomatic activity. In this case, the Engine routing action willpush a message into this Queue.

    The Engine has an Internal Scheduler Servlet that checksfor the expiration of Due operations (Due Transitions,Activity Expirations, Process Expirations). When this Servletdetects there is one of these items expired, it will push amessage into this Queue to dispatch the execution of therequired action.

    2. When the message is picked up by the Dispatcher MDB, itwill start an XA transaction involving the retrieval of themessage from the queue and the start of a transactions withthe Engine RDBMS. This first thing to do with the Engine

  • 8/6/2019 (2) Oracle BPM Architecture

    15/16

    15

  • 8/6/2019 (2) Oracle BPM Architecture

    16/16

    16