• No results found

S y s t e m A r c h i t e c t u r e

N/A
N/A
Protected

Academic year: 2021

Share "S y s t e m A r c h i t e c t u r e"

Copied!
10
0
0

Loading.... (view fulltext now)

Full text

(1)

S y s t e m

A r c h i t e c t u r e

V e r s i o n 5 . 0

(2)
(3)

Page 1

ADP Enterprise eTIME Version 5.0 System Architecture Enterprise eTIME automates and streamlines the management, collection, and distribution of employee hours, and eliminates the use of manual timecards. Enterprise eTIME uses a three-tier client/server application structure:

Tier 1 is the client software. The client accesses the Enterprise eTIME application through a Web Uniform Resource Locator (URL) using a browser. Application functions are implemented as Hypertext Markup Language (HTML) pages or Java applets. The pages and applets connect to the Web-based Enterprise e-TIME application server. The applets are downloaded via a .jar file and use a sticky cache, which means that applets are only downloaded the first time that the client accesses the applet.

Tier 2 is the Enterprise eTIME application server, which implements the major parts of the application, including the application logic. The second tier performs the real work of the application. The application server includes:

• A Web server component that listens for browser requests and passes these requests to the application server.

• The Totalizer, which executes the time and attendance business rules, using an object oriented model of more than 100 different business rule and pay policy elements. Two Enterprise eTIME components use the Totalizer: the Callable Totalizer, which supports interactive requests for totals, and the Background Proessor off-line computation engine.

• Tier 3 is the database server, which stores all of the application data.

Installable Components

The actual elements that a typical Enterprise eTIME installation comprises include the following, all of which are connected to a network. These elements are configured according to the size and requirements of each company.

For example, small companies might install all components on one machine. Larger companies are likely to install each component on multiple machines.

Data collection devices - Timeclock terminals (optional).

Data Collection Manager or DCM - Transfers information from the timeclocks into the database (optional).

For more information about installing DCM, refer to the Data Collection Manager Installation Guide. DCM only runs on a Windows machine.

Application server - Runs Web server software (Apache, Microsoft IIS, or Sun ONE), as well as the Enterprise eTIME programs and business logic. Most installations have at least two application servers, one as the primary device and the other for backup purposes. Additional application servers can be dedicated to specific functions, such as Event Manager or Reports. The application server can run on Windows or UNIX, although Event Manager and Reports can run only on the Windows companion server.

Background Processor - Writes updated totals to the database at specified intervals to ensure that the database reflects up-to-date totaled data. The Background Processor can run on a Windows or UNIX machine.

Enterprise eTIME Setup - Defines the Enterprise eTIME rules specific to each company. Enterprise eTIME Setup can run only on a Windows machine.

Client PCs - Web browsers on Windows machines that interact with the Enterprise eTIME system.

Database server - Uses a Microsoft SQL Server 2000 (Windows) or Oracle (Windows or UNIX) database to store all Enterprise eTIME data. For most installations, ADP recommends that the database server be a separate machine from the other Enterprise eTIME components.

Each Enterprise eTIME element can be a separate device, or the elements can be configured according to the size and requirements of your company.

(4)

Totalizer

The Totalizer calculates totals in Enterprise eTIME. When time-related events occur, the Totalizer takes available employee data, applies the correct rules and policies, and computes totaled data, which ensures that pay rules are applied automatically and consistently across the organization. Two components access the Totalizer:

• The Background Processor invokes the Totalizer offline and stores information in the database. The

Background Processor runs independently of the application server to offload computationally intensive work.

By offloading computations to the Background Processor, the application server can be optimized for

interactive use. Because the Background Processor prepares data ahead of time, the information is up-to-date when a user logs on to the application server.

• The Callable Totalizer invokes the Totalizer interactively in the browser to total employees whose totals have not yet been computed by the Background Processor and are not up-to-date. It does not send the totals to the database. Totals that are generated online by the Callable Totalizer must be generated a second time by the Background Processor in order to save the values in the database.

