vmware-go-kcl-v2/README.md
Shiva Pentakota 53b02bcdd8 chore: update ReadMe to contain some notes regarding setting kclConfig values
Signed-off-by: Shiva Pentakota <spentakota@vmware.com>
2023-03-03 16:35:08 -08:00

3.3 KiB

VMWare Go KCL v2

technology Go Go Report Card License: MIT vmware-go-kcl-v2

Overview

VMware-Go-KCL-V2 is a native open-source Go library for Amazon Kinesis Data Stream (KDS) consumption. It allows developers to program KDS consumers in lightweight Go language and still take advantage of the features presented by the native KDS Java API libraries.

vmware-go-kcl-v2 is a VMWare originated open-source project for AWS Kinesis Client Library in Go. Within VMware, we have seen adoption in vSecureState and Carbon Black. In addition, Carbon Black has contributed to the vmware-go-kcl codebase and heavily used it in the product. Besides, vmware-go-kcl-v2 has got recognition, and contributions from the industry.

vmware-go-kcl-v2 is the v2 version of VMWare KCL for the Go programming language by utilizing AWS Go SDK V2.

Try it out

Prerequisites

Build & Run

  1. Initialize Project

  2. Build

    make build

  3. Test

    make test

Documentation

VMware-Go-KCL matches exactly the same interface and programming model from original Amazon KCL, the best place for getting reference, tutorial is from Amazon itself:

Contributing

The vmware-go-kcl-v2 project team welcomes contributions from the community. Before you start working with vmware-go-kcl-v2, please read our Developer Certificate of Origin. All contributions to this repository must be signed as described on that page. Your signature certifies that you wrote the patch or have the right to pass it on as an open-source patch. For more detailed information, refer to CONTRIBUTING.md.

Additional Notes If Modifying kclConfig values

  • Currently there are some bugs with the lease stealing logic within vmware-go-kcl-v2 so please keep the EnableLeaseStealing kclConfig value as false.
  • When using a non-default FailoverTimeMillis kclConfig value, keeping a 2:1 ratio between FailoverTimeMillis and LeaseRefreshPeriodMillis typically helps to reduce the chance of worker lease contention.

License

MIT License