24da0c8cfb
Co-authored-by: Monta <monta@HP-ProBook-445-14-inch-G9-Notebook-PC-505aadfc.localdomain>
35 lines
2.1 KiB
Markdown
35 lines
2.1 KiB
Markdown
---
|
|
description: Here is the list of our middlewares and their usages.
|
|
---
|
|
|
|
# 📚 Our stack
|
|
|
|
Write an article describing our stack at Twake Drive composed of:
|
|
|
|
- In full mode a docker containing: node, react behind nginx, elasticsearch, scylladb, redis, rabbitmq
|
|
- In simple mode a docker containing: node, react and mongodb for db and search
|
|
|
|
### Simple mode
|
|
|
|
The simple mode of Twake Drive messaging app is designed for quick setup and development purposes. It is a more straightforward mode that uses a single container to deploy the components. The technical stack of this mode includes the following components:
|
|
|
|
- Node: A JavaScript runtime environment used to develop server-side applications.
|
|
- React: A JavaScript library used to build user interfaces.
|
|
- MongoDB: A cross-platform document-oriented database used to store and retrieve data.
|
|
|
|
The simple mode is great for companies that want a quick and easy setup for their messaging app. It requires less technical expertise and is ideal for small to medium-sized businesses.
|
|
|
|
### Full mode
|
|
|
|
The full mode of Twake Drive messaging app is designed to handle large-scale production loads with more than 1000 active users. It uses a container-based approach to deploy the components and ensure scalability. The technical stack of this mode includes the following components:
|
|
|
|
- Node: A JavaScript runtime environment used to develop server-side applications.
|
|
- React: A JavaScript library used to build user interfaces.
|
|
- Nginx: A web server used as a reverse proxy to distribute incoming requests to the appropriate backend service.
|
|
- Elasticsearch: A distributed search and analytics engine used to perform advanced search operations.
|
|
- Scylladb: A NoSQL database used to store large amounts of structured and unstructured data.
|
|
- Redis: An in-memory data structure store used to implement caching, messaging, and pub/sub functionalities.
|
|
- Rabbitmq: An open-source message broker used to transmit messages between applications.
|
|
|
|
The full mode is ideal for companies with large-scale deployment requirements but requires more technical expertise to install and maintain the infrastructure.
|