Application Server

The application server is the intermediary between the browser-based front end and the back end database. It contains the software that provides the business logic for the Enterprise eTIME components. The application server is also a Web server that uses the client/server model and Hypertext Transfer Protocol (HTTP) to serve the files that form Web pages to users whose computers contain HTTP clients that forward their requests.

Software required by the Enterprise eTIME application server includes:

Web Server software - Microsoft IIS with or without Secure Sockets Layer (SSL) support. If you use Microsoft IIS software, you must install it before you install Enterprise eTIME.

Java Runtime Environment (JRE) - Consists of the Java virtual machine, the Java platform core classes, and supporting files. JRE is the runtime part of the Java Development Kit - no compiler, no debugger, and no tools.

JRE is the smallest set of executables and files that constitutes the standard Java platform. JRE is installed by the Enterprise eTIME installation program and is automatically downloaded to each PC the first time that the PC connects to the Enterprise eTIME application server.

Callable Totalizer - A program installed by the Enterprise eTIME installation program that enables the application server to access the Totalizer interactively. A Web browser provides the user interface for

Enterprise eTIME. The Web browser forwards user requests to the application server, which returns a modified or new Web page to the user’s browser.

Application Server Configurations

Many Enterprise eTIME installations include more than one application server. The actual number of application servers in your installation depends on many factors, such as the number of employees and system usage. Another factor included is that if you have Enterprise eTIME application servers in different time zones and one of the time zones does not observe Daylight Saving Time (DST), you must configure an application server with the time zone that does not support DST. All client machines within the non-DST time zone should be directed to this non-DST application server.

In addition, it is acceptable to configure a server time in different time zones (such as Eastern and Pacific) and allow a client machine set up for Eastern time to point to the server set up in a Pacific time zone, as well as a client set up with Pacific time pointing to a server in Eastern time. This is due to an issue within the JDBC driver.

(5)

Page 3

ADP Enterprise eTIME Version 5.0 System Architecture

Using Single Servers

In a Windows-only environment, you might be able to combine all components onto one PC, depending on your company’s requirements. For example:

• One application server

• One or more Background Processors

• Enterprise eTIME Setup

• DCM software, if appropriate

• SQL Server database.

Note: Oracle databases cannot be installed on the same machine as other Enterprise eTIME components.

Using Multiple Servers

Larger clients will typically install more than one application server. If you install multiple servers, you will also need to change a number of system settings on your primary server. If you use multiple application servers and you want all users to access Enterprise eTIME by the same URL, you must install third-party load balancing software.

Enterprise eTIME and Third-Party Load Balancing Solutions

Load balancing is a method of evenly distributing Web site traffic across multiple Web servers in order to enhance system performance and availability. By distributing user requests across an array of servers, an effective load balancing solution can relieve network traffic overload, reduce Web server burden, and provide fault tolerance.

Load balancing is a complex topic and many load balancing products are available. The choice of load balancing solution and the actual configuration used depend on your functional requirements and your LAN/WAN

infrastructure. As such ADP does not endorse any one solution. However, ADP recommends that you consider the following requirements and best practices for using a third-party load balancer with the Enterprise eTIME

application.

Note: The Enterprise eTIME application server contains a Web server component (IIS). Although this discussion refers to the application server, the load balancer is really using the Web server component.

Three key points are important when considering load balancing solutions:

• Session persistence

• Load distribution method

• Application awareness

These points are discussed in the following sections.

Session Persistence

Load balancers can be either stateless or stateful. Stateless load balancing is when the load balancer distributes all the incoming traffic to available servers but does not keep track of individual sessions. If the load balancer keeps track of state information for every session and makes load balancing decisions for each session, it is called stateful load balancing. Enterprise eTIME requires stateful load balancing. When an Enterprise eTIME session is initiated, the load balancer must determine the destination Web server and send all connections from a given user to the same

(6)

