Planning considerations
Swift MEAP is very flexible, and may be installed on a great many different types of machines with many different options. This guide is intended as a reference for a basic installation. Furthermore, this guide assumes good familiarity with Windows/Linux commands.
Security
The server can be configured to use HTTP or HTTPS, it can use a single port for all communication or the adminstration console can be configured on a different port to the client (mobile device) users. Splitting ports allows administrators more control, they can restrict who can access the administration console and it does not need to be on a public URL. Network administrators who are familiar with networking filtering / port forwarding / network configuration may be required to alter these settings.
The server / clients can also be configured so that they only use a VPN. In such cases, access is dependent on the client device supporting the VPN. You will need to contact your VPN provider for client availablility. Users will be required to login to a separate VPN application on the client devices before opening the Swift MEAP™ application.
Multiple servers
Swift MEAP™ utilises MySql and Apache Tomcat. Each Tomcat instance can support multiple Swift MEAP™ console applications, so you can install multiple instances on the same physical machine / tomcat instance. However, doing so has some potential drawbacks:
- Each Swift MEAP™ instance will have its own set of jobs running, potentially on different schedules. For example, we poll the data source for all changes since we last connected (usually every 10 minutes). If one instance is installed on a single physical server, it is one job reading/writing all changes to disk for all of its users. If you install a second / third / forth instance on the same machine you are multiplying the amount of disk I/O operations, as well as the amount of memory required to run separate jobs. If one Swift MEAP™ console has a particulary heavy workload, all instances could be affected.
- If errors occur on one environment or an update is required to any one of the Swift MEAP™ servers, a Tomcat restart is sometimes required. This is especially true if a server is being upgraded. Some customers wish to keep separate test / production environments. If you want to support both and they are installed on the same hardware, you cannot restart Tomcat in your Test environment without affecting Production users. Usually restart times are small, but it is a consideration that if one is being restarted, all will be offline for a short period.
- Risk of failure. If there is a hardware / operating system / networking issue and multiple servers are installed, potentially all users of all servers are affected.