1.Kinesis(http://localhost:4568)

1.1.create kinesis stream
aws --endpoint-url=http://localhost:4568 kinesis create-stream --stream-name=lambda-stream --shard-count=10  
1.2. list kinesis streams
aws --endpoint-url=http://localhost:4568 kinesi s list-streams

2.lambda create and update(http://localhost:4574)

2.1.create lambda(cd indexer's target file)
aws --endpoint-url=http://localhost:4574 lambda create-function \
    --function-name my-function \
    --runtime java8 \
    --zip-file fileb://myna-fii-indexer.jar \
    --handler com.tr.myna.fii.indexer.IndexerRequestHandler::handleRequest \
    --role arn:aws:lambda:us-east-1:000000000000:function:my-function      
2.2.update lambda
aws --endpoint-url=http://localhost:4574 lambda update-function-code \
    --function-name my-function \
    --zip-file fileb://myna-fii-indexer.jar
  • myna-fii-indexer.jar is a project about sync kinesis stream to elasticsearch
  • com.tr.myna.fii.indexer.IndexerRequestHandler::handleRequest is the handle method triggered by kinesis-event(data insert,delete)

3.create event-mapping abount Lambda&Kinesis

3.1.get kinesis-stream's describe(for stream-ARN)
aws --endpoint-url=http://localhost:4568 kinesis describe-stream \
    --stream-name=lambda-stream
3.2.create kinesis-stream consumer with stream-ARN
aws --endpoint-url=http://localhost:4568 kinesis register-stream-consumer \
    --consumer-name con1 \
    --stream-arn arn:aws:kinesis:us-east-1:000000000000:stream/lambda-stream
3.3.create event-mapping abount lambda&kinesis-stream consumer
aws --endpoint-url=http://localhost:4574 lambda create-event-source-mapping \
    --function-name my-function \
    --batch-size 5 \
    --event-source-arn arn:aws:kinesis:us-east-1:000000000000:stream/lambda-stream
3.4. After these(create kinesis-stream/lambda/event-mapping),open http://localhost:8080 ,the mapping
12-13 02:33
查看更多