server for the duration of the session. This means that the load balancer must have a means to identify the user, recognize session initiation and termination, and be able to track each session. This is called session persistence, stickiness, or affinity. Load balancers can track traffic by using cookies, URL parsing, static and dynamic algorithms, source and destination addresses, and much more.

Although most load balancers solve the problem of balancing load across multiple servers, they do not all provide the persistence needs of Enterprise eTIME. The two common methods of ensuring persistence with Enterprise eTIME are cookie-based persistence and Secure Sockets Layer (SSL) session ID-based persistence.

Load balancers that use cookies for persistence can use either passive cookies or active cookie insertion. Passive cookies are found within the application. Active cookies are inserted by the load balancer.

Load balancers that use passive cookies for persistence manage the session with a cookie found in the header of the initial logon screen and all subsequent screens until the session terminates. However, Enterprise eTIME does not insert a cookie on the logon screen. This means that the load balancer must use active cookie insertion by inserting its own cookie at logon. F5 Networks and Cisco ArrowPoint use this technique.

Likewise, the Enterprise eTIME JRun session identifier cannot be used to maintain persistence because there is no session ID on the Enterprise eTIME logon page. If you use SSL, the load balancer can use the SSL session identifier to maintain persistence. In an SSL session, the client and the Web server first exchange certain

parameters for encryption and decryption. The Web server sends an SSL identifier as part of the negotiation. The load balancer stores the SSL session ID and its association with a Web server to ensure that all subsequent traffic with the SSL session ID is directed to the same Web server. Cisco and F5 can use the SSL session ID-based persistence.

Load Distribution Methods

Load balancers can use a variety of load distribution methods to allocate load to the various servers in the Enterprise eTIME environment. The load distribution algorithm directly impacts the effectiveness of the load balancing solution. Some of the most common load distribution methods are:

Round robin - The load balancer assigns connections to each server in a set order and then starts again at the beginning of the order.

Least connections - The load balancer keeps track of the total number of concurrent active connections on each server and sends a new request to the server with the least number of concurrent connections.

CPU utilization - The load balancer detects the CPU utilization on each server and sends requests to the server with the lowest level of CPU utilization.

Packet-based - The load balancer bases the assignment of connections on client traffic and network throughput.

Response times - The load balancer monitors incoming client requests and sends requests to the server that is providing the fastest response times.

Application Awareness

Performing various checks to determine system health is one of the most important benefits of a load balancer.

Without a load balancer, a client request can be sent to a server that is down. However, not all load balancers check that the application is up. If a server is up, but the application is down, the load balancer should not attempt to make

(7)

Page 5

ADP Enterprise eTIME Version 5.0 System Architecture a connection. Load balancers that can detect the condition of both the server and the application are much more effective load balancing solutions.

Load Balancers Used with Enterprise eTIME

Although load balancing products are available in many forms, there are two basic types that are typically used with Enterprise eTIME:

• IP-based load balancers run on the application servers themselves and execute algorithms to coordinate the load distribution process among them. Microsoft Network Load Balancing (formerly called Windows Load Balancing Software - WLBS) is one of the most common IP-based load balancers used with Enterprise eTIME.

• Hardware load balancers are “black-box” products that include the necessary hardware and software to distribute requests to multiple servers. Examples of hardware load balancers are those by Cisco ArrowPoint and F5 Networks.

Best Practices

Set up your load balancing solution before you install Enterprise eTIME.

• Ensure that the database traffic does not pass through the load balancer. Traffic must use a gateway address instead of the load balancer to access the database.

IP-based load balancers do not work with Enterprise eTIME if you use a proxy server because it looks like all requests are coming from the same IP address or group of IP addresses.

Do not use DNS round robin load balancing with Enterprise eTIME. It uses a function of DNS that allows more than one IP address to associate with a host name. It does not work with Enterprise eTIME.

• If you use Microsoft Network Load Balancing, consider the following:

