View System Documentation - Hardware and Software Requirements - May 2005
High Level Requirements
- Client (Front End)
- Modern fairly up to date internet browser (IE 5.5+, FireFox, Netscape 6+ etc.)
- Computer hardware and operating system needed to run the above browser
- Internet connection to the server(s) that host the IBIS-PH system(s)
- Typical End User's Computer: 2Ghz Intel Pentium PC with 100GB hard drive, 512MB memory, DSL internet connection, running MS IE 6.0.x.
- IBIS-PH View Application (Back End)
- Java Development Kit (1.5+)
- Java Application Server (Servlet Container 2.3+)
- IBIS-PH View System Web Application
- Any operating system that supports the above Java Application Server and JDK
- Internet connection to the server(s) that host the IBIS-PH system(s)
- Typical Server Computer: Dual 2Ghz Intel Pentium Xeon processors in a 1u
rack mount case, redundant power supplies, (4) 18GB hot swappable Raid 0+1
hard drives, 2GB memory, T3 internet connection, Sun's J2SE JVM version 1.5,
Apache Tomcat version 5.5, MS XP or Linux, MySQL RDBMS, both IBIS-PH View
and Data Administration applications.
Low End Server:
Single 2ghz Intel Pentium IV or AMD Athlon CPU, 512MB of memory, 40GB hard disk, Linux or Windows98, Java J2SE JDK 1.5, Tomcat 5.5, and the IBIS-PH View Application. This configuration will run the application just fine in a light load environment. It will not be as manageable nor as potentially reliable as a redundant hot swappable server but if cost is a factor and if testing or deploying into an environment that has a light load then this configuration will do the job.High End Server:
Clustered multi-processor Sun or IBM server environment with a centralized SAN running many apps on a centralized IBM's Websphere Java App Server on MS-Windows XP Server or Unix etc. A configuration like this is on the other end of the price spectrum and can cost hundreds of thousands of dollars when considering hardware, commercial software, and the IT labor costs. - If Query System Option Installed/Desired then need connection to IBIS-Q SAS Server.
Front End Client Internet Browser Requirements
- The IBIS-PH system produces HTML 4 and utilizes newer Javascript techniques and object calls so a modern, up to date browser is required. The system has been heavily tested with MS Internet Explorer 6.x on Windows/Intel based hardware since it dominates the installed base of browsers. Netscape Navigator versions 6+, Firefox version 1+ have also been heavily tested and found to work. Opera version 7+ and IE 5.x have also been tested and found to mostly work (although there are some issues with CSS and the SVG plugin which is the next item discussed). IE on the Mac has been shown to be problematic. Other modern compliant browsers should work but have not been tested.
- Charts and graphic images are available in two formats: Scalable Vector Graphics (SVG) and JPEG. SVG graphic images allow for higher quality charts which are interactive and able to be resized without jaggies. For SVG graphics, an SVG browser plugin is required. The most widely used SVG plugin is from Adobe Systems. Their current offering is called SVGViewer 3 and is available as a free download from their web site. This plugin works great with MS-IE 5.5+ but is spotty for all other browsers. FireFox has SVG built in but the Charting package that the IBIS system uses does not produce 100% compliant SVG code so the native SVG option of FireFox does not work. Also, as of 2008, Adobe will no longer support this plugin although it will remain on their site for a free download. There has been reported several other browser plugins but as of 2007 there are not any plugins that work better than those provided by Adobe. Another known issue with SVG is that in some browsers CSS positioned elements will not overlap an SVG embedded object so some page content and navigation menus can be chopped off as soon as they encounter the boundary of the SVG chart/map.
- Some IBIS web pages only work with Javascript Enabled. However, most of the site can be navigated and used without having Javascript enabled.
- Browser cookies are also recommended for this system but are not 100% required but it is highly recommend that they be enabled. Permanent/persistent cookies are used to keep track of the user's desired graphics type and Query system's user preferences. Temporary cookies are used/needed by the Query system to keep track of a user's module selections and intermediate query results on the backend server. It is possible to not enable temporary cookies and have the system track the user's session via URL rewriting but this has not been tested.
Current Utah System
As of May 2005 Utah is running the Admin, View, and IBIS-Q applications on two different servers. The first hosts the Admin, View systems as well as the MySQL RDBMS with the other server hosting the IBIS-Q system (along with the SAS software and SAS datasets). In the past it has been on as many as four servers View and Admin on a Sun iPlanet box, Oracle on an IBM mainframe, and IBIS-Q/SAS on an HP-UX box. The View, Admin, and MySQL RDBMS portion of the system uses:- Compaq 257917-001 Proliant Model DL380 with redundant power supplies
- duel 2.40GHZ Intel Xeon processors
- 3GB RAM
- (4) 18GB 15k ultra 320 SCSI's running raid 0+1 (and are hot swappable)
- SuSE Linux operating system
- Tomcat 5.5 web and Java application server
The server runs at about 10% utilization with an occasional peak of around 85%. It was purchased in 2004 for under $5,000.
NOTE: The entire IBIS system (View, Admin, relational database, IBIS-Q, and SAS) is
capable of being hosted on a single machine but is equally well suited for being hosted
on many machines in a distributed environment. The single, minimalist server described
above should provide acceptable performance for light to moderate loads. If using with
the query system with everything on one box then more CPU and faster disk IO is highly
recommend to handle the demands of SAS. If the system is distributed among several
machines then a high speed LAN/WAN is also an important factor in overall system performance.
Basically, better performance will be achieved with a faster and more powerful machine(s).
However, the end user's experience is probably going to be determined more by the speed of
the network connection between them and the server since most backend servers easily handle
the minimal IBIS application load.
Data Storage
Data Storage Capacity for the IBIS-PH View System is not very large in light of today's high capacity disks. Utah's IBIS-PH View system currently uses approximately 5 gigabytes of storage space for the View System. Most of this space is used for a cache which stores some of the dynamically generated HTML content to the disk for increased performance.Web Server
Web Server (if using as a front end to the Java app server e.g. IIS or Apache instead of the Java app server's built in web server). This is not required but can be used as a front end proxy to centralize web trending and to aid in network security. If this is desired then that servers hardware/software requirements would need to be considered (typically this is minimal). The web server must be able to handle/be configured/setup for proxy or forwarding/handling the requests/responses to/from from the Java application server which contains the IBIS-PH View system. Microsoft IIS and the Apache web server are two of the more common web servers that are capable of interfacing with a backend Java application server.Internet infrastructure/connection
Internet infrastructure/connection for the server(s) that are hosting the IBIS system and any related web servers (any needed networking and proxy configurations as well as firewall configurations as required by IT infrastructure).Java Web Application Server
- Java web application server (Java HTTP servlet container). The best known free, open source packages include JBoss and Apache's Tomcat. Commercial packages include IBM's Websphere, Sun's SunOne (Iplanet), BEA's WebLogic, and many others. If using Tomcat see the Tomcat Setup document for tips on setting up Tomcat.
- Java JDK version 1.5+. Installed and setup to be used by the Java application server.
- Java J2EE JDK version 1.3+. Installed and setup to be used by the Java application server (if not already included as part of the Java application server).
- Setup/configure the XML parser package(s). See the Java 1.4 & 1.5 XML Parsers document for more information about the specific information concerning this topic.
- If the operating system is a variant of Unix (e.g. Linux, AIX, HP-UX, Solaris)
then the "headless" java environment variable needs to be set. This is needed
by the Batik package to be able to convert SVG to JPEG/PNG type images. The
following shell script can be included in the init.d or in the catalina.sh script
files:export JAVA_OPTS='-Djava.awt.headless=true'
- IBIS-PH View software package. This open application/system software must be deployed to the Java web application server. Most app servers have mechanisms to deploy a war file to their environment (For Tomcat this can be as simple as copying the "ibisph-view_version_x_y.war" file to the tomcat/webapps directory and restarting or can be done using the Tomcat Admin system). If not Tomcat then you will need to consult with your system administrator.