User Tools

Site Tools


system_requirements

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
system_requirements [2022/03/23 11:18]
angelos [On-premise installation]
system_requirements [2022/11/17 11:47] (current)
angelos [Operating system and software prerequisites]
Line 1: Line 1:
 ===== System requirements ===== ===== System requirements =====
  
-System requirements,​ software prerequisites,​ and other recommendations are described in a separate document [[https://​host.pathomation.com/​pdf/​requirements-2019.pdf|"​System Requirements"​]] (but probably not as elaborate as in that document) 
  
-==== On-premise installation ====+==== Operating system and software prerequisites ==== 
 +In principle any version of Windows + Internet Information Server (IIS) will do. We've got the software to 
 +run on IIS Express edition for demonstration purposes. We offer the following formal guidelines:​ 
 +^ Component ​     ^ Minimum ​      ^ Suggested ​         ^ 
 +| Operating System ​   | Windows 2016 Server ​    | Windows 2022 Server | 
 +| Web Server| IIS 7.5 | IIS 10.0| 
 +| .Net Framework | 4.7.2 | 4.7.2 | 
 +| RDBMS | Microsoft SQL Server 2017 with Full-Text Search enabled| Microsoft SQL Server 2019 with Full-Text Search enabled| 
 + 
 +=== Additional comments regarding SQLServer === 
 +SQL Server Express can be used but poses two limitations which have to be taken into account: 
 +  * The maximum database size cannot exceed 10GB.  
 +  * Only one CPU core is used to execute queries. 
 +  * [[https://​hub.acctivate.com/​articles/​what-microsoft-sql-server-express-editions|Click here for more background]]. 
 +==== On-premise installation ​hardware requirements ​====
  
 ^ Component ​     ^ Minimum ​      ^ Suggested ​         ^ ^ Component ​     ^ Minimum ​      ^ Suggested ​         ^
Line 20: Line 33:
 | Network interface ​   | 100MBps | 1Gigabit| | Network interface ​   | 100MBps | 1Gigabit|
  
-=== Additional comments regarding SQLServer ​=== +=== Security considerations ​=== 
-SQL Server Express can be used but poses two limitations which have to be taken into account: +PMA.core does not offer any intrusion detection system. When installing the system on premises, it is highly recommended ​to review the security policies of the host computer and the network it belongs to and configure it accordingly
-  - The maximum database size cannot exceed 10GB+ 
-  - Only one CPU core is used to execute queries.+=== Date and time configuration === 
 +PMA.core relies on the host computer'​s date and time for all operations that involve the current time, such as logging events. Hence, in order for the system to operate correctly and reliably, it is mandatory ​to configure the system'​s time correctly and have it periodically sync with a time server.
  
 ==== Installation on an AWS Virtual Machine ==== ==== Installation on an AWS Virtual Machine ====
Line 46: Line 60:
 Additionally,​ slides can be stored either on local disks attached to the VM or in Azure Blob Storage. Additionally,​ slides can be stored either on local disks attached to the VM or in Azure Blob Storage.
 When possible, it is recommended to prefer [[https://​docs.microsoft.com/​en-us/​azure/​storage/​blobs/​data-lake-storage-introduction|Azure Data Lake Storage Gen2]] over plain Azure Blob Storage, as this type of service performs directory management operations, such as moving and renaming slides and directories,​ a lot faster. When possible, it is recommended to prefer [[https://​docs.microsoft.com/​en-us/​azure/​storage/​blobs/​data-lake-storage-introduction|Azure Data Lake Storage Gen2]] over plain Azure Blob Storage, as this type of service performs directory management operations, such as moving and renaming slides and directories,​ a lot faster.
 +=== PMA.core cache requirements ===
 +Regardless of the choice or combination of the storage media used, the system requires some space on
 +a local or network disk where cache data will be stored and accessed. PMA.core allows you to define
 +the cache retention policy and informs you about it's size. As a general rule of thumb, the cache
 +capacity should be around 10% of the total size of the available whole slide images.
 +==== Client Side =====
  
 +During development our software is continuously tested on the Microsoft Windows Operating System
 +using the following browsers: Internet Explorer 10+ and the latest versions of Google chrome, Safari and
 +Firefox.
 +
 +=== Desktop or workstation hardware ===
 +The minimum requirements in terms of processor speed and memory (for end-users) are hard to
 +determine. We are pretty sure that every computer younger than 5 years will be able to interface with the
 +platform using a webbrowser without any problems. In case of doubt, we refer to the particular system
 +requirements that apply to the specific version of flavor of webbrowser that is being used.
 +=== Web browser ===
 +A hosted web application is consulted through a (usually) remote computer on the internal company
 +network (or Internet). To allow the delivery of content to as many clients as possible, we have very
 +relaxed requirements in terms of client hardware and software requirements.
 +Key is that we don't require any additional webbrowser-plugins such as Flash, Silverlight,​ WebGL, or
 +Java.Nor do we depend on or do we install any additional browser add-ons (BHO - Browser Helper
 +Objects) ourselves.
 +You will need a modern HTML5-capable webbrowser. This means that your browser must be configured
 +to allow JavaScript and accept cookies. Besides that, we've tested our software extensively on a host of
 +different web browser environments,​ and found it to operate under almost all, except Internet Explorer 10
 +or lower. For the best user experience, we recommend using Mozilla Firefox, Microsoft Edge or any
 +Chromium based browser such as Google Chrome and Opera. On a Mac, you are welcome to use
 +Safari, Firefox or, again, any Chromium based browser.When a browser is not supported, an error message follows.
 +{{ ::​screenshot_2022-05-04_at_11-37-27_the_pathomation_software_platform_for_digital_microcopy_version_2_system_requirements_-_requirements-2019.pdf.png?​400 |}}
 +Because of content delivery through a web browser, interfacing with our software is not limited to
 +Windows-only machines (though the web applications themselves run on Microsoft infrastructure). Our
 +communication implementation is based on REST web services and the standard HTTP protocol, so you
 +can truly use our software from anywhere, any time
 +=== Popup-blocking and Ad-blocking ===
 +Our software uses dialogs as a means to interact with the end-user. These dialogs are implemented
 +based on "best practice"​ industry standards (including libraries such as React and jQuery). These
 +dialogs are not pop-ups, and during testing, no interference with known pop-up blockers was ever
 +observed.
 +That being said, it is possible that at some point in the future these pop-up blockers pick up features in
 +our site and label them as popups, subsequently rendering them ineffective. If this happens, you should
 +let us know and we will help resolve the issue in collaboration with you popup blocking software vendor.
 +The same reasoning applies to webbrowser plugins that block advertisements. These oftentimes already
 +target the kind of technology that we use ourselves to interact through dialogs (such as iframes). There is
 +a large variety of possible interpretations of such features (in a website), and while we haven'​t come
 +across this yet, it is possible that at some point a certain feature of our site gets interpreted as
 +commercial content. If this happens, you should let us know and we will help resolve the issue in
 +collaboration with you advertisement blocking software vendor.
 +If you experience problems on your installation,​ please let us know and we will find a solution to resolve
 +your particular issues
 +==== Configuration hints and scaling considerations ====
 +=== Improving disk I/O throughput ===
 +The system'​s response time can be greatly improved by installing it on a solid state disk. The cache
 +directory should also be kept on an SSD as well. Thus an optimal setup would be to install the operating
 +system and the application on an SSD while storing digital slides in regular hard disks (or network
 +shares). Do not underestimate the importance of the regular disks' performance,​ where slides are stored,
 +though. Whenever possible use 6Gbit SATA III disks.
 +=== Network ===
 +Multiple NICs may be installed onto the server machine to increase network bandwidth. The system can
 +utilize multiple IP addresses or host names out of the box, thus special load balancing configurations are
 +not required.
 +=== Parallel processing ===
 +The system is built to process requests in parallel and its performance depends on the available cores
 +per processor, the performance per core, as well the total number of processors in the system. In
 +environments with more than 50 simultaneous users, two processors should at least be available in the
 +system.
 +=== Azure DataLake Storage Gen2 ===
 +When possible, it is recommended to prefer [[https://​docs.microsoft.com/​en-us/​azure/​storage/​blobs/​data-lake-storage-introduction|Azure Data Lake Storage Gen2]] over plain Azure Blob Storage, as this type of service performs directory management operations, such as moving and renaming slides and directories,​ a lot faster.
system_requirements.1648023522.txt.gz · Last modified: 2022/03/23 11:18 by angelos