前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >视频讲解编程题:Docker, Kafka, Elastic Search

视频讲解编程题:Docker, Kafka, Elastic Search

作者头像
RendaZhang
发布2021-01-04 14:48:21
6980
发布2021-01-04 14:48:21
举报
文章被收录于专栏:RendaRenda

视频讲解

1_基础环境准备

2_新增商品需求

3_查询商品需求

说明

项目代码文件夹:es-kafka-hw

SQL 代码:hw.sql

基础环境搭建:基础环境准备.md

系统架构图

基础环境准备

在 VM 中克隆出一个新的虚拟机,IP 地址为 192.168.186.20。

在 Docker 中安装 MySQL 容器,端口映射到宿主机。

在 Docker 中安装 ElasticSerach 容器,端口映射到宿主机。

在 Docker 中安装 Kibana 容器,配置 ES 的 URL 地址,端口映射到宿主机。

在 Centos7 中创建集群网络,192.168.0.0/24 命名为:kafka

在 Docker 中搭建 Zookeeper 集群。

在 Docker 中搭建 Kafka 集群。

在 Docker 中安装 Kafka-Manager,端口映射到宿主机。

登录到 Kafka 容器,创建主题:product,3 个分区,3 个副本。

要求将基础环境搭建流程、使用命令、效果截图等信息编写到一个 Markdown 文档中。

数据库和索引库准备

新建索引库 renda,类型名称为 product,Mapping 要求:

  • name"type" : "text", "analyzer" : "ik_max_word"
  • goods_desc"type" : "text", "analyzer" : "ik_max_word"

其它映射关系可以根据数据类型、需求场景自行定义。

需求

新增商品

流程图

流程说明

1、持久化:商品微服务将用户传入的商品信息封装为商品对象持久化到数据库。

2、生产消息:商品微服务将商品对象保存后,获得该商品对象在数据库中记录的 id,将该 id 作为消息发送到 Kafka 的 product 主题中。

3、监听并消费消息:ES 微服务监听 Kafka 的 product 主题,收到新消息(新插入商品的 id)后,从数据库中查询该 id 对象的商品对象。

4、添加文档:ES 微服务将通过 id 查询到的商品对象,添加到 Elasticsearch 的 renda 索引库中。

代码语言:javascript
复制
{
    "name": "New Phone17",
    "price": ,
    "flag": ,
    "goodsDesc": "商品描述。。。",
    "images": "www.baidu.com",
    "goodsStock": ,
    "goodsType": "3"
}
代码语言:javascript
复制
{
    "name": "华为手机 P40",
    "price": ,
    "flag": "1",
    "goodsDesc": "华为P40 5G手机 分期 麒麟990 晨曦金 8+256GB",
    "images": "https://img14.360buyimg.com/n0/jfs/t1/133822/33/8832/135985/5f4da578E7c6efde1/2cd53a53083ab2ed.jpg",
    "goodsStock": ,
    "goodsType": "1"
}

商品查询

流程图

需求描述

实现商品查询功能,类似电商站内商品搜索。

  • 查询条件:name
  • 分页查询:每页 5 条。
  • 排序规则:price,升序。
  • 结果过滤:商品价格范围过滤。
  • 实现高亮效果。
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-12-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Renda 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 视频讲解
  • 说明
  • 系统架构图
  • 基础环境准备
  • 数据库和索引库准备
  • 需求
    • 新增商品
      • 流程图
      • 流程说明
    • 商品查询
      • 流程图
      • 需求描述
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档