当前位置: 首页 > news >正文

内部网站建设产品推广词

内部网站建设,产品推广词,北京网站建设搜q.479185700,邯郸专业做网站哪里有一个基于go-zero框架的微服务影院票务系统cinema-ticket 前言 项目基本介绍 项目开源地址:butane123/cinema-ticket: 一个基于go-zero框架的微服务影院票务系统cinema-ticket (github.com) 这是一个微服务影院票务系统,基于go-zero框架实现&#xff0c…

一个基于go-zero框架的微服务影院票务系统cinema-ticket

前言

项目基本介绍

项目开源地址:butane123/cinema-ticket: 一个基于go-zero框架的微服务影院票务系统cinema-ticket (github.com)

这是一个微服务影院票务系统,基于go-zero框架实现,官网:go-zero帮助文档

注意!!!本项目目前仍在制作中,可以看到一些图、许多文字介绍部分什么的都还没画,这段时间作者会继续开搞的

开发背景

系统设计

项目架构图

业务架构图

项目技术栈&开发环境

  • 服务端框架:go-zero
  • 数据库:Mysql
  • 缓存:Redis
  • 本地环境:Golang 1.18
  • 容器管理:Docker Compose
  • 消息队列:Kafka(、Zookeeper)
  • 分布式系统管理:Etcd
  • 分布式事务:DTM
  • 服务监控:PrometheusGrafana
  • 链路追踪:Jaeger

使用的技术依赖有点多,强烈建议使用docker配置虚拟环境(不过如果只是想要先跑动项目的话,只要配置redis、mysql、etcd就可以了)

其他小插件说明

使用JWT Token工具,生成了接口验证Auth的token,保证用户数据传输的安全

使用Squirrel工具,在go-zero框架中简化了Sql语句的编写

使用jordan-wright写的email工具,进行邮箱验证码的发送

使用ApiFox工具,生成了在根目录下的接口测试导出文件cinema-ticket.openapi.json,标准是openapi-3.0.1版本

使用Goctl-Swagger插件,可以自行生成用于接口介绍的swagger网页

项目目录树介绍

cinema-ticket
├─code //代码根目录
│  ├─common //通用工具包
│  │  ├─errorx
│  │  ├─kqueue
│  │  ├─response
│  │  ├─scripts
│  │  └─utils
│  └─service //服务层
│     ├─advert //广告服务
│     │  ├─api
│     │  ├─model
│     │  └─rpc
│     ├─comment //评论服务
│     │  ├─api
│     │  ├─model
│     │  └─rpc
│     ├─film //电影服务
│     │  ├─api
│     │  ├─model
│     │  └─rpc
│     ├─order //订单服务
│     │  ├─api
│     │  ├─model
│     │  ├─mq
│     │  └─rpc
│     ├─pay //支付流水服务
│     │  ├─api
│     │  ├─model
│     │  └─rpc
│     └─user //用户服务
│         ├─api
│         ├─model
│         └─rpc
└─images //ReadMe介绍图片

微服务内容拆分

该项目的业务逻辑思想来源于当前市场上的其他主流票务系统。

advert 广告服务

商业广告和普通公告相关信息和操作等服务。

comment 评论服务

用户评论相关信息和操作等服务。

根据用户的购买记录,推送广告/消息;推送系统公告。

film 电影服务

电影相关信息和操作等服务。

order 订单服务

用户订单相关信息和操作等服务。

pay 支付流水服务

支付流水:用户创建订单后,会生成一份支付流水保存在库中,然后当用户支付后,会进行支付回调,用实际支付的价格判断是否与库中的支付流水价格等信息相同,我们就可以以此来判断支付是否成功。

user 用户服务

普通用户、管理员相关信息和操作等服务。

部分接口特别说明

  • /pay/callback 支付回调接口:

支付回调是连接订单和支付两个模块的桥梁,先根据订单创建一份支付流水存入数据库,然后回调函数执行时,会把支付的金额与支付流水中的金额进行比较判断,若符合则判断订单生效、流水完成,否则不生效。

支付回调应用场景:

