Lua集成kafka第三方插件代码介绍|学习笔记

简介: 快速学习Lua集成kafka第三方插件代码介绍

开发者学堂课程【大数据实战项目:反爬虫系统(Lua+Spark+Redis+Hadoop框架搭建):Lua集成kafka第三方插件代码介绍】学习笔记与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/670/detail/11614


Lua集成kafka第三方插件代码介绍

 

内容介绍:

一、代码的书

二、导入依赖包

三、创建Kafka生产者

四、创建数据的载体

五、发送数据

 

一、代码的书写

目标

编写 Lua 的脚本采集数据的脚本完成数据后集后,把这个数据发送到 Kafka 里面。

写思路:

类似于写Java的代码除去类似 Java 的部分,要多加一个引入操作。

我们现在使用的是 Lua 脚本 来采集数据,现在还没有 Kafka 生产者的API需要先引入 Kafka 的包,然后呢再做创建生产者创建数据的载体发送数据

 

二、导入依赖包

1.打开当下环境 resty,查找依赖包。

查找过程:user local authority- Lua lib进入到 Lua liver里不存在 Kafka 、然后再进入到resty、 Cd rest 里看是否存在 Kafka API 。

2.不存在API时需要使用第三方提供的 Kafka API 。

具体位置:在提供材料-素材-资料包-资料包- Open Resty里面资源里面有个 Lua rest, Kafka 的master文件。

Lua - resty - Kafka -master 右键解压。

点击进入 lib -resty- Kafka-producer其中包括许多内容。

图片1.png

3.将依赖包上传到集群里面上传查看 Kafka 整个目录

当前的目录是在resty 里边有一个 Kafka ,其中无内容。将 Kafka 整个目录全部都发送到环境目录下面来。用另外一个工具看一下192.168.100.160,然后用户名为root

输入密码123456然后找到usr - local -Lula labour。

把这里面的 Kafka 目录直接全部都拖过来走。

图片2.png


三、创建 Kafka 生产者

打开producer其中存在的[_M]与ridis的相似。具体代码如下:

Local_M={ _VERSION="0.06"}

local mt={ _index=M}

_M即意味着 Kafka 生产者需要创建一个 Kafka 实例。

创建实例需要用到new,查找目标:_M.new

接着需要这个 Kafka 的 new这个过程中需要用到以下参数

图片3.png

1. Sel

2. broker list指集群的一些信息诸如节点 IP端口内容 Brokerlist 传到环境中后已结束,传到客户端中。

3. config一些配置信息

存在or(空):即若传了这个参数,就显示参数如果没传我就相当默认的参数。

举例: producer type存在一个值 request_timeout,有个or 2000类似他这个默认值,这个属性中存在默认值。

如果传过来的内容中有数据,那就用用户传,如果没有就用这个默认值。搜索Opts,显示出来的均为默认值。

图片4.png

4.cluster_name:

存在 or DEFAULT_CLUSTER_NAME查找一下 =1 这也表示一个名字。

即此类集群的名字,如果传了,我就用户上传的命名;没传就使用1来代表该集群。

查找 _M.send发送数据 self 参数是数据本身。

发送数据时的 topic 、 Key 、message中不存在默认值,说明 topic 、 Key 、message 是发送数据时需要用户给出、必备的内容。

 

四、创建数据的载体

实际上不需要载体,但是也要有一个过程,实际上是没用到,但在发送数据的时候,直接把原始数据发送过去

 

五、发送数据

API 缩小化, produce这个就完成了。在桌面上面新建一个文件,这个文件就按照讲义中的名字进行命名: GetDataToKafka

GetDataToKafka 该文件用于书写获取数据,并且把数据打入到 Kafka

相关文章
|
2月前
|
人工智能 自然语言处理 安全
代码静态扫描工具集成与实践
代码静态扫描工具(Static Application Security Testing, SAST)是在不运行代码的情况下,通过分析源代码或二进制代码来发现潜在安全漏洞、代码缺陷和质量问题的工具
315 4
|
2月前
|
机器学习/深度学习 编解码 计算机视觉
用于高效高光谱图像分类的多尺度上下文感知集成深度 KELM(Matlab代码实现)
用于高效高光谱图像分类的多尺度上下文感知集成深度 KELM(Matlab代码实现)
|
2月前
|
编解码 算法 自动驾驶
【雷达通信】用于集成传感和通信的OFDM雷达传感算法(Matlab代码实现)
【雷达通信】用于集成传感和通信的OFDM雷达传感算法(Matlab代码实现)
319 125
|
3月前
|
机器学习/深度学习 算法 数据挖掘
没发论文的注意啦!重磅更新!GWO-BP-AdaBoost预测!灰狼优化、人工神经网络与AdaBoost集成学习算法预测研究(Matlab代码实现)
没发论文的注意啦!重磅更新!GWO-BP-AdaBoost预测!灰狼优化、人工神经网络与AdaBoost集成学习算法预测研究(Matlab代码实现)
116 0
|
4月前
|
安全 API 数据安全/隐私保护
低代码革命:API无代码集成如何让企业“3天上线一个生态”?
在数字化转型浪潮中,API成为释放数据价值、提升企业效率的核心。本文详解API架构设计、安全实践与跨平台集成,为CTO提供效率提升指南,涵盖微服务、安全认证、协议选择、低代码集成及未来趋势,助力企业构建敏捷、安全、高效的数字生态。
|
4月前
|
监控 前端开发 安全
如何集成第三方支付API到电商网站
在电商网站中,集成第三方支付API是确保交易安全、提升用户体验的关键步骤。本文详细介绍了从选择支付提供商到上线监控的全流程,涵盖代码示例与实用建议,助您高效实现支付功能。
220 0
|
2月前
|
机器学习/深度学习 数据采集 传感器
基于多尺度集成极限学习机回归(Matlab代码实现)
基于多尺度集成极限学习机回归(Matlab代码实现)
109 1
|
2月前
|
机器学习/深度学习 运维 算法
【EI复现】一种建筑集成光储系统规划运行综合优化方法(Matlab代码实现)
【EI复现】一种建筑集成光储系统规划运行综合优化方法(Matlab代码实现)
|
4月前
|
缓存 安全 API
【深度解析】嵌入式第三方集成的优势、挑战与实现方案(2025版)
嵌入式第三方集成是将外部服务无缝嵌入自身系统的技术方案,通过API/SDK实现功能内嵌(如支付、会议),提升用户体验和开发效率。其核心优势包括操作流畅性、降低研发成本及快速迭代能力,但需解决接口稳定性、数据同步等挑战。实施时需注重架构设计(微服务、安全策略)和性能优化(缓存、异步处理)。未来趋势将向AI服务集成、无代码平台发展,同时安全合规要求更严格。建议选择可靠服务商、遵循最佳实践,并持续监控优化集成方案。
203 2
|
8月前
|
消息中间件 关系型数据库 MySQL
基于 Flink CDC YAML 的 MySQL 到 Kafka 流式数据集成
基于 Flink CDC YAML 的 MySQL 到 Kafka 流式数据集成
778 0

热门文章

最新文章

下一篇
开通oss服务