08.06.2014 Views

Download PDF (1.3 MB) - IBM Redbooks

Download PDF (1.3 MB) - IBM Redbooks

Download PDF (1.3 MB) - IBM Redbooks

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

The four tiers are browser, network, servers, and databases:<br />

► Browser<br />

►<br />

►<br />

►<br />

AJAX applications, by definition, perform work (to some extent) on the client side, inside<br />

the browser. All typical client work, such as building the user interface (UI), is done on the<br />

client side, which differentiates these applications from classical web applications, where<br />

only the rendering of HTML is done in the browser. Optimizing the browser and client<br />

system are key to delivering excellent performance (as described in 2.4.2, “Use a<br />

high-performing browser” on page 18 through 2.4.5, “Use modern desktop hardware” on<br />

page 18).<br />

Network<br />

In contrast to static web pages, AJAX applications load the content of a page dynamically<br />

as needed, instead of loading the complete page immediately. Instead of one or several<br />

requests with significant payloads, AJAX applications often send many requests with<br />

smaller payloads. Therefore, delays in the network can have significantly affect response<br />

times because they add time to each message. Ultimately, network delays can add up to<br />

the most significant factor for the overall page-response time.<br />

Figure 2-1 on page 16 is simplified because the network also plays a role in<br />

communications between the servers and the databases and even between servers in a<br />

clustered setup. However, because of the nature of AJAX applications, the first point to<br />

analyze for delays is generally between the browser and the servers.<br />

Servers<br />

The server infrastructure is responsible for handling the requests from the clients that are<br />

attached to it, running business applications (processes, state machines, web services,<br />

and other applications) and integrating back-end services. The configuration of this<br />

infrastructure heavily depends on the chosen topology.<br />

The following servers play an important role for Business Process Manager solutions:<br />

– HTTP server<br />

An HTTP server is not part of all topologies. However, for environments that aim to<br />

serve thousands of users, an HTTP server is indispensable. Both static and dynamic<br />

requests from clients come to the HTTP server. This server can cache and then send<br />

the static (cached) content back to the client and route dynamic requests to the<br />

WebSphere Process Server REST API. Furthermore, an HTTP server can provide<br />

load balancing and support high-availability scenarios.<br />

– Business Process Manager V8.0 servers (Process Server or Process Center)<br />

Business Process Manager V8.0 servers execute various business logic (such as<br />

BPEL and BPMN business processes), querying task lists, creating and claiming tasks,<br />

and other functions. In addition, the Process Center executes authoring requests<br />

initiated by the Process Designer.<br />

Databases<br />

There are multiple relevant databases depending on the client that is used (Process<br />

Designer, Process Portal, or Business Space). Each of these databases must be properly<br />

configured and tuned to support the anticipated load.<br />

Use a network with low latency and high bandwidth. Each Business Process Manager client<br />

uses multiple HTTP requests per user action, so minimizing the network delay per request is<br />

crucial. Network bandwidth is also crucial because some HTTP requests return a significant<br />

amount of data. Where possible, use a dedicated network that is both high-speed and<br />

high-bandwidth (1 Gb or faster) for connectivity between Business Process Manager clients<br />

and servers.<br />

Chapter 2. Architecture best practices 17

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!