Caliber Innovation
Application architecture
Caliber is a browser-based application
using servlets running on Java servlet container such as Apache
Tomcat or IBM WebSphere. The browser uses Web 2.0 or
Unique design
Only static HTML is delivered to the browser
from the server, and it is dynamically manipulated by Web 2.0/AJAX
techniques using the JavaScript/ECMAScript language. In this way the
traffic between client and server is greatly reduced because the
static forms are delivered once and thereafter cached, with
subsequent traffic being confined to data only. The user’s
experience is greatly enhanced as they don’t have to wait for the
entire page to be refreshed, but only the dynamic data within it (no
“white screens”). Traditional applications, such as JSP, ASP or PHP,
combine the static HTML with the data on the server and then
transmit the whole page to the browser which then has to render it
from scratch, even if only a small amount of data has changed.
All business logic is implemented using
the JavaScript language. For interactive processes this is embedded
in the HTML pages. Batch-based background processes, either
on-demand or scheduled, use standalone scripts executed in a Rhino
scripting engine. The benefit of this approach is that the entire
user interface and business logic is exposed to the user, and, given
the appropriate authority, can be easily modified to suit the
client’s particular requirements. The combination of HTML and
JavaScript is probably the world’s most well-known programming
language, vastly reducing the costs of maintenance in comparison
with complex Java, PHP or J2EE environments, for example.
All consumers of the service (browsers, web services, scripting services, client/server applications etc.) must communicate using Caliber’s proprietary transaction protocol. Only the innermost data server layer is privileged to access the data using JDBC. This approach greatly enhances the security of our customers’ data. Other more traditional approaches require the database owner’s ID and credentials to be distributed amongst all consumers of the database or their intermediate agents. Also the same data server is used to service a particular transaction, whether the requester is a browser or web service or whatever, contributing to code reuse and rapid application development. Traditional applications have to rewrite the data access layer to handle new consumers.
Physical security and
connectivity
Users have their own user IDs and
passwords. These credentials can be stored in the Caliber database.
Browsers can communicate with the service using HTTP or HTTPS
protocols, depending on the client.
The hosted environment is in DigiWeb in
Blanchardstown Dublin 15. Access to the business park is controlled
by security gate. Access to the building itself is tightly
controlled and uses the latest biometric identification procedures.
The building has two separate power
supplies in addition to its own power plant. It has two separate
fibre optic connections north and south and a backup satellite
connection to the internet backbone.