PrizmDoc Viewer v13.19 - Updated
In This Topic
    Administrator Guide (Self-Hosted)
    In This Topic

    Introduction

    This section explains how to deploy and administer your own self-hosted PrizmDoc Viewer backend.

    Architecture Overview

    The PrizmDoc Viewer backend is comprised of two tiers, PAS and PrizmDoc Server:

    • PrizmDoc Server, the technical heart of the product, is a document processing and conversion engine. It is compute intensive but has no permanent storage.

    • PAS is a layer in front of PrizmDoc Server responsible for viewing concerns, such as saving and loading of annotations. As such, PAS requires access to a storage system which you manage (there are several supported options; see more below).

    An application can send REST API requests to both of these tiers:

    • For viewing, an application will send HTTP requests to PAS (and PAS will, in turn, send requests to PrizmDoc Server):

    • For document processing (like file conversion or redaction), an application will send HTTP requests directly to PrizmDoc Server:

    Load Balancing and Cluster Management

    It is common in a production deployment to run multiple instances of PAS and PrizmDoc Server. The PAS and PrizmDoc Server tiers are conceptually independent, and each should be fronted by a load balancer of your choice:

    Application developers needing to make PAS or PrizmDoc Server REST API calls should only send their requests to the load balancer sitting in front of the tier they are calling.

    For PAS, any incoming request to the PAS tier can be routed to any PAS instance. You can use any off-the-shelf load balancer in front of your PAS instances (there is no need for anything like sticky sessions). Any PAS instance is capable of directly handling any request.

    For PrizmDoc Server, the process is similar. Any incoming request to the PrizmDoc Server tier can be sent to any PrizmDoc Server instance. You can use any off-the-shelf load balancer in front of your PrizmDoc Server instances (there is no need for anything like sticky sessions). However, this is not because any PrizmDoc Server is capable of directly handling a request. Rather, this is because PrizmDoc Server instances are capable of routing any incoming request to the correct PrizmDoc Server instance in the cluster (the instance where document processing is actually occurring).

    In order for PrizmDoc Server's automatic routing to work correctly, each PrizmDoc Server instance MUST have an up-to-date, accurate list of all of the instances in the PrizmDoc Server cluster. Each time you add or remove PrizmDoc Server instances to your cluster, you must inform each instance that the server list has changed (you can do this with a REST API call to each instance). For more information about this, see Cluster Server Environments > PrizmDoc Server.

    Supported Storage Options for PAS

    Your PAS instances will need to be configured to use some sort of shared storage. PAS supports several options for this:

    • File system (such as network attached storage)
    • Microsoft SQL Server
    • MySQL
    • Amazon S3
    • Azure Blob Storage (beta)

    For more information, see PAS Configuration.

    Licensing

    Self-hosted licensing is based upon your use of PrizmDoc Server. Each PrizmDoc Server instance you run must be configured with your license key (PAS instances do not require a license key to run).

    For your convenience, PrizmDoc Server automatically runs in evaluation mode without a license: images may be displayed with a watermark on them and occasionally dialogs may be posted reminding you that PrizmDoc Viewer is in evaluation mode with a fixed feature set. When you are ready to deploy to production, a license will be required to run PrizmDoc Server in your production environment. Please contact info@accusoft.com to obtain a deployment license. For more information, see Deployment Licensing.

    Deployment Options

    For both PAS and PrizmDoc Server, we offer ready-to-run Docker images as well as Windows and Linux installers.

    PAS

    For PAS, deploying is easiest with Docker, and we recommend you use the PAS Docker image.

    Deployment Option PAS Pre-Installed
    Docker Yes
    Windows Installer No
    Linux Installer No

    PrizmDoc Server

    For deploying PrizmDoc Server, we recommend you use the PrizmDoc Server Docker image.

    It largely depends on whether you need to render with Microsoft Office. If you do, then your only option is to deploy to a Windows machine with our Windows installer. However, if you plan to use PrizmDoc Server's built-in LibreOffice rendering, you can use any of our deployment options, including the Docker image.

    Deployment Option PrizmDoc Server Pre-Installed Office Rendering
    Docker Yes LibreOffice
    Windows Installer No LibreOffice or Microsoft Office
    Linux Installer No LibreOffice

    Minimal Backend Quick Start

    If you just want to quickly setup a single instance of PAS and PrizmDoc Server running on a single machine (perhaps for evaluation), check out our Minimal Backend Quick Start.