Tuti Gateway installation¶
Tuti Gateway can be self hosted too as well as our usual managed solution.
Recommended requiremnts¶
Tuti Gateway and its supporting infra runs the best in *NIX platforms. While other platforms can be used, there are hard requirements for Redis. Tuti Gateway relies on redis (in-memory database) to provide extreme performance under heavy workloads. This turns out to be very beneficial and helped us a lot in our design.
EBS and CBOS integations¶
For clients how insists on self hosting Tuti Gateway, EBS integation process is a must. We provide a standard VM that was tested and already in production to help our clients with EBS integrations.
Infra¶
Below is the set of recommended set up to get Tuti Gateway up and running. While Tuti Gateway can run on Windows servers, at least Redis must be run in a Linux instance. Databases are configurable and are up to the org to chose which DB they like. The current base installation of Tuti Gateway comes with SQLite and relies heavily on Redis for user facing apis.
Tuti Gateway api server | db server | redis server* |
---|---|---|
Linux (Ubuntu 20.04) | Linux (Ubuntu 20.04) | Linux (Ubuntu 20.04) |
2 CPUs | 2 CPUs | 2 CPUs |
2 GB RAM | 4 GB RAM | 4 GB RAM |
Note
We use Redis for performance reasons
Docker¶
Tuti Gateway can also be deployed as a docker instance.
Installation¶
- Download Tuti Gateway source code
- cd to Tuti Gateway root directory (E.g., $HOME/src/Tuti Gateway)
- docker build -t Tuti Gateway . # -t for giving it a name
- docker run -it -p 8080:8080 Tuti Gateway:latest
Now, Tuti Gateway is running under http://localhost:8080/. Consult the api for getting up and running with Tuti Gateway.
Note
There are requirements for running Tuti Gateway under docker
- Redis should be used in a dedicated server
- We recommend to use a SQL server (postgres) instead of SQLite
Important notes¶
Tldr
- Tuti Gateway runs on every platform (windows, Linux or Mac). Tuti Gateway compiles into true native machine code and can be run virtually in every platform
- the curren setup doesn't consider load balancing, redis failover or any redunancy steps.