# orch_serv
[![Coverage Status](https://img.shields.io/badge/%20Python%20Versions-%3E%3D3.8-informational)](https://pypi.org/project/orch-serv/)
[![Coverage Status](https://coveralls.io/repos/github/Shchusia/orchestrator_service/badge.svg)](https://coveralls.io/github/Shchusia/orchestrator_service)
[![Coverage Status](https://img.shields.io/badge/Version-0.1.3-informational)](https://pypi.org/project/orch-serv/)
[![Coverage Status](https://img.shields.io/badge/Docs-passed-green)](https://github.com/Shchusia/orchestrator_service/tree/master/docs)
> A library for microservice architecture, for interconnected services with different execution sequences, for orchestration services designed for such kind of services relationships.
### Installation
```bash
pip install orch_serv
```
### Problem
We have a microservice architecture
Your architecture has many services. Each individual service performs its own task. You need to set up the sequence of interactions between services, taking into account that one service can be connected to others and fired in a different sequence.
<u>Example:</u>
Task | Service execution sequence
--- | ---
*Task1* | service1 -> service2 -> service3
*Task2* | service2 -> service4 -> service1
*...* | ...
*TaskN* | service3 -> service2 -> ... -> serviceM
For centralized management of the services interactions, we offer an **orchestrator**: service containing valid block connections.
![file not found](./materials/solution_application_diagram.png "solution_application_diagram")
What you need to do in the orchestrator service:
- create blocks with known interaction logic with the services they belong to,
- create accessible flows from these blocks (for different tasks there can be your specific flows, it is important to use unique flow names),
- define a message for the interaction of services, such that they have a single standard and override key methods,
- initialize the orchestrator and use,
- [More details](./orяch_serv/orchestrator/README.md).
What you need to use the service:
- define a message for the interaction of services, such that they have a single standard and override key methods,
- define the commands in the service which are going to be executed and what to do after the main task is completed (this is divided to separate the logic).
- [More details](./orch_serv/service/README.md)
#### Bonus
Added functionality for the formation of a sequence of steps - [details here](./orch_serv/stepper/README.MD)
Raw data
{
"_id": null,
"home_page": "https://github.com/Shchusia/orchestrator_service/",
"name": "orch-serv",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "",
"keywords": "pip,orch_serv",
"author": "Denis Shchutkiy",
"author_email": "denisshchutskyi@gmail.com",
"download_url": "",
"platform": null,
"description": "# orch_serv\n[![Coverage Status](https://img.shields.io/badge/%20Python%20Versions-%3E%3D3.8-informational)](https://pypi.org/project/orch-serv/)\n[![Coverage Status](https://coveralls.io/repos/github/Shchusia/orchestrator_service/badge.svg)](https://coveralls.io/github/Shchusia/orchestrator_service)\n\n[![Coverage Status](https://img.shields.io/badge/Version-0.1.3-informational)](https://pypi.org/project/orch-serv/)\n[![Coverage Status](https://img.shields.io/badge/Docs-passed-green)](https://github.com/Shchusia/orchestrator_service/tree/master/docs)\n> A library for microservice architecture, for interconnected services with different execution sequences, for orchestration services designed for such kind of services relationships.\n\n\n### Installation\n\n```bash\npip install orch_serv\n```\n\n### Problem\n\nWe have a microservice architecture\n\nYour architecture has many services. Each individual service performs its own task. You need to set up the sequence of interactions between services, taking into account that one service can be connected to others and fired in a different sequence.\n\n<u>Example:</u>\n\nTask | Service execution sequence \n--- | --- \n*Task1* | service1 -> service2 -> service3\n*Task2* | service2 -> service4 -> service1\n*...* | ...\n*TaskN* | service3 -> service2 -> ... -> serviceM\n\nFor centralized management of the services interactions, we offer an **orchestrator**: service containing valid block connections.\n\n![file not found](./materials/solution_application_diagram.png \"solution_application_diagram\")\n\nWhat you need to do in the orchestrator service:\n- create blocks with known interaction logic with the services they belong to,\n- create accessible flows from these blocks (for different tasks there can be your specific flows, it is important to use unique flow names),\n- define a message for the interaction of services, such that they have a single standard and override key methods,\n- initialize the orchestrator and use,\n- [More details](./or\u044fch_serv/orchestrator/README.md).\n\nWhat you need to use the service:\n- define a message for the interaction of services, such that they have a single standard and override key methods,\n- define the commands in the service which are going to be executed and what to do after the main task is completed (this is divided to separate the logic).\n- [More details](./orch_serv/service/README.md)\n\n#### Bonus\n\nAdded functionality for the formation of a sequence of steps - [details here](./orch_serv/stepper/README.MD)\n\n\n",
"bugtrack_url": null,
"license": "",
"summary": "Library for fast build service and interaction management",
"version": "0.1.7",
"project_urls": {
"Homepage": "https://github.com/Shchusia/orchestrator_service/"
},
"split_keywords": [
"pip",
"orch_serv"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9d95a2bd8c1840b749b27aabe6623998a968bca2a0e36788a5f3befe552604b6",
"md5": "346756ef843d872af76278ae2698afd8",
"sha256": "2e341cbafc0ef801e09512c0702b9e38458418e30ab324691c8aad9fa5f37bb3"
},
"downloads": -1,
"filename": "orch_serv-0.1.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "346756ef843d872af76278ae2698afd8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 31849,
"upload_time": "2024-03-19T09:54:25",
"upload_time_iso_8601": "2024-03-19T09:54:25.338230Z",
"url": "https://files.pythonhosted.org/packages/9d/95/a2bd8c1840b749b27aabe6623998a968bca2a0e36788a5f3befe552604b6/orch_serv-0.1.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-19 09:54:25",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Shchusia",
"github_project": "orchestrator_service",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"tox": true,
"lcname": "orch-serv"
}