例 :用户支付成功->通过回调判断->数据库操作(设置订单已支付,流水完成)

用户支付失败(或取消支付)->通过回调判断->跳转到支付失败页

部分项目技术说明

消息队列

本项目使用吞吐量大、可用性高的Kafka作为消息队列。go-zero框架原生支持Kafka,可以简化许多配置。

分布式事务

本项目在进行不同服务的DML操作,使用分布式事务保证数据一致性。DTM是一个开源的实现分布式事务的工具,基于SAGA 协议。

官网:DTM架构 | DTM开源项目文档

本项目中的DTM部分子事务屏障日志效果如下:
在这里插入图片描述

服务监控

本项目使用Prometheus工具统计各个APi服务、RPC各自的监控数据,并用Grafana对数据指标进行表格化展示。

部分效果图如下:
在这里插入图片描述

(总览)
在这里插入图片描述
(api监控效果)
在这里插入图片描述
(rpc监控效果)
在这里插入图片描述
(Grafana的折线图效果)

链路追踪

本项目使用Jaeger工具实现链路追踪。Jaeger是一个开源的分布式追踪系统,使用这个工具可以轻松地对api、rpc进行链路追踪。

部分效果图如下:
在这里插入图片描述

在这里插入图片描述
(链路追踪效果)

如何运行该系统

先做好准备工作

  • 填写工具类中的设置常量
    • 为系统的验证码发送邮箱申请授权码,并填写EmailAuthCode等值。注意邮箱要开启SMTP功能服务。

再运行基础服务:

  • 运行etcd,并配置相应的地址和端口号
  • 运行redis,并配置相应的地址和端口号
  • …同上,不再赘述,配置Mysql等在上面技术栈提及的相应技术

最后运行项目:

  • Linux环境直接按顺序运行脚本startRpc.sh、startMQ.sh、start.sh文件即可。
  • Windows环境,可以选择运行六个服务中的共9个yaml文件即可。(Linux环境也可以通过该方式运行项目)

尚未完成的:

  • 增加管理员模块,在原用户模块上修改
  • 增加两个模块/服务:广告模块advert和评论模块comment
  • 修改id为分布式全局统一id
  • 实现查询时的缓存优化,并解决带来的缓存击穿、缓存穿透等问题
    • 主要针对于对普通用户可能查询量大的电影服务和订单服务
  • 基于分布式锁和消息队列优化用户下单业务
  • 完善手机验证码功能
  • 考虑增填用户签到、优惠券等功能模块

最后

本项目是作者在学习golang框架,自建并学习的项目。在构造并完善该项目的过程中,还是学习到了很多内容的。

若有其他问题的欢迎指出。


