https://github.com/wowu/bulletin
Python Communication Framework for Distributed AWS Lambda Applications
https://github.com/wowu/bulletin
aws lambda python serverless
Last synced: 6 months ago
JSON representation
Python Communication Framework for Distributed AWS Lambda Applications
- Host: GitHub
- URL: https://github.com/wowu/bulletin
- Owner: wowu
- License: mit
- Created: 2023-10-19T20:39:44.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-11-13T10:37:13.000Z (over 1 year ago)
- Last Synced: 2024-10-29T21:24:13.214Z (8 months ago)
- Topics: aws, lambda, python, serverless
- Language: Jupyter Notebook
- Homepage:
- Size: 4.17 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Bulletin
Python serverless communication framework for distributed AWS Lambda applications. Part of my master's thesis.
Implemented communication methods:
- S3
- EFS
- DynamoDB
- Redis
- Simple relay implementation
- P2P w/ NAT traversal
## Build
```bash
python -m build
```## Local testing
```bash
virtualenv venv
venv/bin/pip install -e .
venv/bin/python
```## Publish package to S3
```bash
aws s3 cp dist/bulletin-0.0.5.tar.gz s3://bulletin-py/bulletin/
aws s3 cp dist/bulletin-0.0.5-py3-none-any.whl s3://bulletin-py/bulletin/# Install bucket-dir first
bucket-dir bulletin-py
```Use like this in requirements.txt.
```
--extra-index-url https://dxsxsb220w9y2.cloudfront.net
bulletin==0.0.5
```## Repository Structure
- `src/` - Bulletin source.
- `tf/benchmark/` - Terraform config for point to point benchmarks of event exchange methods.
- `tf/e2e/` - Terraform config for e2e benchmark: federated machine learning.
- `tf/bulletin/` - Publish bulletin on S3.
- `tf/ec2/` - Single VM to run benchmarks with low latency to AWS API.
- `notebooks/` - Jupiter notebooks with benchmark result analysis.