Like all IP-based load balancers, Network Load Balancing does not work with Enterprise eTIME if you use a proxy server. In addition, do not use Class C filtering mode; it will route all requests to one Web server.

• Because Network Load Balancing operates at the network layer and not at the application layer, it detects breaks in network connectivity, but does not detect an application layer failure, So, if the Enterprise eTIME application is down but the Web server is up, Network Load Balancing will continue to send requests.

• Layer 2 switches, by default, prevent unicast Network Load Balancing from functioning correctly.

• Network Load Balancing is a round robin solution and does not determine the number of concurrent users per server.

• Network Load Balancing can only handle affinity (statefulness) on an IP-specific basis. Do not set affinity in the port rules to “None”. Any load balancing software or hardware combination used for an Enterprise eTIME environment must support sticky sessions and be configured as such. To configure Network Load Balancing to support this, the affinity setting must be set to Single. When the affinity is set to Single, it ensures that all of an end user’s transactions are handled by a single application server.

Enterprise eTIME Without Third-Party Load Balancing

If you do not install a load balancer, each user must specify the URL of a specific application server. In this case you can balance the workload by using dedicated servers for specific tasks. For example:

(8)

For Event Manager - Events can be set up on any Windows server, but only the primary scheduler server can schedule the processing of these events. You must designate one server as the primary scheduler. This server can be the same one that runs other applications, or it can be a dedicated server.

Before you designate a server as the primary scheduler, you must ensure that Microsoft Task Scheduler is installed. If you are using Windows 2000 or Windows 2003, Task Scheduler is installed with the operating system. If you are using Windows NT, you must install Task Scheduler.

To install Task Scheduler:

1. Install Internet Explorer 5.5 or 6.0.

2. Select the Offline Editing Tools option.

3. Install Task Scheduler as a service that starts automatically.

For workflow notifications - The primary notification server keeps track of conditions for which a notification is requested and triggers the preparation of e-mails when the condition is met. You must designate one server as the primary notification server. This server can be the same one that you use for other purposes, or it can be a dedicated server.

Notifications can be configured on any server, but only the primary notification server can trigger the processing of them. Other properties must also be reconfigured for a multi-server environment.

For group edits - One server must be designated as the primary group edit server, which is the only server that is authorized to run the group edit recovery and delete threads.

For DCM - A single DCM server can be configured on the same server that you use for other purposes or you can set up one or more dedicated DCM servers. No primary DCM server is needed.

For the Background Processor - ADP recommends that you run Totalizer instances on dedicated Background Processor servers, since running a Background Processor on an application server can cause load problems.

You can set up multiple Background Processors on one server or many servers.

For reports - If you generate many reports, you can improve system performance by creating one or more application servers dedicated to generating reports. When the primary application server receives a report request from a client, it always runs the report itself or always delegates the request to other servers. It does not have the discretion to run the report sometimes and to relay the request elsewhere at other times. It does, however, give every report server an equal opportunity of getting report requests. Therefore, to create a dedicated report server, you must disable the report service on the primary application server that handles user authentication and enable it on the application server on which you want to run reports.

Background Processor

The Background Processor automatically calculates totals, such as hours worked and pay earned, from the data in the database. The Background Processor runs continuously as a background process and updates totals at specified intervals.

For example, assume that the update interval of the Background Processor is 30 seconds. After remaining idle for 30 seconds, The Background Processor recalculates totals for all employees whose totals are not up-to-date. The Background Processor is then idle for 30 more seconds before it calculates totals again. The update interval can be set to as little as 1 second or as long as 99 hours.

(9)

Page 7

ADP Enterprise eTIME Version 5.0 System Architecture

Enterprise eTIME Setup

One or more PCs contain the Enterprise eTIME Setup component, which is a Windows application that does not have a browser interface. System administrators use the Enterprise eTIME Setup component to set up labor levels, pay rules, accruals, and comments for the Enterprise eTIME system.

Client PCs

