Offline Behavior
The Pharos system includes redundancy features to cope with loss of communications. In situations where the Database Server cannot be contacted, Pharos servers can offer limited functionality to users.
The Pharos Administrator and Pharos Remote applications are not available when the Database Server is offline.
The Pharos Proxy Service
A separate service is installed with the Pharos Print Server, EDI Server, Popup Server and the Pharos Station application. The Pharos Proxy Service relays all communication between these Pharos components and the Pharos Database. As the services request information from the database, the Proxy Service caches certain data locally. In the event of communication with the database being lost, the presence of the Proxy Service ensures that the services continue to function, and services are able to make use of the locally cached data.
When the database comes back online, the Proxy Service ensures that the following things happen:
- Any offline transactions are forwarded to the database
- A Proxy Service Alert is logged
- A Change Control is sent to all servers
Properties that affect the functioning of all Proxy Services are available in the Offline Mode section of the System Settings context.
This tab also contains properties that affect gateway offline billing - these apply when the system loses contact with a third party Billing Gateway.
Use Caching
This option determines whether or not data is cached at the proxy. By default, caching is enabled, meaning that limited offline functionality is available. If caching is disabled, the Pharos system will not function when the Database Server is offline, although the Proxy Server will still monitor the Database Server's status and ensure that communication is restored when it comes back online.
To change the caching mode for all Proxy Services, tick or clear this box.
Server Transaction Limit
In order to limit possible abuse of an offline situation, a limit is placed on the amount of transactions that can be processed by a Print Server in an offline situation. Once the total amount charged through a Print Server reaches this amount, no more printing will be allowed.
To set a transaction limit for all Pharos servers, enter an amount into this field.
User Transaction Limit
When the database server is offline, users' balances cannot be retrieved. This value specified here is used as the default balance for all users in an offline situation. Pharos records all transactions for a user, including account credits.
To set a transaction limit for all users, enter an amount into this field.
This value is specific to a single Print Server for each user, which means a user's balance can fluctuate if they log on to Pharos Stations controlled by different Print Servers while offline. All of their transactions are recorded, however, and when the Database Server comes back online, their real balance will be debited (or credited) by the sum of all of their offline transactions, regardless of where they were performed.
The Offline User Experience
The functionality available to users when the Database Server is offline is detailed below. In all cases, available functions rely on the presence of cached data, which may not always be available. For example, jobs can only be released to a printer if details of the printer are cached - if no jobs had been released to that printer before the Database Server went offline, no data would have been cached, so release to that printer would not be possible. Similarly, a user can only log on to a Pharos Station using their Pharos user details if they had already logged on while the Database Server was online, so that their details could be cached.
Offline Authentication
On sites where users are authenticated against an external system using a Pharos Logon Gateway, authentication is not affected - users will still be able to log on to release stations while the Database Server is offline.
Where users are authenticated against the Pharos Database, they will be able to log on to release stations if their logon details are cached at the Print Server controlling that station.
Offline Printing
Users are always able to submit print jobs from their workstations. The only effect they will see when submitting print jobs in an offline situation is that the Popup Client will not ask them to select a Cost Center in cases where it normally would (Third Party Charging is not available offline - see below).
If users are able to log on to a Pharos Station or Network Terminal, they should be able to release their jobs to a printer. It is possible that a lack of cached configuration data may result in “no suitable printer” being found, or that the job is routed to a printer that it would not normally be routed to. When offline, the Print Server attempts to match a job's attributes to a printer that supports them - if a printer with matching attributes cannot be found (due to insufficient cached configuration data), then the job is not released.
If a job cannot be released offline, it will stay in Secure Release Service Job Store and can be released once the Database Server comes back online, provided the Print Group Job Purge Time has not expired.
Offline Charging
As with authentication, if users are charged to an account in an external billing system via a Pharos Billing Gateway, charging should not be affected when the Database Server is offline.
Where users are charged to their Pharos user account, all transactions are recorded against the user account. In an offline situation, user balances default to the User Transaction Limit. Users can credit their accounts or charge costs to them while offline, and this balance is updated accordingly.
Third Party Charging is not available in an offline situation. Where users would normally be asked to specify a Cost Center to charge to (e.g. at the Popup Client or at a Network Terminal), no such option appears and the cost is recorded against their account.
When the Database Server comes back online, all recorded transactions are forwarded to the Database. Transaction costs are charged according to the following rules:
- If the user uses an account that has available funds, the cost of the transaction is charged to the user's account when the Database Server comes back online.
- If the user recorded for a transaction exists in the Pharos Database and has permission to charge costs to Cost Centers, the cost of the transaction is charged to the "Offline Cost Center" in the "Offline Charging Model" (created when the Pharos Database is installed).
- If the cost of a transaction exceeds the user's balance in the Pharos Database, the resulting transaction is logged against the "Offline" user (created when the Pharos Database is installed).
- If the user recorded for a transaction does not exist in the Pharos Database the cost of the transaction is charged to the "Offline" user.
Pharos also has offline billing features that apply when the system loses contact with a third party Billing Gateway.