Skip to main content

The job processing engine that powers ananke

Project description

moirai-engine

PyPI - Version PyPI - Python Version


Table of Contents

NOTE: This doc is still in progress. for now it was generated by AI (sorry).

Installation

pip install moirai-engine

Usage

Basic Example

Here is a basic example of how to use the moirai-engine library to create and run a simple job:

import time
from moirai_engine.core.engine import Engine
from moirai_engine.utils.samples import hello_world

# Create and start the engine
engine = Engine()
engine.start()

# Create a job using the hello_world sample
job = hello_world()

# Add the job to the engine
engine.add_job(job)

# Let the engine run for a while
time.sleep(5)

# Stop the engine
engine.stop()

Advanced Example

Here is an advanced example that includes real-time notifications and job cancellation:

import asyncio
from moirai_engine.core.engine import Engine
from moirai_engine.utils.samples import hello_world


# Create an async function
async def notification_listener(notification):
    print(f"Received notification: {notification}")


async def main():
    engine = Engine(max_workers=4, listener=notification_listener)
    await engine.start()

    # Add jobs to the engine
    await engine.add_job(hello_world(), notification_listener)

    # Let the engine run for a while
    await asyncio.sleep(2)

    await engine.stop()


if __name__ == "__main__":
    asyncio.run(main())

About

moirai-engine is the engine that powers Ananke, but it was planned to be used as a processing engine. This project is still in progress, and features like task registry and autodiscover are still in development.

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moirai_engine-0.0.26.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

moirai_engine-0.0.26-py3-none-any.whl (15.6 kB view details)

Uploaded Python 3

File details

Details for the file moirai_engine-0.0.26.tar.gz.

File metadata

  • Download URL: moirai_engine-0.0.26.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.0

File hashes

Hashes for moirai_engine-0.0.26.tar.gz
Algorithm Hash digest
SHA256 75932bc4f317d894232ef5b36ec5d6e736ee6e7408b2444fc4a221294423fe7a
MD5 9221eee1c3c0efc808be95c1b2d93156
BLAKE2b-256 9a617fed17e10e956fb6f481915e9b24a47ee25cdb82a798801f4971d7e0b604

See more details on using hashes here.

File details

Details for the file moirai_engine-0.0.26-py3-none-any.whl.

File metadata

  • Download URL: moirai_engine-0.0.26-py3-none-any.whl
  • Upload date:
  • Size: 15.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.0

File hashes

Hashes for moirai_engine-0.0.26-py3-none-any.whl
Algorithm Hash digest
SHA256 7904838c3d5460b090e37db3bdbb4424e53cd275c56ddacd743f6b5b9e811686
MD5 5a86916c1f7b5504af5f56bef8c77d7f
BLAKE2b-256 2ae4331dd4b929a164dfb23fcb6ff78f525987431bc5a7d680db56b17f6d0dfc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page