Asyncio kinesis client
Project description
AIOKinesis
==========
Asyncio client library for AWS Kinesis
Installation
------------
```
pip install aiokinesis
```
AIOKinesisProducer
------------------
Usage:
```python
import asycio
from aiokinesis import AIOKinesisProducer
async def send_message():
loop = asyncio.get_event_loop()
producer = AIOKinesisProducer('my-stream-name', loop, region_name='us-east-1')
await producer.start()
await producer.send('partition-key', {'data': 'blah'})
await asyncio.sleep(1)
await producer.stop()
loop.run_until_complete(send_message())
```
Limitations:
- Stopping the producer before all messages are sent will prevent in flight messages from being sent
- AIOKinesis only supports one shard so the producer is rate limited to 5 requests per rolling second
AIOKinesisConsumer
------------------
Usage:
```python
import asyncio
from aiokinesis import AIOKinesisConsumer
async def get_messages():
loop = asyncio.get_event_loop()
consumer = AIOKinesisConsumer('my-stream-name', loop, region_name='us-east-1')
await consumer.start()
try:
async for message in consumer:
print("Consumed message: ", message)
except KeyboardInterrupt:
await consumer.stop()
loop.run_until_complete()
```
Limitations:
- AIOKinesis only supports one shard so the consumer is rate limited to 5 requests per rolling second
==========
Asyncio client library for AWS Kinesis
Installation
------------
```
pip install aiokinesis
```
AIOKinesisProducer
------------------
Usage:
```python
import asycio
from aiokinesis import AIOKinesisProducer
async def send_message():
loop = asyncio.get_event_loop()
producer = AIOKinesisProducer('my-stream-name', loop, region_name='us-east-1')
await producer.start()
await producer.send('partition-key', {'data': 'blah'})
await asyncio.sleep(1)
await producer.stop()
loop.run_until_complete(send_message())
```
Limitations:
- Stopping the producer before all messages are sent will prevent in flight messages from being sent
- AIOKinesis only supports one shard so the producer is rate limited to 5 requests per rolling second
AIOKinesisConsumer
------------------
Usage:
```python
import asyncio
from aiokinesis import AIOKinesisConsumer
async def get_messages():
loop = asyncio.get_event_loop()
consumer = AIOKinesisConsumer('my-stream-name', loop, region_name='us-east-1')
await consumer.start()
try:
async for message in consumer:
print("Consumed message: ", message)
except KeyboardInterrupt:
await consumer.stop()
loop.run_until_complete()
```
Limitations:
- AIOKinesis only supports one shard so the consumer is rate limited to 5 requests per rolling second
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
aiokinesis-0.0.2.tar.gz
(3.6 kB
view hashes)
Built Distribution
Close
Hashes for aiokinesis-0.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 64afb5259ae0a7b6f28fa3e7e48598a02b5a3d3098b96622baa0b98a5af41a94 |
|
MD5 | 6dd9e7295455f409abdac1e51b6b8c32 |
|
BLAKE2b-256 | b407347e54d0823df298c7c620219de187e2f037273eb1838c8c4a85a4895aa4 |