Skip to content

Mnwa/sonya

Repository files navigation

Welcome to SonyaWQ 👋

Version License: MIT

SonyaWQ is a fast, distributed queue that provides a flexible realization of the Web Queue in Web Queue Worker architecture. SonyaWQ realize Service Mesh architecture with service discovery support.

The Web-Queue-Worker architecture defines a web portion that handles HTTP requests and a worker portion that handles time or processing-intensive operations. A queue is used for asynchronous communication between the web and the worker.

Top use cases

Heavy requests

Move your long time and heavy tasks to backend workers. When they will be processed notify clients with SonyaWQ.

Broadcast updates between clients

Notify clients about any changes on every device.

Interactive

Add interactive for your clients.

Chat rooms, text editing, playing chess, etc.

Features

Flexible configuring

SonyaWQ supports simple and flexible configuring.

You don't need to use any configurations to up the simple service

Simple API

SonyaWQ has a simple API that can be used from websites frontend, backends, and other services.

Distribution

SonyaWQ supports service mesh architecture.

Request tokens protection

SonyaWQ provides the JWT and Service Token requests protection support.

Save state changes

SonyaWQ uses the sequences mechanism that saves from losing data when the client has some troubles.

Architectures visualization

One queue

All clients and backends will use only one queue. Good solutions for small projects.

Queue only schema

Service Mesh

With proxies will automatically distribute queues messages between some queues. The best solution for increasing your scalability.

Queue only schema

Author

👤 Mikhail Panfilov

🤝 Contributing

Contributions, issues, and feature requests are welcome!
Feel free to check issues page.

Show your support

Give a ⭐️ if this project helped you!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published