环境搭建教程

在上一篇中,我们了解了项目的整体结构,以及每个模块大概的作用,现在我们来开始搭建项目整个环境~~

本地环境要求(这里事务消息存储为mysql,消息中间件为:rocketmq)

JDK:1.8+ 需安装 git 、 maven 、 mysql 、 rocketmq

1、pull项目源代码

git clone https://github.com/yu199195/myth.git maven clean install

2、数据库初始化

脚本地址: myth\myth-demo\sql\myth-mysql-demo.sql 这里使用的mysql客户端工具: navicat premium

主要创建3个数据库:

  1. myth_account 会员服务数据库
  2. myth_order 订单服务数据库
  3. myth_stock 库存服务数据库
  4. myth 分布式事务消息库(手工创建)

前面3个库大家都很清楚,主要是为了演示分布式事务,在这里选择经典的订单下单这个场景,以便大家快速理解上手。

这里主要讲解myth库,该库主要存储分布式事务消息,参与分布式事务的各个子系统都对应一张表,用于存储各子系统本地事务消息

(注意:因为我这里采用的是mysql,所以需要创建这个数据库,只需创建库即可,该库下的表在各子业务子系统启动时自动create,代码解析请见后续章节)

myth库模型

3、rocketmq 安装部署

  1. 下载 http://rocketmq.apache.org/dowloading/releases/

    解押:rocketmq-all-4.0.0-incubating-bin-release.zip

  2. 修改runservice.sh和runbroker.sh

JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m -XX:PermSize=128m -XX:MaxPermSize=320m"

  1. 修改broker.conf
brokerClusterName = DefaultCluster
brokerName = broker-a
namesrvAddr=192.168.156.101:9876 #rocketmq 安装本机ip地址:服务端口
brokerId = 0
brokerIP1=192.168.156.101 #rocketmq 安装本机ip地址
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH
storePathRootDir=/soft/rocketmq/data  #数据存储路径
storePathCommitLog=/soft/rocketmq/logs  #日志存放路径
复制代码

4 启动 namesrv nohup sh apache-rocketmq-all/bin/mqnamesrv >logs/namesrv.log 2>&1 &

5 启动broker nohup sh apache-rocketmq-all/bin/mqbroker -c apache-rocketmq-all/conf/broker.conf > logs/broker.log 2>&1 &

6.验证

[root@myyh2 conf]# jps
2930 NamesrvStartup
3508 BrokerStartup
3562 Jps
复制代码

如上表示启动成功!

7.开放服务器端口 :

/sbin/iptables -I INPUT -p tcp --dport 9876 -j ACCEPT

到此环境搭建基本完成,下一章将进行配置与启动详解~

大家有任何问题或者建议欢迎沟通 ,欢迎加入QQ群:162614487 进行交流

Myth源码解析系列之三- 环境搭建相关推荐

  1. Mybatis源码解析(一):环境搭建

    Mybatis源码系列文章 手写源码(了解源码整体流程及重要组件) Mybatis源码解析(一):环境搭建 Mybatis源码解析(二):全局配置文件的解析 Mybatis源码解析(三):映射配置文件 ...

  2. Myth源码解析系列之四- 配置与启动详解

    在上一篇中,我们项目所需的整个环境都已搭建完成,下面我们主要介绍项目的相关配置于启动环节 配置详解 注意: 这里事务存储我们这里采用的是 : mysql, 消息中间件选择的是:rocketmq, 其他 ...

  3. Myth源码解析系列之五- 服务启动源码解析

    通过前面几篇文章,我们搭建了环境,也进行了分布式事务服务的体验,相信大家对myth也有了一个大体直观的了解,接下来我们将正式步入源码解析之旅~~ order服务启动源码解析(myth-demo-spr ...

  4. Myth源码解析系列之九-总结

    本人并非开源产品作者,但深受作者感染,我们都知道开源作品实属不易, 想想 当人家在玩农药时,而你在码代码, 当人家在陪女朋友约会时,你还是在码代码 ~ ~ 这不仅是需要用心投入更多的是需要消耗和牺牲很 ...

  5. Myth源码解析系列之六- 订单下单流程源码解析(发起者)

    前面一章我们走完了服务启动的源码,这次我们进入下单流程的源码解析~ 订单下单流程源码解析(发起者) 首先保证myth-demo-springcloud-order.myth-demo-springcl ...

  6. Myth源码解析系列之一-项目简介

    Myth 介绍 Myth 是一个基于消息队列的分布式事务开源框架, 基于java语言来开发(JDK1.8),支持dubbo,springcloud,motan等rpc框架进行分布式事务. 项目git地 ...

  7. Myth源码解析系列之二-项目结构介绍

    上一篇我们了解了myth是什么及能做什么,下面我们来了解下项目主体结构吧 项目工程结构图 项目工程详解 myth-annotation myth分布式事务框架注解(如 @myth注解),业务层主要通过 ...

  8. Myth源码解析系列之八- myth-admin事务管理后台

    分布式事务的跟踪管理后台 ##1.配置详解 server.port=8888 server.context-path=/myth-admin server.address=0.0.0.0 spring ...

  9. Dubbo 实现原理与源码解析系列 —— 精品合集

    摘要: 原创出处 http://www.iocoder.cn/Dubbo/good-collection/ 「芋道源码」欢迎转载,保留摘要,谢谢! 1.[芋艿]精尽 Dubbo 原理与源码专栏 2.[ ...

最新文章

  1. CentOS文件浏览器设置
  2. Centos7.6安装redis
  3. Kafka基本概念与术语
  4. 箱体图_靓爆了!东莞近千个市政箱体换上“新装”成街头风景线
  5. win8 计算机配置,Win8如何进行系统配置
  6. [转载] python 字符串查找的4个方法和count函数
  7. python—缺失数据的处理
  8. 阶段3 1.Mybatis_03.自定义Mybatis框架_4.自定义mybatis的编码-解析XML的工具类介绍
  9. 推荐系统(7):推荐算法之基于协同过滤推荐算法
  10. c#+上传文件至服务器,C# 实现文件上传到服务器
  11. 论文查重的标准是怎样的?
  12. js文本框设置必填项_JS校验表单必填项
  13. 百胜中国拟2025年前开1000家Lavazza咖啡店​;别样肉客开始陆续进驻中国山姆会员商店 | 知消...
  14. Spring Cloud Gateway 3.1.1基于redis实现动态路由和管理功能
  15. Spring Boot配置log4j记录日志
  16. python分支语句_Python语言基础分支语句、循环语句.ppt
  17. 生死看淡,不服就GAN——GAN的种类
  18. 初探Kronecker product(克罗内克积)
  19. java pdf 修改内容_生成PDF全攻略之在已有PDF上添加内容的实现方法
  20. 浅谈自动驾驶系统感知系统

热门文章

  1. Linux拷贝服务器文件夹到本地
  2. 怎么让DIV的高度为浏览器高度
  3. Ubuntu设置IP地址、网关、DNS
  4. 成都大学计算机学院录取分数线,2016年成都大学艺术类专业录取分数线
  5. python截图-用python实现选择截图区域
  6. 如何使用parted划分2bt以上磁盘
  7. stm32 arduino 驱动jlx液晶屏
  8. ubuntu修改属组时chown: 无法访问‘bangbang‘: 没有那个文件或目录
  9. 计算机中sqrt函数是什么意思,在EXCEL中 SQRT和SUMSQ是什么意思呢?
  10. 分布式tensorflow介绍1:实现最简单的ps-work工作模式