Remote Deployment

Ability to update application remotely without interrupting the application server is one of the important features of HyperServer. This feature enables developers to update their web application in a transparent way without a need to stop the application server. All they need to do is upload the new version from HyperServer control panel or send a new binary remotely using FTP or other file transfer methods.

Remote Deployment can be done in two different ways:

  • Remote Deployment using HyperServer Control Panel

  • Remote Deployment using special "deploy" folder

Remote Deployment using HyperServer Control Panel

In order to update the application using HyperServer Control Panel follow these steps:

1

Open Server Monitor

Navigate to: http:///server (For example: http://localhost:8077/server)

At the login screen enter Id and Password for a server monitor account with administrative rights.

clip0148
2

Select HyperServer tab and Upload

Select the HyperServer tab and then click the Upload (Upload New Version) icon on the toolbar.

clip0149
3

Choose executable and upload

Select your new executable file and click Upload button to complete the upload operation.

clip0150
4

Acknowledge the update

You will be prompted to acknowledge updating your application using the uploaded executable file.

clip0151
5

Observe Nodes being marked Discarded

After you acknowledge the update operation, all existing Nodes will be marked as Discarded.

clip0152

Discarded Nodes will not accept new sessions. All new sessions will be directed to new Active Nodes. You can run different versions side by side: older versions continue serving existing sessions while new sessions are directed to nodes running the new version. As soon as all older-version sessions log out, Discarded Nodes will be purged and only Active Nodes running the new version will remain.

clip0153
6

Ensure version info is present in executable

Version information for each Node is retrieved from version information embedded in your Delphi application. Make sure you have enabled version information and auto increment build number option in the Delphi IDE.

clip0154
circle-info

Important: If you are using ISAPI DLL version of HyperServer make sure you have adjusted the IIS upload file size limit: https://unigui.com/doc/online_help/adjusting-upload-limit.htm

Remote Deployment using special "deploy" folder

Another method to update your application remotely is using a special folder named deploy. This folder is automatically created when HyperServer runs for the first time. It is located under your application folder.

clip0155

To deploy your new version follow this procedure:

1

Copy new executable to deploy folder

Copy your new executable (e.g. hyper.exe) into the deploy folder (e.g. webapp32/hyper/deploy).

2

Rename file extension to .dep

After copying, rename the copied file and change its extension from .exe to .dep (e.g. rename hyper.exe -> hyper.dep).

This procedure can be automated using a batch file.

3

Alternative: use FTP then rename to .dep

You can also use FTP to send the new file to a remote deploy folder. After transfer, change the file extension to .dep.

Example: ftp> cd webapp32/hyper/deploy ftp> put hyper.exe ftp> rename hyper.exe hyper.dep

HyperServer continuously monitors the deploy folder and as soon as it detects a file with extension .dep it will start deploying the new binary. The .dep file will be erased upon completion of deployment.

chevron-rightImportant Notehashtag

You should never copy/send a file directly with extension .dep to the deploy folder. Doing so may lead to a corrupted Node executable file and a failed deployment.