Understanding PeopleSoft Pure Internet Architecture

This chapter discusses:

Click to jump to parent topicPeopleSoft Pure Internet Architecture Fundamentals

Your PeopleSoft application runs on PeopleSoft Pure Internet Architecture, which requires a variety of software and hardware elements:

You need to understand the role of each element before you can decide which configuration will work best for your implementation of PeopleSoft Pure Internet Architecture. The following diagram illustrates, at a high level, the physical relationship between PeopleSoft Pure Internet Architecture elements:

High-level overview of PeopleSoft Pure Internet Architecture relationships

Configuring PeopleSoft Pure Internet Architecture is not just about enabling internet application deployment through a browser. PeopleSoft Pure Internet Architecture enables you to take advantage of all PeopleSoft intranet and internet solutions, as well as PeopleSoft integration technologies such as PeopleSoft Integration Broker.

See PeopleTools 8.52 Installation Guides,support.oracle.com

Click to jump to parent topicDatabase Server

The database server houses a database engine and your PeopleSoft application database, which includes all the application's object definitions, system tables, application tables, and data. The database server must be running one of the PeopleSoft-supported RDBMS and operating system combinations.

A single database server can have multiple application servers connecting to it. The database server simultaneously handles the application server connections, development environment connections, and batch programs running against it.

Note. Using the PeopleTools development environment in Microsoft Windows, you can connect directly to the database, or indirectly through an application server.

The PeopleSoft database is the repository for all information managed by your PeopleSoft application. Both application data and PeopleSoft metadata are stored and maintained in the database. PeopleSoft Application Designer enables you to define and maintain this metadata, which the system uses to drive the runtime architecture. The application server runs business logic based on the metadata.

Use PeopleSoft Application Designer to define, configure, and modify PeopleSoft applications. You can create dozens of different types of application objects, such as fields, records, pages, and messages. When an application developer saves an application object, PeopleSoft Application Designer saves this definition to the metadata repository in the PeopleSoft database.

At runtime, the application server fetches the most recent application object definitions from the metadata repository, compiles and caches the application object into memory, and runs the business rules based on the definitions.

Click to jump to parent topicApplication Servers

This section discusses:

Click to jump to top of pageClick to jump to parent topicApplication Servers

The application server is the core of PeopleSoft Pure Internet Architecture; it runs business logic and issues SQL to the database server. An application server consists of numerous PeopleSoft services and server processes. Just as different elements make up the physical environment in which an application server operates, such as database servers and web servers, a variety of elements operate on the application server, enabling it to respond effectively to a multitude of transaction requests and handle transaction processing, system scaling, browser requests, and so on.

An application server maintains the SQL connection to the database for browser requests and the PeopleTools development environment in Microsoft Windows.

You should have a general knowledge of how an application server operates before you attempt to configure and tune it.

See Also

PeopleTools 8.52: System and Server Administration

Click to jump to top of pageClick to jump to parent topicDomains

An application server domain is the collection of server processes, supporting processes, and resource managers that enable connections to the database. You manage each domain with a separate configuration file, and you configure each application server domain to connect to a single database. A single application server machine can support multiple application server domains running on it. You configure an application server domain using the PSADMIN utility located in the PS_HOME\appserv directory on the application server.

A one-to-one or a many-to-one relationship can exist between application server domains and a database. In the simplest case, you configure a single application server domain to connect to a single PeopleSoft database. In a more sophisticated environment, you can configure multiple application server domains, with each domain connecting to the same PeopleSoft database. The opposite is not true; a single application server domain cannot be used to connect to multiple PeopleSoft databases.

For example, suppose that you have installed three databases, HRDMO1, HRDMO2, and HRDMO3, and you want to enable browser requests to each database. In this case, you must configure at least three application server domains, one for each database. As demand increases, you may need to configure multiple application server domains per database, for redundancy, fail-over, and performance reasons.

