数据管道 Logstash 入门
Logstash 入门
Logstash 是什么
Logstash 就是一个开源的数据流工具,它会做三件事:
- 从数据源拉取数据
- 对数据进行过滤、转换等处理
- 将处理后的数据写入目标地
例如:
- 监听某个目录下的日志文件,读取文件内容,处理数据,写入 influxdb 。
- 从 kafka 中消费消息,处理数据,写入 elasticsearch 。
为什么要用 Logstash ?
方便省事。
Logstash 就是一个开源的数据流工具,它会做三件事:
例如:
方便省事。
又拍图片管家当前服务了千万级用户,管理了百亿级图片。当用户的图库变得越来越庞大时,业务上急切的需要一种方案能够快速定位图像,即直接输入图像,然后根据输入的图像内容来找到图库中的原图及相似图,而以图搜图服务就是为了解决这个问题。
之前写过一篇概述: 以图搜图系统概述 。
以图搜图系统需要解决的主要问题是:
对应的工程实践,具体为:
以图搜图指的是根据图像内容搜索出相似内容的图像。
构建一个以图搜图系统需要解决两个最关键的问题:首先,提取图像特征;其次,特征数据搜索引擎,即特征数据构建成数据库并提供相似性搜索的功能。
GitHub Actions 使你可以直接在你的 GitHub 库中创建自定义的工作流,工作流指的就是自动化的流程,比如构建、测试、打包、发布、部署等等,也就是说你可以直接进行 CI(持续集成)和 CD (持续部署)。
GitHub 很多开源库都会有几个酷炫的小徽章,比如:
make
是一个历史悠久的构建工具,通过配置 Makefile
文件就可以很方便的使用你自己自定义的各种指令集,且与具体的编程语言无关。
例如配置如下的 Makefile
:
废话不多说,文本将带你实现一个简单的 memcached 客户端。
memcached 本身并不支持集群,为了使用集群,我们可以自己在客户端实现路由分发,将相同的 key 路由到同一台 memcached 上去即可。 路由算法有很多,这里我们使用一致性哈希算法。
InfluxDB 开源的社区版本面临的最大的问题就是单点故障和容灾备份,有没有一个简单的方案去解决这个问题呢?
既然有单点故障的可能,那么索性写入多个节点,同时也解决了容灾备份的问题:
连续查询 Continuous Queries( CQ )是 InfluxDB 很重要的一项功能,它的作用是在 InfluxDB 数据库内部自动定期的执行查询,然后将查询结果存储到指定的 measurement 里。
配置文件中的相关配置: