十、项目:营销中心

一、项目背景

公司内很多业务线都有抽奖和礼品兑换的需求,之前是每个业务线都有自己一套营销逻辑,为了减少各业务线的重复开发,因此单独抽取一个market服务,实现了营销的功能,对外提供了抽奖和兑换的dubbo接口,各业务线只需要做一些活动配置,即可完成营销活动的创建和使用。

二、项目框架

三、数据流转

1、业务方需要先在market服务的管理后台market-admin里创建活动

2、业务方调用market服务的抽奖/兑换接口,market服务校验数据通过后,会返回调用结果,并进行相关奖品库存和用户积分的扣减。

3、Market服务将中奖结果转换为json消息,发送至rocketmq

4、tstock出库服务,从mq中获取用户中奖的数据,写到仓储表中,安排发货

四、部署zookeeper

1、将zookeeper安装包上传至Linux任意目录下,进行解压"tar -xvf zookeeper-3.4.9.tar.gz"

2、进到zookeeper的conf目录下,创建zoo.cfg文件

cp zoo_sample.cfg zoo.cfg

3、进到zookeeper的bin目录下,执行 "./zkServer.sh start" 启动zookeeper,有以下提示代表成功

五、部署rocketmq

1、确保Linux时间是准确的,如果不准确,使用ntp来同步最新时间

复制代码
yum install -y ntp
ntpdate pool.ntp.org

2、将rocketmq-all-4.5.1-bin-release.zip上传至Linux系统任意目录下,执行解压

unzip rocketmq-all-4.5.1-bin-release.zip

3、进入到rocketmq的bin目录下,修改以下配置文件

修改runserver.sh

根据自己Linux系统内存大小,将jvm参数设置为一个合理的值

修改runbroker.sh

根据自己Linux系统内存大小,将jvm参数设置为一个合理的值

修改tools.sh

根据自己Linux系统内存大小,将jvm参数设置为一个合理的值

4、启动 nameserver

复制代码
nohup ./mqnamesrv &

查看当前目录下的nohup.out日志,如有下面信息,则启动成功

5、启动 broker

复制代码
nohup ./mqbroker -n 127.0.0.1:9876 autoCreateTopicEnable=true -c ../conf/broker.conf &

查看当前目录下的nohup.out日志,如有下面信息,则启动成功

6、启动 rocketmq 控制台

将rocketmq-console-ng-1.0.0.jar上传到mq服务器上,执行命令启动

复制代码
nohup java -jar rocketmq-console-ng-1.0.0.jar --rocketmq.config.namesrvAddr=127.0.0.1:9876 &

注:默认使用8080端口,如果想使用其他端口,添加参数--server.port=xxxx

查看当前目录下的nohup.out日志,如有以下日志,代表启动成功

7、在浏览器里访问mq控制台,能看到页面,代表成功 http://{ip}:8080

相关推荐
Sokach10155 小时前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
SelectDB20 小时前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
AlfredZhao21 小时前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
zzzzzz3102 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode2 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220703 天前
如何搭建本地yum源(上)
运维
A小辣椒4 天前
TShark:Wireshark CLI 功能
linux
A小辣椒4 天前
TShark:基础知识
linux
AlfredZhao4 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
AlfredZhao5 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi