Shifu基础功能:数据采集
创始人
2024-05-31 20:58:58
0

数据采集

我们可以通过HTTP/gRPC与deviceShifu进行通信,deviceShifu会将我们发送的请求转换成设备所支持协议的形式,并发送给设备。

当设备接收到指令之后,数据会传输到deviceShifu中,之后deviceShifu将数据作为我们请求的返回值进行返回,从而实现数据的采集。

实现自动化数据采集

1.首先,我们可编写以下程序来实现自动采集数据。该程序用于对之前运行的edgedevice-thermometer设备进行实时数据采集,将温度数据进行解析并输出。该程序可以通过任意语言、任意形式进行编写,您可以将数据存入您的数据库中,或者存入文件中。

package main  import (  "log"   "io/ioutil"   "net/http"   "strconv"   "time"
)  func main() {  targetUrl := "http://edgedevice-thermometer/read_value"req, _ := http.NewRequest("GET", targetUrl, nil)for{res, _ := http.DefaultClient.Do(req)body, _ := ioutil.ReadAll(res.Body)temperature, _ := strconv.Atoi(string(body))     if temperature > 20 {log.Println("High temperature:", temperature)} else if temperature > 15 {log.Println("Normal temperature:", temperature)} else {log.Println("Low temperature:", temperature)}res.Body.Close()time.Sleep(2 * time.Second)}
}

2.使用go mod init high-temperature-detecto生成go.mod文件。

3.对于上述程序,我们可以将其打包成docker image并加载到集群中,以便其能更好的与deviceShifu进行通信。创建以下Dockerfile文件:

# syntax=docker/dockerfile:1  FROM golang:1.17-alpine  
WORKDIR /app  
COPY go.mod ./  
RUN go mod download  
COPY *.go ./  
RUN go build -o /high-temperature-detector  
EXPOSE 11111  
CMD [ "/high-temperature-detector" ]

4.使用Dockerfile文件生成docker image,需执行以下命令:

docker build --tag high-temperature-detector:v0.0.1

5.之后我们将docker image加载到集群中,需执行以下命令:

kind load docker-image high-temperature-detector:v0.0.1

6.运行我们编写的数据采集程序 ,需执行以下命令:

kubectl run high-temperature-detector --image=high-temperature-detector:v0.0.1

7.最后我们查看该程序的日志信息获取数据,需执行以下命令:

kubectl logs high-temperature-detector -f

得到的数据结果如下:

2021/10/18 10:35:35 High temperature: 24  
2021/10/18 10:35:37 High temperature: 23  
2021/10/18 10:35:39 Low temperature: 15  
2021/10/18 10:35:41 Low temperature: 11  
2021/10/18 10:35:43 Low temperature: 12  
2021/10/18 10:35:45 High temperature: 28  
2021/10/18 10:35:47 Low temperature: 15  
2021/10/18 10:35:49 High temperature: 30  
2021/10/18 10:35:51 High temperature: 30  
2021/10/18 10:35:53 Low temperature: 15

本文由边无际授权发布

相关内容

热门资讯

surface2 接口-Sur... 嘿,大家好!今天我要聊聊我最近超级迷恋的一个小玩意儿——Surface2接口!这东西,简直是我的数字...
wmiprvse.exe sy... 大家好,今天我要和大家聊聊一个听起来有点高大上,但实际上我们每天都在和它打交道的东西——wmiprv...
卢瓦loic下载-卢瓦 Loi... 嘿,朋友们,今天咱们来聊聊那个让人心跳加速的话题——卢瓦Loic下载!这可不是普通的下载,这是一场关...
双专线叠加千兆路由器:解决网速... 哎呀,说到这个双专线叠加千兆路由器,我这心里就激动得不行!你知道吗,这玩意儿简直就是网络世界的超级英...
探险队长带你揭开名字查询身份证... 大家好,我是你们的探险队长,今天我们要一起潜入一个神秘的世界——名字查询身份证号码查询系统。这听起来...
绿云系统下载:一场没有硝烟的战... 嘿,大家好,我今天真是有一肚子话要说!绿云系统下载,这个名字听起来就像是从天而降的神秘礼物,对吧?我...
winebottler怎么使用... 大家好,我是那个总是对新鲜玩意儿充满好奇的小王。今天要跟大家聊的,是那个让我的Mac变得超级全能的神...
家庭省电宝怎安装-家庭省电宝安... 哎呀,说到家庭省电,我可是有好多小窍门呢!今天就来聊聊我家那个小宝贝——家庭省电宝的安装,简直是太简...
ecshop模板堂去除方法-去... 嘿,大家好,我今天真是气不打一处来!你们有没有试过折腾那个ECShop模板堂?我告诉你,简直是噩梦一...
共享总线技术:电子设备间的高速... 嘿朋友们,今天咱们聊聊这个“共享总线”技术,这可不是什么高深莫测的东西,其实它就是一条电子设备之间相...
呼吸道合胞病毒 用文明-呼吸道... 哎呀,说到这个呼吸道合胞病毒,真是让人头疼不已!这小东西,看不见摸不着的,却能在我们不经意间悄悄地侵...
surface1和2的区别-S... 哟,大家好呀!今天咱们就来聊聊那些让人又爱又恨的Surface1和Surface2。这两个小家伙,虽...
foobar2000 wasa... 嘿,大家好!今天我得说说我和Foobar2000还有WASAPI的那点事儿。你们知道吗,每次我打开这...
findata破解版-Find... 嘿,大家好!今天咱们聊点刺激的,说说那个最近在圈子里火得不行的Findata破解版。你们是不是也听说...
initization fai... 哎,你知道吗?今天我真是倒了八辈子霉了!就在我以为一切都要开始的时候,砰!一切都崩了!对,就是那个该...
华硕e403n 改win7-华... 哎呀,说到这事儿我就激动得不行!你敢信?我那台老古董华硕e403n,本以为它只能乖乖地用着那个什么w...
0x0000000050电脑蓝... 哎呀,我的天啊!刚刚还在激情四射地玩游戏,电脑突然就蓝屏了,屏幕上那个恐怖的0x0000000050...
肛瘘手术 多长时间不疼-肛瘘手... 哎呀,说到肛瘘手术,真是让人头疼又屁股疼!手术后那疼痛,简直让人怀疑人生。但是,亲们,别急,疼痛总会...
windows bluetoo... 嘿,大家好!今天我想聊聊我生活中的一个小英雄——Windows蓝牙。你知道吗,这个小东西真的是我的生...
阿西吧韩国什么意思-阿西吧韩国... 哎呀呀,说到“阿西吧韩国”,你是不是也和我一样,心里有点小激动?这可不是什么正式的词汇,但它在年轻人...