You can configure multiple application server domains under a single PeopleSoft configuration home directory, or PS_CFG_HOME. In this context, PS_CFG_HOME refers to the PeopleSoft high-level directory on the application server, not the file server. PS_CFG_HOME is the directory in which you installed the PeopleSoft application server configuration files when using the Server Transfer program.

PSADMIN creates a directory beneath PS_CFG_HOME\appserv for each application server domain that you configure. Using the previous HRDMO example, suppose that you decided to name the application server domains the same name as the database to which they connect. In this case, PSADMIN creates subdirectories \HRDMO1, \HRDMO2, and \HRDMO3 beneath the PS_CFG_HOME\appserv directory on the application server.

Starting an application server domain starts the set of server processes associated with that domain, such as PSAPPSRV, PSQCKSRV, and PSSAMSRV. Each server process establishes a persistent connection to a PeopleSoft database, and this connection acts as a generic SQL pipeline that the server process uses to send and receive SQL.

Each server process uses the same SQL connection to facilitate requests from multiple sources. From the RDBMS perspective, each server process within a domain represents a connected user.

Click to jump to top of pageClick to jump to parent topicListeners, Handlers, and Queues

Listeners, handlers, and queues provide the basis of the application server functionality. Understanding the role of each element is essential when you configure and tune your application server. For instance, although you need to know how to configure multiple Java server handlers, you also need to know why and when to perform this task.

The following diagram illustrates application server processes:

Application server components and server processes

For simplicity, the diagram does not depict every server process that runs on the application server. For example, the optimization server process, PSOPTENG, is not pictured, and integration server processes were also omitted.

Note. When PeopleSoft architecture mechanics is discussed, the term service is overused. The following statement may help to clarify this term: An application server domain calls server processes, such as PSAPPSRV, which in turn invoke services, such as MgrGetObject, on the database.

The following table describes each component depicted in the previous diagram:

Item

Description

Workstation listener (WSL)

The workstation listener monitors Oracle Tuxedo ports for initial connection requests sent from the PeopleTools development environment. After the workstation listener accepts a connection from a workstation, it directs the request to a workstation handler. From that point, the Microsoft Windows workstation interacts with the workstation handler to which it is assigned.

Workstation handler (WSH)

The workstation handler processes the requests that it receives from the workstation listener. A unique port number identifies a workstation handler. The port numbers for the workstation handler are selected (internally by Oracle Tuxedo) from a specified range of numbers. You can configure multiple workstation handlers to take care of demand increases; new processes are created as other processes become overloaded.

Oracle Jolt server listener (JSL)

The Oracle Jolt server listener applies only to browser requests. The Oracle Jolt server listener monitors the Oracle Jolt port for connection requests sent from the browser through the web server. After the Oracle Jolt server listener accepts a connection, it directs the request to an Oracle Jolt server handler. From that point, the browser interacts with the Oracle Jolt server handler. This is analogous to the relationship between the workstation server listener and workstation server handler.

Oracle Jolt server handler (JSH)

The Oracle Jolt server handler applies only to browser requests. The Oracle Jolt server handler processes the requests that it receives from the Oracle Java server listener. The port numbers for the Oracle Jolt server handler are selected internally by Oracle Tuxedo in sequential order.

Request queues

Each type of server process has a service request queue that it shares with other servers of the same type (as in PSAPPSRV on APPQ and PSQCKSRV on QCKQ). The workstation handler and Oracle Jolt server handler insert requests into the appropriate queue, and then the individual server processes complete each request in the order that it appears.

Server processes

The server processes act as the heart of the application server domain. They maintain the SQL connection and make sure that each transaction request gets processed on the database and that the results are returned to the appropriate origin.

Click to jump to top of pageClick to jump to parent topicPeopleSoft Server Processes

Multiple server processes run in an application server domain. A server process is executable code that receives incoming transaction requests. The server process carries out a request by making calls to a service, such as MgrGetObject.

