Services Configuration

The Theatre Manager Server provides all web services. It is designed with the following criteria in mind:

  • Deliver performance by
    • Taking advantage of multiple CPU's on current machines by setting up multiple processes
    • Providing background worker processes that automatically take care of longer processes such as email or cart cleanup
    • Providing support for the standard Apache or Nginx Load Balancer for multiple servers
  • Simplify Setup and Management by
    • Handling web services for all outlets in one server while preserving branding for each outlet
    • Run as a service that will automatically restart in case of failure or machine restart
    • Being aware of system updates and automatically intalling them in the background with no outage.
  • Increase Deployment Options by
    • Running on OSX and Windows (linux possible in future)
    • Providing support for other high performance web servers (currently NGINX)

Installer Download Locations

Steps to Configure the Theatre Manager Server

The Following steps are used to configure the Theatre Manager Server:
  1. Theatre Manager Setup:
  2. Test your web pages to make sure the server is working. At this time, we suggest a log in, finding an event, adding it to the cart, and going to the checkout window.

Configuring Theatre Manager Server

Getting the Theatre Manager server to work requires the following steps

Using the Director to configure Theatre Manager Server

On OSX, if you enter the URL http://127.0.0.1:3012 and do not see the 'Director' screen to the right, you may need to start the process (or stop/start the process) using terminal commands.

On Windows, you may need to:

  • stop and start the Theatre Manager Server service - or-
  • use the latest Firefox, Chrome, Opera or Edge browser. (The Director does not support IE 10 or less).

Make sure you have enough permitted connections in postgresql.conf setup for the postgres database to handle the processes you configure.

Connect to Theatre Manager server using your browser and entering the URL http://127.0.0.1:3012. You will see a web page like the one to the right. It will help you configure what is best for your machine by making recommendations for number of processes.

 

General

Enable Automatic Update

Theatre Manager Server is designed to auto update when a new version is released. If you wish to disable the feature, make sure to disable it on all machines. If it is enabled, make sure it is enabled on all machines.

Enable Services

Enable this if you want to set up the online sales and REST api

Enable Web Server

This is enabled if this TM server will be acting as the primary load balancer and/or template server for custom web pages. Normally one of these is enabled - and has extended setup.

 

Services Database

In the database section, you will need to enter the IP address of the database server and provide the Database Name.

 

Services

The values that you enter for the processes depend on the number of CPU's, amount of memory and other processes running on the machine. The suggestion provided is for a machine dedicated to Theatre Manager server. It if it also running the database on the same machine, you will need to reduce the number of processes.

Web Listeners

Web Listeners are the actual processes that respond to an online web request from a patron purchasing online or to the REST API.

Typically (assuming a dedicated machine), the second generation server can be set to have one less process than the number of CPU's on the machine. A general rule of thumb is that you need about 1 meg of ram for each process including operating system, so make sure not to start more than you have available memory.. (Note: each process actually only uses about 400Mb, but the operating system and buffers require their own space). For example:

  • a 4 core machine with 4 gigs of ram could start 3 processes
  • a true 8 core machine could start 7 processes, although you may not need that many.
  • a dual 4 core with hyper-threading should only start 3 process. (It is best not to count the hyper-threaded cores as real CPU's)
  • a machine with 4 gigs of ram, regardless of the number of cores, should have no more than 3 listeners set up
  • a machine with 8 gigs of ram could have 7 processes, if it had enough cores. We would suggest 5 or 6 normally

Classic Listeners

Designate the number of classic listeners that you might need to handle some tasks that the main web listeners cannot do (yet)

  • Each Classic process needs about 400 megs of ram for buffers.
  • They are used for few processes and for plugins, so generally a ratio of 2 classic listeners for each web listener is reasonable on each machine.

Housekeepers

Housekeepers are used to handle background activity. Typically, this value is always 1. Housekeepers:

  • Clean up expired carts on a periodic basis.
  • Send out scheduled emails automatically.
  • Perform daily database jobs like purging expired web logs, etc

 

General Note

In general, if you count all your processes, multiply by 500mb each and make sure that is well under the total ram in the computer. It is far better to have two machines for web services than over-commit one machine

TM Server Company Preferences

The picture below has sample settings in company preferences Director tab that will handle the single router/DMZ settings. Refer to help about Company Preferences if you are unsure how to configuring this window.

The key things to note are:

  • The web Server URL should have 'https:' and use the URL of your ticketing web site. This is typically 'tickets.xxxx.org'
  • The web server port should be blank which means use the standard https: port of 443. This generally never needs changing.
  • The template page URL should NOT have 'https:' (it should only be http:) and should refer to the direct internal IP address of the main TM Server containing the web page templates
  • The Template Page PORT should be 8111 -- meaning FORWARD any requests for custom pages to the TM Server on port 8111.