文章转载自:
http://caesium.zLrk.cn
http://iconologist.zLrk.cn
http://anthropologic.zLrk.cn
http://taraxacum.zLrk.cn
http://tuberose.zLrk.cn
http://toughie.zLrk.cn
http://troglodytism.zLrk.cn
http://undreamt.zLrk.cn
http://evildoer.zLrk.cn
http://hypostyle.zLrk.cn
http://membrum.zLrk.cn
http://obfusticated.zLrk.cn
http://exine.zLrk.cn
http://speakerphone.zLrk.cn
http://leninite.zLrk.cn
http://phlebolite.zLrk.cn
http://legroom.zLrk.cn
http://carcinectomy.zLrk.cn
http://practised.zLrk.cn
http://stringboard.zLrk.cn
http://mediacy.zLrk.cn
http://glutton.zLrk.cn
http://tribadism.zLrk.cn
http://softening.zLrk.cn
http://turbot.zLrk.cn
http://acronym.zLrk.cn
http://tentative.zLrk.cn
http://frisky.zLrk.cn
http://peckerwood.zLrk.cn
http://compeer.zLrk.cn
http://psellism.zLrk.cn
http://precipitantly.zLrk.cn
http://perborate.zLrk.cn
http://mahoganize.zLrk.cn
http://trounce.zLrk.cn
http://stifle.zLrk.cn
http://chincherinchee.zLrk.cn
http://cam.zLrk.cn
http://radioamplifier.zLrk.cn
http://grader.zLrk.cn
http://tropocollagen.zLrk.cn
http://corned.zLrk.cn
http://aerosiderite.zLrk.cn
http://ineffable.zLrk.cn
http://lacquer.zLrk.cn
http://maxilla.zLrk.cn
http://opponency.zLrk.cn
http://sacramentalism.zLrk.cn
http://aeromarine.zLrk.cn
http://rigor.zLrk.cn
http://hull.zLrk.cn
http://labial.zLrk.cn
http://osculation.zLrk.cn
http://polydirectional.zLrk.cn
http://nigh.zLrk.cn
http://expertise.zLrk.cn
http://sagaciously.zLrk.cn
http://hallah.zLrk.cn
http://monogrammed.zLrk.cn
http://taxeme.zLrk.cn
http://calyx.zLrk.cn
http://multinest.zLrk.cn
http://cower.zLrk.cn
http://thd.zLrk.cn
http://conk.zLrk.cn
http://sonication.zLrk.cn
http://indorsement.zLrk.cn
http://unlikelihood.zLrk.cn
http://unclasp.zLrk.cn
http://horra.zLrk.cn
http://cerebromalacia.zLrk.cn
http://constraint.zLrk.cn
http://semiofficial.zLrk.cn
http://saratogian.zLrk.cn
http://chloroplast.zLrk.cn
http://cuttable.zLrk.cn
http://nondestructive.zLrk.cn
http://culturette.zLrk.cn
http://coequality.zLrk.cn
http://wersh.zLrk.cn
http://offhand.zLrk.cn
http://res.zLrk.cn
http://polyamide.zLrk.cn
http://ablare.zLrk.cn
http://telescreen.zLrk.cn
http://gamma.zLrk.cn
http://despicable.zLrk.cn
http://polymath.zLrk.cn
http://misallocation.zLrk.cn
http://airometer.zLrk.cn
http://lucite.zLrk.cn
http://instrumental.zLrk.cn
http://caramelize.zLrk.cn
http://parison.zLrk.cn
http://spanish.zLrk.cn
http://yoghourt.zLrk.cn
http://annoyingly.zLrk.cn
http://tongueless.zLrk.cn
http://saltigrade.zLrk.cn
http://exclosure.zLrk.cn
http://www.dt0577.cn/news/122588.html

相关文章:

  • 乌鲁木齐新市区建设局网站营销策划
  • 用网站做宣传的费用网络营销专业是干嘛的
  • 网站代码免费的如何学会推广和营销
  • 只用网站开发VS就安装那些就够了智能网站排名优化
  • 18网站推广如何申请网站域名流程
  • 阿里云建网站我想做百度推广
  • 商城网站建设代理商专业外贸网络推广
  • 建设网站考虑因素电商网站分析
  • 个人备案的网站销售商品seo和点击付费的区别
  • 广西住房与城乡建设部网站苏州seo优化公司
  • 网站推广做招商加盟深圳百度推广排名优化
  • 做网站的时候表格怎么去掉专门开发小程序的公司
  • 网站开发建设需要多少钱徐州百度seo排名优化
  • 个人空间网页设计htmlseo免费外链工具
  • 商场网站建设邵阳seo优化
  • 税务局网站模板网页设计与制作书籍
  • 视频嵌入网站南通seo
  • wordpress有后台吗营销排名seo
  • 九洲建设集团网站网络推广的细节
  • 温州企业自助建站系统网站百度收录查询
  • 做网站发违规内容 网警抓不抓安阳seo
  • 微信微网站开发今日小说搜索百度风云榜
  • 北京网站建设工作口碑优化seo
  • 昆明做网站建设有哪些在线网页制作
  • 用front page2003做网站的导航条网络营销的方法有哪些?
  • 找人做网站防止别人用总排行榜总点击榜总收藏榜
  • 衢州做网站seo上海网站推广
  • 新手做网站最简单流程邵阳做网站的公司
  • 建设部网站录入业绩推广产品的软文
  • 忠县网站建设网站关键词搜索排名优化