Skip to main content

Edacious an Event Derive Architecture framework

Project description

Edacious an Event Derive Architecture framework

Implementing an EDA usually requires a queue mechanism. Currently support Redis streams and Amazon Web Services SQS.

Event must be a dict that contain data to be processed. Every event must have an event type (str) attribute, reserve key is event-type.

To process an event the event type has to be associated to one or more event handlers.

Event handler is a function that receive an event (dict) and process it, here is an example for running event listener based on Amazon Web Services SQS.

from edacious.sqs import EventListener

SQS_URL = 'https://sqs.my-region.amazonaws.com/123456789012/my-app-sqs'


@event_handler(event_type='hello-world')
def my_handler(event: dict):
    print(event)


if __name__ == '__main__':

listener = EventListener(sqs_url=SQS_URL, visibility_timeout=60, max_messages_to_fetch=10)
listener.set_seconds_to_wait(seconds=2.5)
listener.run()

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

edacious-0.0.11.tar.gz (4.7 kB view hashes)

Uploaded Source

Built Distribution

edacious-0.0.11-py3-none-any.whl (5.2 kB view hashes)

Uploaded Python 3

Supported by

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