Server processes invoke services to perform application logic and issue SQL to the RDBMS. Each application server process, such as PSAPPSRV, PSQCKSRV, PSQRYSRV, PSSAMSRV, or PSOPTENG, establishes and maintains its own connection to the database.

The server process waits for the service to finish, then returns information to the device that initiated the request, such as a browser. While a server process waits for a service to finish, other transaction requests wait in a queue until the current service finishes. A service may take a fraction of a second to finish or several seconds, depending on the type and complexity of the service. When the service finishes, the server process is then available to process the next request in the corresponding queue.

You need to configure only those server processes that your implementation requires per domain. The minimum server processes that a domain requires are PSAPPSRV and PSSAMSRV.

You can configure multiple instances of the same server processes to start when you start the application server domain. This helps you handle predicted workloads. Furthermore, Oracle Tuxedo can dynamically generate incremental server processes to handle increasing numbers of transaction requests. The capability to configure multiple server processes and generate incremental server processes contributes to the application server's scalability.

The following list describes the possible server processes included in an application server domain. Depending on the configuration options that you choose, not all of the server processes will necessarily be a part of every domain.

The following set of server processes is used for application messaging. (Your messaging domain must also contain PSAPPSRV and PSSAMSRV, the required server processes.)

Note. You can examine servers by using the ps -ef command in UNIX or Task Manager in Microsoft Windows. The PeopleSoft configuration utility, PSADMIN, also offers a monitoring utility.

Click to jump to top of pageClick to jump to parent topicServices

When a PeopleSoft application sends a request to the application server, it sends a service name and a set of parameters, such as MgrGetObject and its parameters. Oracle Tuxedo then queues the transaction request to a specific server process that is designed to handle certain services.

When a server process starts, it advertises to the system the predefined services it handles. You can see the association between the many services and server processes by reviewing the PSAPPSRV.UBB file.

See Also

Using PSADMIN Configuration Files

Click to jump to top of pageClick to jump to parent topicOracle Middleware

PeopleSoft software uses Oracle Tuxedo, a middleware framework and transaction monitor, to manage database transactions. PeopleSoft software also uses Oracle Jolt, a Java API and class library, as the layer that facilitates communication between the PeopleSoft servlets on the web server and the application server. Both Oracle Tuxedo and Jolt are required.

Although we document the Oracle components with respect to their function within the context of a PeopleSoft environment, we do not duplicate the documentation provided by Oracle. You should become familiar with the Oracle documentation that we ship along with our products. The Oracle documentation provides an extensive error catalog that serves as an invaluable source of information when you are troubleshooting.

Note. Oracle Tuxedo doesn’t actually perform processing on the application server; it schedules PeopleSoft server processes to perform the transactions.

See PeopleTools 8.52 Installation Guides,support.oracle.com

Click to jump to top of pageClick to jump to parent topicDatabase Connectivity

Application servers require database connectivity software to be installed locally to maintain the SQL connection with the RDBMS. You must install the required connectivity software and associated utilities for your RDBMS.

After the application server establishes a connection to the database, any device that initiates a transaction request through the application server takes advantage of the application server's direct connection to the database and therefore requires no connectivity software.

Click to jump to parent topicBatch Server Environment

This section discusses:

Click to jump to top of pageClick to jump to parent topicBatch Server Environment

The batch server environment is where PeopleSoft Process Scheduler is installed and configured, and it is the location where many of your batch programs, such as Application Engine programs, run. In most situations, this is also where COBOL and Structured Query Report (SQR) executables are installed.

In a multiserver environment, you can decide where your site batch server environment resides. In PeopleSoft software, you can install the batch server on a separate server, or you can install the batch server on either the application server or the database server.

See Also

Understanding PeopleSoft Process Scheduler

Click to jump to top of pageClick to jump to parent topicBatch Server Support

You can install PeopleSoft Process Scheduler on any supported application server, database server, or batch server, but you need to choose a location that’s supported in the PeopleSoft environment. At least two options are available for each database environment.

