教你如何单机搭建测试用的分布式系统(一)

5 篇文章 0 订阅
3 篇文章 0 订阅

今天来写一篇博客,教大家如何搭建分布式系统.
万事开头难,很多人放弃某样东西往往都是在刚开始的时候遇到了困难.所以有句话叫做"师傅领进门,修行靠个人",这个帖子权当作领各位进门吧.
开始之前先聊一下我的学习经历吧,博主一开始是学java开发的,刚开始学的时候是学的javaweb,用到的技术有Struts,jsp,hibernate,spring等框架技术统称"三大框架",那时候学完只会写些单机版的项目,很low连网络基础知识都没有,只会"增删改查".后来转做Android开发,做了几个APP项目之后感觉乏味了,又开始关注后端技术,最近接触了微服架构,于是打算尝试搭建一个分布式微服系统.
我将要带领大家搭建的这个微服系统涉及到的技术比较多
先来罗列一下用到的技术.
操作系统:Windows10,CentOS7
编程语言:java,JavaScript
后端架构:spring cloud
编译:maven
中间件:Redis,kafka,RabbitMQ,mybatis,nacos,mybatis,mybatis
前端:Vue
数据库:mysql,jdbc
容器:Nginx,docker,Tomcat

一开始的时候后端系统大都是集中式系统,这种系统在没有高并发需求的时候尚能应付,它集成简单,容易部署,但可用性不高,只要系统有一处bug就可能导致整个系统崩溃.
后来技术慢慢地演变就有了分布式系统,它是由分布在多个主机的子系统组合而成的,伸缩性好,可用性高,但是部署可能会比较复杂,当然自动化部署技术也在发展中.
搭建前先来画个草图:

客户端
服务器1
服务器2
服务器3
数据库1
数据库2
数据库3

目标搭建的系统大概是这个样子,一个客户端,多个服务端子系统,加多个数据库.
客户端放到Nginx容器里面供用户访问,服务端系统放到docker容器并在Linux系统下部署,数据也分别在liunx系统下部署.
工欲善其事,必先利其器.下面罗列一些windows10系统下的软件工具:VMware虚拟机,Centos7,idea,VScode

一,用VMware虚拟机安装CentOS7系统

VMware安装请看这个教程
安装好后,打开VMware虚拟机
在这里插入图片描述
点击加号创建新的虚拟机
在这里插入图片描述
到这步的时候需要你提供ISO镜像文件,需要的发邮件给我

Centos7安装教程

在CentOS7里搭建运行环境

在CentOS里面我们需要安装Nginx容器,docker容器,还有Mysql数据库

在开始安装这些软件之前需要对你的CentOS检查几项功能:
1,你的CentOS是否能联网

#输入命令
ip addr

在这里插入图片描述
如图如果你的CentOS系统有网络就会看到你的IP地址
没有网络的同学请按照以下方法配置网络:centos7网络配置教程
2,检查你的CentOS操作系统是否开启了防火墙,如果开启了防火墙,请记得打开你需要提供给外部访问的端口号
打开端口号的方法如下(我这里用的是iptables,CentOS默认用的是firmware,需要安装iptables iptables安装教程):

查看已开放端口:
iptables -L

添加端口入口允许(示例:3306):
iptables -I INPUT -p tcp —dport 3306 -j ACCEPT

添加端口出口允许(示例:3306):
iptables -I OUTPUT -p tcp —sport 3306 -j ACCEPT

保存:
service iptables save

查看打开的端口:
iptables status

重启:
service iptables restart
nginx安装

一、安装编译工具及库文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

二、安装 PCRE(让 Nginx 支持 Rewrite 功能)

#下载最新版本的,注意不要用pcre2
wget https://jaist.dl.sourceforge.net/project/pcre/pcre/8.42/pcre-8.42.tar.gz
tar -xvf pcre-8.42.tar.gz
cd pcre-8.42 
#安装编译
./configure
make && make install
#查看pcre版本
pcre-config --version

三、安装nginx

#下载
wget https://nginx.org/download/nginx-1.15.9.tar.gz
tar -xvf nginx-1.15.9.tar.gz
cd nginx-1.15.9
#编译安装
./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.42 
make && make install
#查看版本
/usr/local/webserver/nginx/sbin/nginx -v

四、nginx操作
在Nginx安装目录下操作命令

/usr/local/webserver/nginx/sbin/nginx #启动
/usr/local/webserver/nginx/sbin/nginx -s reload #重新载入配置文件
/usr/local/webserver/nginx/sbin/nginx -s reopen #重启 Nginx
/usr/local/webserver/nginx/sbin/nginx -s stop # 停止 Nginx

五,测试
打开浏览器输入http://你的虚拟机IP地址:80(需要打开80端口)
就可以看到默认的访问界面

docker容器安装

docker安装教程
docker安装好后需要远程连接,这里要修改一下它的配置文件:

 vim /usr/lib/systemd/system/docker.service
#在该文件下添加
ExecStart=  
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock

在这里插入图片描述

# docker重新读取配置文件,重新启动docker服务
# systemctl daemon-reload

# systemctl restart docker

这个时候你就可以用你的idea连接上docker了(idea安装后面讲)
在这里插入图片描述

mysql安装

mysql安装教程
安装完成后记得打开3306端口,确保能远程访问

二,搭建windows10下的开发环境

1,java环境

java安装教程

2,安装idea

idea安装教程

3,下载代码

打开idea从git仓库导入代码

https://github.com/milantiejiang/spring-cloud-demo.git

在这里插入图片描述
在这里插入图片描述
代码结构如下
在这里插入图片描述
篇幅原因,这篇博客就先到这吧.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值