System Requirements

Application Architecture

VetView is a web base application consisting of 4 primary components. We have designed the application stack to be scalable both vertically and horizontally for security and user load demands. VetView is a Java based application that uses the Spring Framework, with a commercial UI framework layered on top. Leading Enterprise Java Web Framework | ZK (zkoss.org) 

  • Database - Our strategy for the database is to not embed any business log, background triggers, jobs, etc. The database is limited to sole data persistence. This is to allow vertical scaling and reduce vendor reliance. Below is the current database vender we support.  
    • PostgreSQL Version 13+, Open Source, no additional license required.
    • Oracle 21c+, Licensed independently.  
  • File storage - VetView allows for document and images to be attached in various places in both the Labs and Hospital modules. Files that are attached have its meta data stored in the database, with a UNC path to the physical file. Currently all file storage works through mounted director/folders to the application server. We have in development the ability to use file management services, like AWS S3.
  • Application/Web Server - VetView is a Java web application that is deployed on web servers that support Java containers. Currently we test and support Tomcat version 9 and Java 11 
  • Client Browser - VetView does not require any installation or plugin in the client browser. All major browsers are supported, Chrome, Edge, Firefox, Safari, etc. VetView webs utilize HTML and JavaScript. Supported browsers are also OS independent.  

Minimum Requirement for Testing or limited number of users 

Everything can installed and operated on a single server. We recommend that there be at least 4 cores, 32GB RAM, and 250GB Hard Drive.  

  • OS can either be Windows, Linux, or Mac OS X
  • Database - Oracle or PostgreSQL with 8GB of RAM allocated.
  • Web Server - Tomcat 9 with Java 11, OpenJDK 11 can used, the Java 11 JRE is all that is required. 8GB RAM allocated to Tomcat.
  • Tomcat supports SSL certificate to secure web traffic.

Authentication / Security

  • VetView uses the Spring Security Framework for authentication and session management.  Spring Security Below is a list of currently testing or supporting. 
    • DAO - Database encrypted passwords
    • AD/LDAP - Active Directory - Authentication only
    • JAAS - Custom Java Authentication developed for University of Montreal
    • CAS - Testing
    • SAML - Testing
  • Database access can be locked down to only the web servers and authorized uses for system maintenance or direct data retrieval.  End user credentials cannot be used to gain direct access to the database. 
  • Tomcat support SSL certificates and can be configured for the allowed encryption levels. Apache Tomcat 9 (9.0.82) - SSL/TLS Configuration How-To
  • Privileges once authenticated are controlled internal to VetView is the User Management Module. User Account and Setup Data - User Guides