更新时间:2022-02-21 GMT+08:00
Lua SDK
本节以Linux系统为例介绍Lua客户端如何连接DMS服务的Kafka队列,获取相关配置信息请参考准备环境章节。
DMS服务兼容Kafka原生API,相关调用方法请参考Kafka官网说明。
客户端环境搭建
- 下载SDK包。
解压后获取kafka-dms-lua.tar.gz文件。
- 安装luajit工具。
执行如下命令检查是否有luajit工具。
luajit -v
如果没有luajit,需要安装luajit。- ubuntu操作系统:
- 执行apt-cache search luajit命令检查软件仓库中是否有luajit。如没有,请自行配置软件仓库的地址。
- 执行apt-get install luajit命令安装luajit。
- suse操作系统:
- 执行zypper search luajit命令检查软件仓库中是否有luajit。如没有,请自行配置软件仓库的地址。
- 执行zypper install luajit命令安装luajit。
- centos/redhat操作系统:
- yum search luajit
- yum install luajit
- ubuntu操作系统:
- 解压缩kafka-dms-lua.tar.gz
以下假设解压目录为{DMSPATH}。
- 拷贝kafka依赖到本地的lib库中。
cp {DMSPATH}/kafka-dms-lua/librdkafka/lib/* /usr/lib/ -R
- 修改example_dms.lua中的配置参数。
cd {DMSPATH}/kafka-dmslua/luadms
vi example_dms.lua
修改如下配置项:
local BROKERS_ADDRESS = { "broker" } local TOPIC_NAME = "your kafka topic" config["sasl.project.id"]="your projectId" config["sasl.access.key"]="your ak" config["sasl.security.key"]="your sk"
表1 参数说明 参数
说明
获取方式
BROKERS_ADDRESS
配置为Kafka的endpoint地址。
请参考准备环境
TOPIC_NAME
配置为Kafka Topic的id。
sasl.project.id
项目ID。
sasl.access.key
租户AK。
security.key
租户SK。
运行示例
执行如下命令进行生产消息。
luajit example_dms.lua
说明:该示例命令将会自动发送10条消息到Kafka队列中。
示例代码
生产消息
for i = 0,10 do producer:produce(topic, KAFKA_PARTITION_UA, "this is test message"..tostring(i)) end while producer:outq_len() ~= 0 do producer:poll(10) end
父主题: Kafka普通版开发指南