Lottery抽奖项目学习第二章第一节:环境、配置、规范

Lottery抽奖项目学习第二章第一节:环境、配置、规范

环境、配置、规范

下面以DDD架构和设计模式落地实战的方式,进行讲解和实现分布式抽奖系统的代码开发,那么这里会涉及到很多DDD的设计思路和设计模式应用,以及互联网大厂开发中所应用到的技术,包括:SpringBoot、Mybatis、Dubbo、MQ、Redis、Mysql、ELK、分库分表、Otter 等。在开始项目之前,仔细阅读如下介绍信息,方便更加快速的进入学习。

一、开发环境

  • JDK 1.8
  • SpringBoot 2.6.0
  • Dubbo 2.7.10
  • DB-ROUTER 自研分库分表组件,学习一起写SpringBoot Starter
  • vue开发H5大转盘抽奖
  • 微信公众号对接提供API,回复抽奖
  • Docker 本地/服务器均可

其他所需环境如下
请添加图片描述

  • 不只是DDD分布式项目开发,还可以学习到关于Docker的实践应用

二、环境配置

  • 技术栈项:JDK1.8,Maven3.6.3,MySQL5.7,SpringBoot、MyBatis、Dubbo随POM版本
  • 初始打包:需要在Lottery工程的Maven根上,点击install才能完整打包,否则Lottery-Test等不能正常引入jar包
  • 建表语句:doc/asserts/sql-建议随非分支内sql版本走,因为需求不断迭代升级优化,直接使用最新的会遇到在各个分支下的代码运行问题。
  • 下载依赖db-router-spring-boot-starter本项目依赖自研分库分表组件,需要用IDEA像打开一个项目一样打开,之后点击Maven install就可以把jar打包到本地仓库,Lottery就可以引入jar了。
  • 服务部署:本机直接安装Docker进行配置;

三、工程列表

  • 分布式核心功能服务系统:Lottery:提供抽奖业务领域功能,以分布式部署的方式提供RPC。
  • 网关API服务:Lottery-API:网关服务,提供H5页面抽奖、公众号开发回复消息抽奖。
  • C端用户系统:Lottery-front:开发中,vue H5 转盘抽奖lucky-canvas
  • B端运营系统:Lottery-ERP:满足运营人员对于活动的查询、配置、修改、审核等操作。
  • 分库分表路由组件:db-router-spring-boot-starter:本项目依赖自研分库分表组件,需要下载后构建开发一个基于HashMap核心设计原理,使用哈希三列+扰动函数的方式,把数据散列到多个库表中的组件,并验证使用。
  • 测试验证系统:Lottery-Test:用于测试验证RPC服务、系统功能调用的测试系统。

六、开发规范

分支命名:日期+id+功能单词,如:

230820_LBHQC_buildFramework
# 主要type
feat:     增加新功能
fix:      修复bug

# 特殊type
docs:     只改动了文档相关的内容
style:    不影响代码含义的改动,例如去掉空格、改变缩进、增删分号
build:    构造工具的或者外部依赖的改动,例如webpack,npm
refactor: 代码重构时使用
revert:   执行git revert打印的message

# 暂不使用type
test:     添加测试或者修改现有测试
perf:     提高性能的改动
ci:       与CI(持续集成服务)有关的改动
chore:    不修改src或者test的其余修改,例如构建过程或辅助工具的变动

项目学习源自小傅哥的知识星球
处于版权考虑,后续章节内容将以仅个人可见的形式发布。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值