自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (1)
  • 收藏
  • 关注

原创 《LInux中Docker的安装》

在线安装Docker 如果以前装过Docker的话 那么卸载掉 1 - 卸载旧版本 sudo yum remove docker-ce \ docker-ce-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \

2021-03-11 15:36:46 169

原创 Linux中安装Nginx及配置

Nginx的简单介绍 Nginx是什么? 1)–Nginx 是一个高性能的 HTTP 和 反向代理 web服务器. 2)–事实上Nginx的并发能力在同类型的网页服务器中表现较好. 3)–中国大陆使用Nginx网站用户有:百度,京东,新浪,网易,腾讯,淘宝. 4)–Nginx 可以在大多数 Unix Linux OS 上编译运行. 5)–在连接高并发的情况下,Nginx是Apache服务不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件

2021-02-08 15:04:44 433

原创 《Linux中如何安装Redis》

Linux中安装Redis http://www.redis.cn/download.html 官网中下载Redis安装包 安装Redis 1. Linux中导入安装包并解压 我们使用的是MovaXtrem远程链接软件 安装包导入Linux后继续安装 工作目录: /usr/local/src 压缩命令: tar -xvf redis-5.0.4.tar.gz 解压 解压成功 解压成功后可以删除安装包 命令: rm -rf redis-5.0.4.tar.gz 删除成功 改Redis根目录

2021-02-07 23:44:56 161

原创 FastDFS 简介

FastDFS概述 阿里巴巴开源的一套轻量级,天生就是分布式设计的文件系统 FastDFS的源代码由C语言开发,目前可运行在Linux,FreeBSD,Unix等类操作系统上 FastDFS解决了大数据量文件存储 适合存储4KB~500MB之间的小文件,如图片网站、短视频网站、文档、app下载站等。 FastDFS主要特性 为互联网量身定制,海量数据文件存储 高可用(同组备份机制) FastDFS不是通用的文件系统,只能通过api来访问,目前提供c,java,php客户端。phtyon由第三方开发者提

2021-04-09 19:01:11 641

原创 《RabbitMQ整合SpringBoot》

新建项目 POM.xml 依赖文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apach

2021-03-16 17:26:04 253

原创 《Docker 案例》

前提准备 1 - 关闭防火墙 # 关闭防火墙 systemctl stop firewalld.service # 禁止防火墙开机启动 systemctl disable firewalld.service 2 - 启动或重启docker # 启动docker systemctl start docker # 重启docker systemctl restart docker 3 - 查看是否存在别的容器,存在的话删掉 docker ps Redis 加载镜像 端口:7000 docker ru

2021-03-13 00:36:33 279

原创 《Docker 端口映射 ,容器互联 ,DockerFIle》

端口映射 客户端访问容器的时候,不能直接访问 ,只能跟宿机绑定端口后才能访问 绑定端口 -p 宿主机端口:容器端口 docker run -d --name cat3 -p 8001:8080 tomcat 访问测试 : 192.168.64.150:8001 部署一个 Hell world web应用 首先知道容器的部署路径 宿主机中创建目录 并且里面写 jsp 代码 mkdir /opt/web cat <<EOF >/opt/web/index.jsp <h1

2021-03-12 12:14:33 376

原创 《Docker 镜像操作,容器操作,数据管理》

Docker镜像操作 什么是镜像 : 就是虚拟机的静态磁盘文件 也就是说小的虚拟机 可以任意的复制,分发,就是可以任意执行,可以别的计算机上执行 在线装镜像 (官方的镜像库) http://hub.docker.com 可以搜搜你需要的进项 找到你需要的镜像后按照命令安装就好了 离线装镜像 把镜像的压缩包 上转到/root/目录中 导入镜像 docker load -i 文件名 查看镜像列表 docker images 镜像命令 装镜像 docker pull xxxx:xxx 查看镜像列

2021-03-12 00:18:57 258

原创 《RabbitMQ 6种工作模式》