If you install PeopleSoft Process Scheduler on a machine that is a supported database machine but not a supported application server machine, you can still configure and administer PeopleSoft Process Scheduler using PSADMIN, the PeopleTools server administration utility. However, you won't be able to access application server options from PSADMIN.

Click to jump to top of pageClick to jump to parent topicPeopleSoft Process Scheduler and the Application Server

PeopleSoft uses PSADMIN to configure and administer both the application server and PeopleSoft Process Scheduler server. The PeopleSoft Process Scheduler setup procedure in PSADMIN provides a menu-driven interface to configure PeopleSoft Process Scheduler parameters and administer the Process Scheduler server agent.

Even though the application server and PeopleSoft Process Scheduler have PSADMIN as a common interface and share the directories under PS_HOME on the application server, they are separate entities. For instance, you start, configure, and shut down the application server and the PeopleSoft Process Scheduler server separately.

The application server uses Oracle Tuxedo to schedule transaction requests and send transaction results, and it issues SQL requests to the database server using the persistent connections of a collection of PeopleSoft application server processes.

In contrast, PeopleSoft Process Scheduler is a separate facility that's designed to poll the PeopleSoft database table, PSPRCSRQST, for inserted requests and initiate Application Engine, COBOL, SQR, and other batch processes.

Click to jump to parent topicWeb Server

A Java-enabled web server is required to support browser transaction requests and PeopleSoft application messaging technology. You install on the web server a collection of PeopleSoft Java servlets designed to handle a wide range of PeopleSoft transactions.

This section discusses:

Click to jump to top of pageClick to jump to parent topicServer Software Elements

During the PeopleSoft installation, a variety of PeopleSoft Java servlets are installed on the web server, so you must have a supported servlet engine installed.

The following software runs on the PeopleSoft Pure Internet Architecture web server:

Click to jump to top of pageClick to jump to parent topicPeopleSoft Servlets

The following PeopleSoft servlets reside on the web server:

Click to jump to top of pageClick to jump to parent topicOracle Jolt

The PeopleSoft servlets on the web server transmit requests and data through a connection to Oracle Jolt, which runs on the application server. Oracle Jolt extends Oracle Tuxedo capabilities to the communication layer between the web-based environment and the C++ environments. You configure the servlets to direct requests from the web server to a predefined Oracle Jolt port on the application server.

Oracle Jolt must coexist with Tuxedo on the same application server machine. Oracle Jolt can’t function without Tuxedo. The following diagram shows the relationship between PeopleSoft Pure Internet Architecture components:

Oracle Jolt in relation to other components

Web browsers don't connect directly to the application server. Instead, they send HTTP requests to the portal servlet running on the web server. The web server translates the HTTP request into an Oracle Jolt request that is sent to a specified Jolt port. Then the application server itself, leveraging Oracle Tuxedo, runs the appropriate SQL against the database.

Click to jump to parent topicWeb Browser

The web browser is the primary means by which users and administrators access PeopleSoft applications and administrative tools.

You must make sure that a supported browser is installed on each workstation. You do not need to install other software on the workstation running the browser, such as applets or connectivity software. The system sends pure HTML to the browser.

A web browser uses the HTTP protocol. The browser sends a request to the web server, which forwards the request to the application server. A servlet installed on the web server facilities all browser connections.

The browser does not download any applets to complete a transaction. The application server sends only the following items to the browser:

Because the browser processes only this basic internet content, the client workstation is not burdened with unnecessary processing responsibility.

PeopleSoft Pure Internet Architecture leverages web browser cookies to store a unique access token for each user when the user is initially authenticated. When the user connects to another PeopleSoft system, the token in the browser cookie is used to reauthenticate the user and bypass the sign-in process. The browser cookie is an in-memory cookie and is never written to disk. The cookie is also encrypted to prevent snooping and uses a checksum to prevent tampering.

