微服务总结

目录

SpringBoot

1、配置文件:

2、启动器starter:

 SpringCloud

Git

1、与SVN对比:

2、Git的命令

Linux 

1、如何部署项目:

2、常用的命令 

 Docker

1、常用命令 :

2、Dockerfile:

 3、docker 中网络

RabbitMQ


SpringBoot

概念:基于Spirng框架的一站试解决方案

之前:项目开发需要利用Sping做各种框架的整合,如Spirng-Mybatis、Spirng-redis、Spring-nvc等等。

结论:会产生大量的配置文件/整合文件

之后:官方官宣0配置,确实可以做到0配置,具备对应框架的功能但是,如果不做任何配置,有部分框架用不了的;SpringMVC中的静态资源映射绝大多数的情况下,配置一个文件即可application.yml

1、配置文件:

        application.yml    配置启动器相关内容
        bootstrap.yml    通常是配置不变的东西,如配置中心

2、启动器starter:

             Spring-Boot-starter-web    
            Spring-Boot-starter-jdbc
            Spring-Boot-starter-xxx      等等

作用:

是将框架的功能封装调用,将启动器导入到SpringBoot工程中,SpringBoot工程就具备了该功能;  *如何自定义starter: 

  1. 将具备一定功能的SpringBoot项目打成jar包,这个简称为SpringBoot项目A
  2. 在SpringBoot项目B要使用该功能,只需要导入项目A对应的启动器
  3. 在项目A默认功能不足以使用,此时项目B就可以通过application.yml+配置类进行配置SpringBoot注解:

            @configuration 标记类,那么代表是一个配置类
            @bean    标记方法,代表Spring管理的javabean
            @autoconfigration 自动装配

 SpringCloud

概念:基于javaee的应用集成方案

五大组件:

                注册中心:nacos    服务注册与发现

                微服务调用 : Feign / openFeign 服务之间相互调用

                熔断限流:Hystrix:熔断降级       Sentinel

                负载均衡: ribbon:负载均衡

                网关:getway

                                        将外部请求转发到nacos上注册服务

                                        作用:保护内部微服务之间的调用关系

                                        一般这是用来做用户请求身份验证

服务雪崩:又一个微服务宕机引起整个微服务框架瘫痪


Git

概念:版本控制器

1、与SVN对比:

  1.  分布式
  2. 去中心化
  3. 分支

2、Git的命令

  1. git add.将添加、修改的文件加入暂缓区
  2. git commit 项目本地提交代码
  3. git push 向远程仓库gitee推送代码
  4. git clone 从远程仓库下载代码到本地
  5. git pull 从远程仓库更新代码
  6. git branch 

git冲突解决

 先更新再合并,最后做提交操作 

Linux 

概念:操作系统,服务器

1、如何部署项目:

        开发人员有一个完整的项目,被打成了jar或者war包  常识:Windows部署,就是将war包丢到tomcat>webapps下会自动解压,项目会跑起来

        在Linux服务器中配置jdk,Tomcat

                上传jdk、Tomcat的压缩包,要借助MobaXterm.exe、FinalShell工具上传

                配置jdk环境变量

                1)vi /etc/profile
                    export JAVA_HOME=/javaxl/jdk1.8.0_151(jdk解压路径)
                    export JRE_HOME=${JAVA_HOME}/jre
                    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
                    export PATH=${JAVA_HOME}/bin:$PATH

解压Tomcat压缩包

 tar -zxvf  apache-tomcat-8.0.53.tar.gz 

利用MobaXterm.exe上传项目war包,然后进入tomcat的bin目录,执行./start.sh命令
        升级项目:

            1.停掉tomcat服务:./shutdown
            2.进入到tomcat>webapps备份,执行命令tar -zcvf ssm ssm20220610.zip
            3.将升级的项目war包解压出来,此时解压出来的项目,就会覆盖原有的项目文件ssm
                tar -zxvf ssm.zip
            4.重启:bin ./start.sh        

2、常用的命令 

cd:切换目录
            ll/ls:查看当前目录下的所有文件及文件夹
            mkdir:创建文件夹
            rm -rf:删除文件    切记:rm -rf /*不要做
                rm -rf demo
            vi:查看并编辑文件    :wq 退出并保存文件
            ping:判断是否有网,或者与其他服务器是否可以链接
            ifconfig:查看当前IP
            pwd:查看当前所在目录
            tar -zxvf:解压
            tar -zcvf:压缩
            cat : 查看命令    

 Docker

概念:容器技术,新一代的虚拟化技术

镜像:类:由于大量的容器是相等的,那么才会构建镜像

容器:实例对象,会通过docker容器技术,创建大量的容器

数据卷:解决多个容器中数据共享的问题

1、常用命令 :

        镜像:docker pull 镜像名,docker rmi 镜像名,
                docker images:查询本地镜像
                docker search:查询中央仓库镜像

        容器: docker ps,
                docker run 镜像名,
                docker rm 容器名
                docker inspect 容器名:查看容器的详细信息
                docker exec :进入容器

        数据卷:docker run -v    容器ID:/目录 宿主机:目录
                docker pull mysql:5.7
                docker run -p 3307:3306 --name mysql1   -di 
                -v /home/javaxl/data/mysql/mysql.conf.d/:/etc/mysql/mysql.conf.d/ 
                -v /home/javaxl/data/mysql/data/:/var/lib/mysql 
                -v /home/javaxl/data/mysql/log/:/var/log 
                -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

2、Dockerfile:

  1.             制作镜像
  2.             FROM:基础镜像
  3.             ADD:将文件复制到容器中并解压
  4.             COPY:将文件复制到容器中
  5.             构建镜像的命令:docker build .
  6.             上传阿里云、镜像云

 3、docker 中网络

            仅主机:容器IP及端口用的是宿主机的
                docker run -di --name mt2 --net=host javaxl/tomcat8:v1.0
            桥接:容器随机分配ip,端口独立于宿主机的
                docker run -di --name mt1 -p:8081:8080 javaxl/tomcat8:v1.0

RabbitMQ


        概念:消息中间件;作用提升应用程序的性能;流量削峰
        生产者:消息发送方
        消费者:消息消费方
        Broker:RabbitMQ消息中间件服务器
        消息的100%投递: 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值