Metadata-Version: 2.1
Name: aiokinesis
Version: 0.0.1
Summary: Asyncio kinesis client
Home-page: UNKNOWN
Author: Nik Liolios
Author-email: nik@asktetra.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Operating System :: OS Independent
Classifier: Topic :: System :: Networking
Classifier: Topic :: System :: Distributed Computing
Classifier: Framework :: AsyncIO
Classifier: Development Status :: 4 - Beta
Requires-Dist: boto3 (==1.7.29)

AIOKinesis
==========

Asyncio client library for AWS Kinesis

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()

     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

