PrizmDoc Viewer v13.14 - Updated
Administrator Guide / PrizmDoc Application Services / Server Sizing
In This Topic
    Server Sizing
    In This Topic

    Introduction

    The PrizmDoc Application Service (PAS) can run on a wide variety of server configurations. It will automatically scale to utilize available cores, and payload data is streamed as much as possible to reduce RAM usage. It is typically external dependencies like the PrizmDoc Server, which PAS uses for process-heavy conversions that can affect its perceived responsiveness.

    PAS may also be configured to run on multiple servers. This, combined with modest hardware requirements, means that smaller, low-cost servers can be used and scaled horizontally (more servers are added) when additional capacity is needed.

    Network Throughput

    Many requests handled by PAS will result in a HTTP request to PrizmDoc Server. If PAS and PrizmDoc Server are hosted on separate servers, it is important to have good network throughput between nodes for optimal performance.

    Example Server Configurations

    The following minimum requirements can reasonably support 500 native PAS requests per second. A native PAS request is one that PAS handles entirely and does not depend on a supporting resource like PrizmDoc Server to fulfill the request.

    Minimum Requirements

    • Logical Cores: 1
    • Memory: 0.5 GB (Linux) / 1 GB (Windows)
    • Drive Type: SSD
    • AWS: t2.nano (Linux) / t2.micro (Windows)

    Suggested Requirements

    • Logical Cores: 2
    • Memory: 4 GB (Linux) / 8 GB (Windows)
    • Drive Type: SSD
    • AWS: t2.medium (Linux) / t2.large (Windows)

    Additional Considerations for Pre-Conversion Services

    When enabling the Viewing Packages feature, there are additional considerations for hardware requirements. This feature requires a database and will cause PAS to make additional HTTP requests to PrizmDoc Server, increase Disk IO, and execute queries against the database.

    Network Throughput

    If the database is hosted on a separate server, it is important to have good network throughput between nodes for optimal performance.

    File Storage

    PAS will use the file system to store all artifacts of a viewing package which increases the amount of storage needed by the service. The amount of storage needed is very closely tied to the number of active viewing packages and the types of documents being viewed. For example, a viewing package of a 100 page document requires several times the storage that a 1 page document needs. Likewise, a document page that contains drawings and images will consume more storage than a page with just text. Testing with a representative set of sample documents is recommended to understand the file storage requirements of a specific application.

    Database

    PAS will store various bits of metadata about each viewing package in the configured database. The total amount of data stored for a viewing package in the database partly depends on the number of pages in the source document. However, the metadata size is not currently affected by the content of individual pages. Again, testing with a representative set of sample documents is recommended.

    Example Server Configurations

    The following minimum requirements can reasonably support 5 simultaneous viewing package creation processes per logical core. However, viewing package creation is heavily dependent on PrizmDoc Server for generating content. As PAS instances are scaled up, the supporting PrizmDoc Server instances must be scaled up appropriately to avoid overloading them. Additionally, the overall number of simultaneous viewing package creation processes should be throttled to avoid overburdening the system.

    Minimum Requirements

    • Logical Cores: 2
    • Memory: 4 GB (Linux) / 8 GB (Windows)
    • Drive Type: SSD
    • AWS: t2.medium (Linux) / t2.large (Windows)

    Suggested Requirements

    • Logical Cores: 2
    • Memory: 8 GB
    • Drive Type: SSD
    • AWS: m4.large