简单模式 (1) RabbitMQ是一个消息中间件,你可以想象它是一个邮局。 当你把信件放到邮箱里时,能够确信邮递员会正确地递送你的信件。 RabbitMq就是一个邮箱、一个邮局和一个邮递员。 1 - 发送消息的程序是生产者 2 - 队列就代表一个邮箱。虽然消息会流经RbbitMQ和你的应用程序,但消息只能被存储在队列里。队列存储空间只受服务器内存和磁盘限制,它本质上是一个大的消息缓冲区。多个生产者可以向同一个队列发送消息,多个消费者也可以从同一个队列接收消息. 3 - 消费者等待从队列接收消息 演

2021-03-09 00:15:14 288 1

原创 《RabbitMQ 的介绍》

RabbitMQ 使用场景 1 - 服务解耦 假设有这样一个场景: 服务A产生数据, 而服务B,C,D需要这些数据, 那么我们可以在A服务中直接调用B,C,D服务,把数据传到下游服务即可. 但是 : 随着我们的应用规模不断扩大,会有更多的服务需要A的数据,如果有几十甚至几百个下游服务,而且会不断变更,再加上还要考虑下游服务出错的情况,那么A服务中调用代码的维护会极为困难` 这是由于服务之间耦合度过于紧密 再来考虑用RabbitMQ解耦的情况 A服务只需要向消息服务器发送消息,而不用考虑谁需要这些

2021-03-07 23:20:51 162

原创 《Linux中安装RibbitMQ消息列队》

1 - 1 离线安装 下载RabbitMQ的安装包 下载RibbitMQ 上传安装包 rabbitmq-install 目录上传到 /root * 切换到rabbitmq-install目录 cd rabbitmq-install 安装 rpm -ivh *.rpm 1 - 2 Yum在线安装 来自RabbitMQ的官网手册 rpm --import https://github.com/rabbitmq/signing-keys/releases/download/2

2021-03-07 21:22:52 172

原创 《向eureka注册正确的ip地址》

背景 eureka客户端向eureka注册时, 会自动选择网卡, 并可能注册主机名而不是ip地址. 下面配置可以选择正确网卡的ip向eureka进行注册. 选择正确网卡 服务器有多块网卡,要选择正确网卡的ip地址向eureka进行注册 修改 yml 引导配置文件 不能在appplication配置文件里面配置,必须有引导配置文件 spring: cloud: inetutils: ignored-interfaces: - VM.*

2021-03-07 20:22:11 3042 1

原创 《sleuth + zipkin 链路跟踪》

sleuth (生成链路,跟踪日志) 每一个项目中添加后 每一个项目生成链路日志 过程 : 如果我们有 4 个项目 A —— B —— C —— D 每个项目调用 sleuth 根据执行业务 生成 链路 id 比如: A,asdfasdf,t4hjk65x4gh65 前面的是 整个链路的id ,后面的是 执行某个业务的链路id 比如 : A,asdfasdf,t4hjk65x4gh65 B,asdfasdf,bnmfgh13254 C,asdfasdf,fghtiyuij5554 D,asdfasdf

2021-03-07 01:15:06 256

原创 《config bus + rabbitmq 消息总线配置刷新》

图解 post 请求消息总线刷新端点,服务器会向 rabbitmq 发布刷新消息,接收到消息的微服务会向配置服务器请求刷新配置信息 需要动态更新配置的微服务 添加 spring cloud bus 依赖,并添加 rabbitmq 连接信息 修改以下微服务 sp02-item-service (商品业务) sp03-user-service (用户业务) sp04-order-service (订单业务) sp11-zuul (网关) sp12-config (配置中心) pom.xml 添加 s

2021-03-05 00:36:24 308 1

原创 《Config 配置中心》

config 服务器 yml 配置文件保存到 git 服务器,例如 github.com 或 gitee.com config 配置中心从 git 下载所有配置文件。 而其他微服务启动时从 config 配置中心获取配置信息。 微服务启动时,从服务器获取配置文件 创建config文件夹 并且 把项目的yml配置复制掉config文件夹 复制后 改名 item-service-dev.yml user-service-dev.yml order-service-dev.yml

2021-03-03 23:39:48 737 1

原创 《zuul网关》

Zuul网关的作用? 我们微服务开发时 有很多的微服务业务,客户端每次访问的时候带给服务器的压力挺大,所以我们排上Zuul网关的机制 统一的调用入口 统一的权限校验 集成 ribbon (负载均衡,重试) 集成 hydtrix ((断路器)降级和熔断) 创建Zuul api网关 新建项目 添加依赖 配置文件(yml) 启动类注解 1 - 创建项目 + 统一入口 2 - 添加依赖 这里的是项目中的公共模块 3 - 配置文件 (yml) spring:

2021-03-02 00:46:30 319

原创 《微服务中调用其他微服务 + turbine(集群聚合监控) 》

订单服务中 调用商品库存服务 和 用户服务 sp04-orderservice 项目,添加 feign,调用 item service 和 user service 流程 : 1 - pom.xml (依赖管理) 2 - application.yml (配置文件) 3 - 主程序 (启动项) 4 - ItemClient(商品业务远程接口) 5 - UserClient (用户业务远程接口) 6 - ItemClientFB (商品业务降级对象) 7 - UserClie

2021-02-27 01:10:55 300 1

原创 《feign (ribbon + hystrix + hystrix监控) 工具整合》

背景 先看 feign 的单独文章 Feign 声明式客户端接口 spring cloud 中好多工具是 一起使用的,feign 整合了 ribbon和hystrix 并提供了声明式消费者客户端,我们把这些工具整合一起使用 ribbon —— 负载均衡,重试 hystrix —— 断路器 (降级 ,熔断) 用 feign 代替 hystrix+ribbon feign + ribbon 负载均衡和重试 1 - 负载均衡 无需额外配置,feign已经启用了 ribbon 负载均衡和重试

2021-02-26 19:23:05 429 1

原创 《Feign 声明式客户端接口》

微服务应用中,ribbon 和 hystrix 总是同时出现,feign 整合了两者,并提供了声明式消费者客户端 注意 : 用 feign 代替 hystrix+ribbon Feign 声明式客户端接口 新建 sp09-feign 项目 创建项目 添加依赖 pom.xml (依赖文件) <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xml

2021-02-26 00:04:35 254 1

原创 《hystrix dashboard 断路器仪表盘,监控信息》

hystrix dashboard 断路器仪表盘 hystrix 对请求的降级和熔断,可以产生监控信息,hystrix dashboard可以实时的进行监控 actuator 是 spring boot 提供的服务监控工具,提供了各种监控信息的监控端点 management.endpoints.web.exposure.include 配置选项 可以指定端点名,来暴露监控端点 如果要暴露所有端点,可以用 “*” actuator 监控工具 可以暴露项目中各种监控信息 健康状态 系统环境变量 spri

2021-02-25 23:19:50 290 1

原创 《Hystrix 断路器》

Hystrix 断路器 Hystrix是spring cloud的断路器工具,所谓的断路器是 如果某个业务发生故障或者宕机,那么一旦断路器发现就断掉业务的接口路,然后跳过去我们预设置的业务或者报错提示 hystrix(断路器) 直接调用在 ribbo(负载均衡) 里面 Hystrix 断路器的特征 1 - 降级 如果请求后台服务出错,可以通过执行另一段代码,向客户端返回响应 降级响应,可以是错误提示,也可以是缓存数据库 如果实现降级代码 : @HystrixCommand(fallbackMe

2021-02-25 22:29:49 202

原创 《Ribbon 负载均衡,重试》

Ribbon 服务 Ribbon 提供了负载均衡和重试功能, 它底层是使用 RestTemplate 进行 Rest api 调用 RestTemplate RestTemplate 是SpringBoot提供的一个Rest远程调用工具 它的常用方法: getForObject() - 执行get请求 postForObject() - 执行post请求 之前的系统结构是浏览器直接访问后台服务 后面我们通过一个Demo项目演示 Spring Cloud 远程调用 使用RestTemp

2021-02-24 23:06:36 276

原创 《Eureka注册中心》

什么是注册中心 分布式服务框架部署在多台不同的机器上,不同的机器在注册中心里注册到自己的状态, 服务启动时,会链接注册中心,将服务数据(服务名称|IP|端口)写入注册中心 注册中心接收用户服务数据之后,动态维护服务列表. 当用户调用服务消费者时.消费者根据当前服务列表的信息,进行负载均衡,挑选其中一个服务进行访问. 注册中心为了保证服务列表的正确性,通过心跳检测机制.实时监控所有服务生产者 Eureka注册中心 什么是Eureka注册中心 Spring Cloud 将它集成在其子项目 Spring

2021-02-24 21:31:24 363

原创 《Spring Cloud 简介》

什么是微服务 微服务的概念源于2014年3月Martin Fowler所写的一篇文章“Microservices” 1. 微服务架构是一种架构模式,把应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值 2. 每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通 3. 每个服务都围绕着具体业务进行构建,并且能够被独立地部署到生产环境、类生产环境等 4. 一个大型复杂软件应用由一个或多个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务仅

2021-02-24 18:08:11 187

原创 《Dubbo框架》

Dubbo框架 Dubbo框架的介绍 Dubbo(读音[ˈdʌbəʊ])是阿里巴巴公司开源的一个高性能优秀的服务框架(SOA),使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring框架无缝集成。 Dubbo是一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。 如何设用Dubbo 1 - Dubbo的依赖 <dependency> <gro

2021-02-19 23:50:40 159 1

原创 《SpringBoot 图片上传功能》

图片上传返回值分析 { "error":0 "url":图片的保存路径 "width":图片的宽度 "height":图片的高度 } error : 表示错误信息 0 上传成功!! 1.上传失败. url地址 : 图片虚拟路径地址(区分真实磁盘地址) width/height : 作为图片/宽和高必须的属性. 商品回显VO封装 结构 @Data @Accessors(chain = true) @NoArgsConstructor @AllArgsConstructor public clas

2021-02-16 00:26:06 361

原创 《Redis优化策略》

关于Redis常规属性 Redis中持久化策略-RDB 1 - 需求说明: Redis中数据都保存到了内存中,但是内存的特点断电及擦除. 为了保证redis中的缓存数据不丢失,则需要将内存数据定期进行持久化操作. 持久化:将内存数据,写到磁盘中 2 - RDB模式 特点 : RDB模式是Redis默认的持久化规则 RDB模式记录的是Redis内存数据快照(只保留最新数据) RDB模式定期持久化(时间可调) 可能会导致数据丢失. RDB模式备份效率是最高的. RDB模式备份阻塞式的 在备份时不允许其他用

2021-02-12 20:19:11 271

原创 《redis集群(安装以及使用)》

Redis集群 为什么要搭建集群 通常,为了提高网站响应速度,总是把热点数据保存在内存中而不是直接从后端数据库中读取。 Redis是一个很好的Cache工具。大型网站应用,热点数据量往往巨大,几十G上百G是很正常的事儿。 Redis作为缓存数据库。但是如何保证数据存储的一致性呢,这时就需要搭建redis集群.采用合理的机制,保证用户的正常的访问需求. 采用redis集群,可以保证数据分散存储,同时保证数据存储的一致性.并且在内部实现高可用的机制.实现了服务故障的自动迁移. 集群搭建计划 主从划分:

2021-02-11 17:01:52 200

原创 《 Redis集群(理论概念) 》

Redis的宕机条件 什么是Reids宕机 宕机是计算机术语,口语里面我们简单的把停掉机器叫做《宕机》,但很多人都叫做“当机”“死机” 宕机条件 : Redis中的主机缺失时,并且没有从机替补,Redis内存数据丢失.这时Redis集群崩溃了. 问题1 : 6台redis 3主3从(1主1从分为3组). 至少Redis宕机几台集群崩溃. 至少2台 集群崩溃. 问题2 : 9台redis 3主6从(1主2从分为3组). 至少宕机几台Redis集群崩溃. 至少5台 集群崩溃. 集群宕机的条件

2021-02-11 02:37:53 359

原创 《AOP实现Redis缓存业务》

AOP实现缓存业务 业务需求 1 使用自定义注解来表示业务方法,业务的返回值保存到缓存中 2 利用AOP拦截注解 利用环绕通知方法实现业务 提前准备 1. 创建Redis的配置文件(准备redis节点) 创建properties配置文件,里面存入Redis节点 #准备redis的节点信息 redis.host=192.168.126.129 redis.port=6379 2.创建Redis配置类(节点交给spring容器进行管理) 创建class类 里面导入配置文件存储的节点信息并且交

2021-02-09 20:52:56 540 1

原创 Linux数据库高可用实现

准备 本章需要两个linux系统,两个linux系统中安装数据库,两个linux的ip地址必须不一样,如果是一样的话,改ip地址 本章使用的数据库可视化软件是:SQLyogEnt 修改ip地址 安装数据库 数据库优化说明 场景 : 数据库中的记录应该保证尽可能的安全,如果数据丢失则会造成不可挽回的损失,所以我们希望出现这种情况!!! 说明 : 根据用户的需求 定期的将数据库文件进行备份/转储 从而保证数据的安全. 冷备份说明 : 冷备份可以实现以上的需求但是,冷备份有缺点,操作起来比较麻烦 缺点 –

2021-02-08 16:32:36 233

原创 《LInux中如何安装MySql和MariaDB以及配置》

提示:mariadb和mysql的配置以及安装流程都一样,本文章中mariadb举个例子,下载mysql的同样的方法,放心 下载MariaDB数据库 第一步 – 检查系统是否正常联网 ping www.baidu.com 我们测试设否正常上网,如果显示图片的一样,说明可以正常上网 第二步 – 下载MariaDB前的注意事项 我们下载数据库的话使用yum命令 yum命令简介:windows有自己的应用商场,那么 yum就是链接 linux的应用商场,我们下载应用的话使用yum命令 缺点:下载的应用程序的路径

2021-02-08 16:18:19 418

原创 《Linux中如何改ip地址》

查询ip地址 我们在linux上 ip addr 命令来查询ip地址 ip addr ip 地址查看的地址 查看ip地址是否顺畅 我们在linux上 ping 命令来查询ip是否顺畅 ping 192.168.126.129 说明ip顺畅 如果ip不显示,或者网卡出了问题那就执行以下的命令: service NetworkManager stop chkconfig NetworkManager off 永久关闭 Manager网卡 service

2021-02-08 14:48:25 855

原创 《SpringBoot 项目全局异常处理》

前提 为什么使用全局异常处理? 因为项目开发过程中遇到各种异常,我们单独处理的话性能较低,也不灵活,用户显示的的是一堆英文的提示,所以我们一下子就处理这种异常,所以我们需要全局异常处理, 准备 首先我们创建一个 异常包,包里面创建一个类 我们的这个异常处理配合Lombok来配合处理 这个类是我们的全局异常类, 简单的全局异常 @Slf4j //lombok中的日志处理注解 @RestControllerAdvice //全局异常 public class GolbalException

2021-02-08 14:40:59 228

原创 《Redis入门》

#Redis入门 Linux中安装Redis ###redis的说明 Redis 是一个开源的,内存中的数据结构存储系统它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构 ##1. Redis常用命令 ###string类型: 命令 说明 案例 set 添加key-value set username admin get 根据key获取数据 get username exists 判断key是否存在 exists name(返回1存在 0不存在) del 删除redi

2021-02-07 22:40:57 1008

docker-install.rar

docker-install.rar

2021-03-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除