Client PCs connect users to the Enterprise eTIME application server through an Internet Explorer or Netscape browser. By entering the URL of the application server, the Enterprise eTIME portal opens on the client PC and the user interacts with the Enterprise eTIME system according to his or her access rights.

Enterprise eTIME provides two different types of client user interface:

• Java-based client

• HTML-based client

The user interface in the HTML Client is not downloaded once and reused, as is the case with the Java Client. Each time data changes in the HTML Client, the page is rebuilt on the application server.

Enterprise eTIME Manager or Enterprise eTIME Professional - Java Client

The Java Client interface is the full-function Java applet interface to Enterprise eTIME. The first time that a browser accesses the application server, a JRE plug-in is downloaded to the browser. With the Java Client, employees and managers see the same timecard view when they access the employee’s timecard.

Enterprise eTIME Professional - HTML Client

The HTML Client option provides a client interface for employees who do not have the hardware required to run the Java Client option. The HTML Client does not download code to the client machine.

With the Enterprise eTIME Professional - HTML Client, the employee views his or her timecard or Time Stamp in the HTML user interface, and the manager views the employee’s timecard in the Java Client user interface. This option provides lower hardware and operating system requirements as outlined on Enterprise eTIME Professional - HTML Client.

Enterprise Scheduler

Although Enterprise eTIME includes a basic scheduling component, an optional advanced scheduling component - called Enterprise Scheduler - is also available. Enterprise Scheduler is a Web-based tool that is designed to assist managers in creating complex schedules and facilitate frequent changes that occur as the schedule is being worked.

Enterprise Scheduler is delivered when you install the Enterprise eTIME application server, but is licensed separately.

Data Collection Manager

DCM is required if you use timeclocks to input time. If you do not use timeclocks, DCM is not required. For more information about installing DCM in an Enterprise eTIME environment, refer to the Data Collection Manager Installation Guide.

(10)

Network Requirements

Your choice of network and connecting hardware can affect the performance of your client and server machines.

The number of nodes on your network and the transfer throughput are some of the external factors that can affect the performance of the Enterprise eTIME system.

If the application server, Background Processor, Enterprise eTIME Setup, database server, and DCM are installed on separate machines, they must be located in close proximity to each other and connect to the same backbone of a local area network (LAN) using T1 to T10 lines.

All client PCs must support Transmission Control Protocol/Internet Protocol (TCP/IP) as the transport protocol and be able to connect to the Internet; they do not have to connect to the local area network. Minimum throughput is:

• 56K dial-up for Java Client machines

28.8K dial-up for Enterprise eTIME Professional - HTML Client machines, although 56K is recommended for HTML Client machines that use Quick Time Stamp.

Database Server

The database server contains a Microsoft SQL Server 2000 or Oracle database for all of your time and attendance data. The database software must be installed before you can install Enterprise eTIME components.

References

Related documents

Methods: We reviewed 17 patients with severe SJT of 3 different types who underwent posterior open-window focal debridement and bone graft for joint fusion.. Among them,five

This is the first systematic review and meta-analysis examining the effectiveness of interventions in improv- ing subjective and/or objective levels of PA in adults with PMP

After the same follow-up time, patients treated with the former ACD technique without autologous bone showed a hip survival rate of 67%, which was nearly the same as the survival

The lack of good quality studies, variation in defin- ition of success and limited follow-up of patients means the success rate of clubfoot treatment using the Ponseti method

The specific aims of these experiments were [1] to determine the degree of fit of a newly defined function to the load-deflection data of SMS and the degree of linear fit over the

Background: The purpose of our study was to assess the clinical and imaging outcome of autologous matrix-induced chondrogenesis (AMIC) technique consisting of microfractures followed

Suppression of survivin gene expression by transfection of a specific siRNA resulted in marked alterations of the cell cycle distribu- tion and inhibited G2/M progression.. In

The results of the present work can be summarised as follows: a greater acceptance of chronic pain was associated with less pain, symptoms, fibromyalgia impact, anxiety, and