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

微服务商城(1)开篇、服务划分

参考:https://mp.weixin.qq.com/s?__biz=Mzg2ODU1MTI0OA==&mid=2247485597&idx=1&sn=7e85894b7847cc50df51d66092792453&scene=21#wechat_redirect

为什么选择go-zero

go-zero 为我们提供了许多高并发场景下的实用工具,比如为了降低接口耗时我们往往需要并发的请求依赖的服务,这个时候我们可以使用 mapreduce 并行的处理请求;面对海量请求为了降低Redis压力和提高响应时间,我们可以使用 collection 构建本地缓存;避免用户连续请求造成服务压力可以使用 limit 做用户级别的限流等等。好的框架能够给我的项目开发带来事半功倍的效果,Go-zero的简洁易用性与内置的开箱即用的工具和服务治理能力助力我们构建一个高并发高可靠的系统。

产品需求

在这里插入图片描述
比较核心的功能点,比如请求量非常高的首页Banner我们如何优化,抢购商品如何保证不超卖,交易过程中分布式事务的实现等我们都会重点介绍。
以及后边我自己添加整合的ES加速搜索、客服中心、AI推荐等等。

服务划分

  • 商家服务(shop) - 商家的注册、登录

  • 商品服务(product) - 商品的添加、信息查询、库存管理等功能

  • 购物车服务(cart) - 购物车的增删改查

  • 订单服务(order) - 生成订单,订单管理

  • 支付服务(pay) - 通过调用第三方支付实现支付功能

  • 账号服务(user) - 用户信息、等级、封禁、地址管理

  • 推荐服务(recommend) - 首页商品推荐、ES商品搜索、AI商品询问推荐

  • 评论服务(reply) - 商品的评论功能、评论的回复功能

  • 客服服务(Customer Service) - 用户与店铺客服沟通、店铺创建群聊
    在这里插入图片描述
    在每个服务目录下我们又会分为多个服务,主要会有如下几类服务:

  • api - 对外的BFF服务,接受来自客户端的请求,暴露HTTP接口

  • rpc - 对内的微服务,仅接受来自内部其他微服务或者BFF的请求,暴露gRPC接口

  • rmq - 负责进行流式任务处理,上游一般依赖消息队列,比如kafka等

  • admin - 也是对内的服务,区别于rpc,更多的是面向运营侧的且数据权限较高,通过隔离可带来更好的代码级别的安全,直接提供HTTP接口

相关文章:

  • LLM(大语言模型)部署加速方法——PagedAttention
  • 【第六课】ESP32-S3 BLE 与 WiFi 一体化通信示例
  • 从0开始学linux韦东山教程第三章问题小结(4)
  • 内存分配器ptmalloc2、tcmalloc、jemalloc,结构设计、内存分配过程详解
  • fiftyone-数据库配置和config与app_config配置文件
  • 耐压击穿测试的原理、流程及应用领域
  • SymPy | 如何提取指定项的系数
  • LeetCode 820 单词的压缩编码题解
  • 笔记本电脑打开网页很慢,一查ip地址网段不对怎么处理
  • 数学建模初等模型应用
  • 影刀RPA网页自动化总结
  • TCP 三次握手建立连接详解
  • 【PostgreSQL数据分析实战:从数据清洗到可视化全流程】附录-B. 错误代码与解决方案
  • AWS技术助力企业满足GDPR合规要求
  • MATLAB 中常用的微分函数介绍
  • 武汉科技大学人工智能与演化计算实验室许志伟课题组参加2025中国膜计算论坛
  • 网络运维过程中的常用命令
  • 安装npm:npm未随Node.js一起安装
  • 深度学习基础知识
  • 5月13日日记
  • 腾讯一季度营收增长13%,马化腾:战略性的AI投入将带来长期回报
  • 菲律宾中期选举初步结果出炉,杜特尔特家族多人赢得地方选举
  • 白天气温超30℃的北京,晚间下起了冰雹
  • 共情场域与可持续发展——关于博物馆、美术馆运营的新思考
  • 一手实测深夜发布的世界首个设计Agent - Lovart。
  • 印称印巴军事行动总指挥同意将局势降级