KMW Reisen GmbH

KMW Reisen GmbH

4 Followers
Provider of short trips, especially in DACH region
kurz-mal-weg.de
DE / Leipzig

Decisions 2

Daniel Hundt

Senior Software Engineer at KMW Reisen GmbH

We use Redis as common in-memory cache for our distributed php processes. Since it also provides message-queue functions and was already in our stack, we didn't use an alternative like RabbitMQ for async handling. We have a multi-instance setup (configured via Ansible) on our maschines. High-Availaibility is configured via Redis Sentinel and HAProxy. The HAProxy-HAProxy setup is also responsible for SSL encryption. We could not use twemproxy since not all commands our application uses are supported.

7 23.6K

Daniel Hundt

Senior Software Engineer at KMW Reisen GmbH

We were not happy with the price/performance of Amazon RDS (Aurora) and wanted a high availability setup. In order to keep the price low and be compatible with the MySQL API, we decided to try Percona Xtra DB Cluster. Setup was rather complex but could be automated via Ansible. We now run multiple instances (with separate resource limits) on our servers. Since ProxySQL won't support the "LOAD DATA" statement, we used a HAProxy-HAProxy Setup in tcp-mode, which would also give us transparent SSL encryption without changes in the application. For health-check and monitoring we wrote a small express.js application that sends request to all instances and exports in the Prometheus format.

4 1.7K

Followers 4