Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/arkitektio/rekuest-server
node repositry and distibuted task assignment to actors within the arkitekt platform
https://github.com/arkitektio/rekuest-server
actor-model arkitekt arkitekt-service message-broker rekuest task-assignment
Last synced: 19 days ago
JSON representation
node repositry and distibuted task assignment to actors within the arkitekt platform
- Host: GitHub
- URL: https://github.com/arkitektio/rekuest-server
- Owner: arkitektio
- Created: 2021-02-26T10:18:39.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-01-31T07:46:58.000Z (11 months ago)
- Last Synced: 2024-05-01T12:51:13.779Z (8 months ago)
- Topics: actor-model, arkitekt, arkitekt-service, message-broker, rekuest, task-assignment
- Language: Python
- Homepage: https://arkitekt.live
- Size: 17.5 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Rekuest-Server
[![Maintenance](https://img.shields.io/badge/Maintained%3F-yes-green.svg)](https://github.com/arkitektio/rekuest-server/)
![Maintainer](https://img.shields.io/badge/maintainer-jhnnsrs-blue)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)Rekuest is one of the core services of Arkitekt. It represents a central repository of
all the connected apps and their provided functionality, their [Nodes](https://arkitekt.live/docs/terminology/nodes).
It also provides ways of interacting with the apps, by providing a central access point, that
apps and users can assign tasks to. Rekuest then takes care of routing the requests to the
appropriate app, which executres the task and returns the result to rekuest, which in turn routes it back
to the caller. Similar to all other Arkitekt ervices, Rekuest exposes a GraphQL API, that can be used to interact with it.
You can find the interactive documentation for the API [here](https://arkitekt.live/explorer).## Rekuest Design
Rekuest itself is designed as a stateless service (in order to be able to scale horizontally), and
interfaces with proven open-source technologies, such as [Redis](https://redis.io/) and [RabbitMQ](https://www.rabbitmq.com/).
to route tasks to the appropriate apps. The following diagram shows the high-level design of Rekuest:![Rekuest Design](./docs/schema.png)
## Developmental Notices
Rekuest is currently being rewritten to support other message brokers, such as [Kafka](https://kafka.apache.org/). This will
however remain an opt-in feature, and RabbitMQ will remain the default message broker. To learn more about this design decision,
please refer to the [Why Not?](https://arkitekt.live/docs/design/why-not) section.You can find the current developmental node of Rekuest [here](https://github.com/arkitektio/rekuest-server-next)
Efforts from this new repository will be merged into this repository once the new version is ready for production.