See Troubleshooting Browser Limitations,support.oracle.com

Note. With PeopleSoft Pure Internet Architecture, no client software installation is necessary. Most processing occurs at the server level. You install the PeopleTools development applications in a Microsoft Windows environment. Development applications, such as PeopleSoft Application Designer and Data Mover, are usually intended for application developers and system administrators who need to access data other than application data. These users require workstations running Microsoft Windows.

Web Browser Cookies Setting

For you to use PeopleSoft Pure Internet Architecture, the Internet option to allow session cookies must be enabled.

To enable session cookies:

  1. From your browser menu, select Tools, Internet Options, Security, Custom Level.

  2. Scroll down to the Cookies – Allow per-session cookies (not stored) option.

  3. Select Enable.

  4. Click OK to save the setting.

  5. Click OK again to close the dialog window.

Note. The internet option to allow cookies that are stored on your computer is optional.

Click to jump to parent topicConfiguration and Deployment Options

This section discusses:

Click to jump to top of pageClick to jump to parent topicConfiguration Options

You can configure your environment to support either a physical or a logical application server configuration. In some cases, the PeopleSoft standard installation procedure recommends one or the other depending on the combination of database and operating system at your site.

Generally, your application server should be on the same physical machine as the database server. This produces a logical separation between the application server and database server. If the application server and database server don't reside on the same machine, then the application server and the database server should be connected to the same high-performance backbone network. This ensures optimum performance.

Logical Application Server Configuration

A logical application server environment is one in which one or more servers share the same physical machine. The servers are logically, but not physically, separate.

The following diagram depicts a logical configuration with two server machines—one for the web server and the other for the application and database servers:

Logical application server configuration

The dashed line surrounding the application server and the database server represents one physical machine. In this case, a logical application server configuration is possible only when both the database server and the application server are supported on a particular operating system. This shows that certain PeopleSoft Pure Internet Architecture elements can share the same machine.

Although this diagram depicts the application server and the database server sharing the same machine, the web server could also reside on the same machine with both the application server and the database server. The only requirement is that each component be supported by the underlying operating system. If all servers are located on the same machine, however, you should consider security issues. If you're deploying PeopleSoft applications to the internet, you will most likely want your web server outside of your network firewall and not on the same machine as the database server.

Note. For development, testing, or training purposes, you might want to have all PeopleSoft Pure Internet Architecture elements on the same Microsoft Windows or UNIX machine.

Physical Application Server Configuration

A physical application server configuration is one in which each component resides on a separate machine. The following diagram depicts a physical application server configuration:

Physical application server configuration

Click to jump to top of pageClick to jump to parent topicDeployment Options

A variety of user deployment options exist.

PeopleTools Portal

You can use the PeopleTools portal to deploy PeopleSoft applications to a browser. The portal enables you to integrate PeopleSoft content with content from other data sources. The PeopleSoft portal can be standalone, or you can integrate it with any application portal that you may already be using.

PeopleSoft portal technology consists of the portal servlet and an application server. These two components work together to provide common portal processing, such as page assembly, search ability, content management, navigation, and homepage personalization. You can combine content from a wide variety of data sources and deliver the result to users in a unified, simple-to-use interface.

Development Environment

Although the majority of users connect by using browsers, application developers and system administrators, who require access to PeopleTools, must use Microsoft Windows workstations. PeopleSoft Application Designer and various other PeopleTools applications are not accessible through a browser.

With the PeopleTools development environment in Microsoft Windows, you can connect directly to the database (two-tier), or you can connect through an application server (three-tier).

Integration Technologies

Although PeopleSoft integration solutions don't deploy a user interface, they do enable you to share information with third-party systems and other PeopleSoft databases. To take advantage of these integration solutions, you must configure PeopleSoft Pure Internet Architecture. Oracle provides the following integration technologies:

See Also

Understanding PeopleSoft Integration Broker

Understanding Component Interfaces