12 2019 档案

摘要:zuul路由网关 1.是什么 Zuul包含了对请求的路由和过滤两个最主要的功能: 其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础而过滤器功能则负责对请求的处理过程进行干预,是实现请求校验、服务聚合等功能的基础. Zuul和Eureka进行整合,将Zuul自身注册为E 阅读全文
posted @ 2019-12-26 11:39 XiangHuiBlog 阅读(199) 评论(0) 推荐(0)
摘要:服务监控hystrixDashboard 1.是什么 除了隔离依赖服务的调用以外,Hystrix还提供了准实时的调用监控(Hystrix Dashboard),Hystrix会持续地记录所有通过Hystrix发起的请求的执行信息,并以统计报表和图形的形式展示给用户,包括每秒执行多少请求多少成功,多少 阅读全文
posted @ 2019-12-26 11:23 XiangHuiBlog 阅读(132) 评论(0) 推荐(0)
摘要:服务降级 1.是什么 整体资源快不够了,忍痛将某些服务先关掉,待渡过难关,再开启回来。 服务降级处理是在客户端实现完成的,与服务端没有关系 2.实验代码 1.修改microservicecloud-api工程, 根据已经有的DeptClientService接口新建一个实现了 FallbackFac 阅读全文
posted @ 2019-12-26 11:11 XiangHuiBlog 阅读(162) 评论(0) 推荐(0)
摘要:服务熔断 1.是什么 服务熔断熔断机制是应对雪崩效应的一种微服务链路保护机制。当扇出链路的某个微服务不可用或者响应时间太长时,会进行服务的降级,进而熔断该节点微服务的调用,快速返回"错误"的响应信息。当检测到该节点微服务调用响应正常后恢复调用链路。在SpringCloud框架里熔断机制通过Hystr 阅读全文
posted @ 2019-12-26 11:05 XiangHuiBlog 阅读(207) 评论(0) 推荐(0)
摘要:Hystrix断路器 1.是什么 分布式系统面临的问题 服务雪崩多个微服务之间调用的时候,假设微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,这就是所谓的“扇出”。如果扇出的链路上某个微服务的调用响应时间过长或者不可用,对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩 阅读全文
posted @ 2019-12-26 08:59 XiangHuiBlog 阅读(136) 评论(0) 推荐(0)
摘要:Feign使用步骤 1.参考microservicecloud-consumer-dept-80 新建microservicecloud-consumer-dept-feign 修改主启动类名字DeptConsumer80_Feign_App 2.microservicecloud-consumer 阅读全文
posted @ 2019-12-25 11:40 XiangHuiBlog 阅读(334) 评论(0) 推荐(0)
摘要:1.什么是Feign负载均衡 官网解释:http://projects.spring.io/spring-cloud/spring-cloud.html#spring-cloud-feign Feign是一个声明式WebService客户端。使用Feign能让编写Web Service客户端更加简单 阅读全文
posted @ 2019-12-25 10:51 XiangHuiBlog 阅读(242) 评论(0) 推荐(0)
摘要:1.架构说明 Ribbon在工作时分成两步第一步先选择 EurekaServer ,它优先选择在同一个区域内负载较少的server.第二步再根据用户指定的策略,在从server取到的服务注册列表中选择一个地址。其中Ribbon提供了多种策略:比如轮询、随机和根据响应时间加权。 2.参考microse 阅读全文
posted @ 2019-12-25 10:16 XiangHuiBlog 阅读(220) 评论(0) 推荐(0)
摘要:Ribbon配置初步 1.修改microservicecloud-consumer-dept-80工程 2.修改pom.xml文件 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001 阅读全文
posted @ 2019-12-25 10:07 XiangHuiBlog 阅读(183) 评论(0) 推荐(0)
摘要:1.什么是Ribbon负载均衡? Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端 负载均衡的工具。 简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组件提 阅读全文
posted @ 2019-12-25 09:27 XiangHuiBlog 阅读(224) 评论(0) 推荐(0)
摘要:集群配置 原理 如果我们只配置一个Eureka服务端,那么如果这个服务端崩盘,那么所有服务都无法获取,这肯定不是我们不期望的。所以为了保证高可用性,我们需要搭建Eureka集群。 前面讲原理时已经提到Eureka Server在启动时默认会注册自己,成为一个服务,所以Eureka Server也是一 阅读全文
posted @ 2019-12-25 09:19 XiangHuiBlog 阅读(188) 评论(0) 推荐(0)
摘要:什么是自我保护模式? 默认情况下,如果EurekaServer在一定时间内没有接收到某个微服务实例的心跳,EurekaServer将会注销该实例(默认90秒)。但是当网络分区故障发生时,微服务与EurekaServer之间无法正常通信,以上行为可能变得非常危险了——因为微服务本身其实是健康的,此时本 阅读全文
posted @ 2019-12-24 18:20 XiangHuiBlog 阅读(148) 评论(0) 推荐(0)
摘要:actuator与注册微服务信息完善 1.主机名称:服务名称修改 当前问题 含有主机名称 修改修改microservicecloud-provider-dept-8001 的yml文件 修改内容 eureka: client: #客户端注册进eureka服务列表内 service-url: defa 阅读全文
posted @ 2019-12-24 18:17 XiangHuiBlog 阅读(179) 评论(0) 推荐(0)
摘要:修改microservicecloud-provider-dept-8001 1.修改pom 增加内容 <!-- 将微服务provider侧注册进eureka --> <dependency> <groupId>org.springframework.cloud</groupId> <artifac 阅读全文
posted @ 2019-12-24 17:51 XiangHuiBlog 阅读(172) 评论(0) 推荐(0)
摘要:构建 microservicecloud-eureka-7001 eureka服务注册中心Module 1.新建microservicecloud-eureka-7001 2.pom <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:x 阅读全文
posted @ 2019-12-24 11:48 XiangHuiBlog 阅读(178) 评论(0) 推荐(0)
摘要:1.Eureka的基本架构 Spring Cloud 封装了 Netflix 公司开发的 Eureka 模块来实现服务注册和发现(请对比Zookeeper)。 Eureka 采用了 C-S 的设计架构。Eureka Server 作为服务注册功能的服务器,它是服务注册中心。 而系统中的其他微服务,使 阅读全文
posted @ 2019-12-24 11:38 XiangHuiBlog 阅读(138) 评论(0) 推荐(0)
摘要:1.新建microservicecloud-consumer-dept-80 2.Pom <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 阅读全文
posted @ 2019-12-24 11:26 XiangHuiBlog 阅读(217) 评论(0) 推荐(0)
摘要:1、新建microservicecloud-provider-dept-8001 2.POM <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance 阅读全文
posted @ 2019-12-24 09:36 XiangHuiBlog 阅读(346) 评论(0) 推荐(1)
摘要:总体介绍 承接着我们的springmvc+mybatis+mysql初级高级课程,以Dept部门模块做一个微服务通用案例Consumer消费者(Client)通过REST调用Provider提供者(Server)提供的服务 Maven的分包分模块架构 一个Project带着多个Module子模块 M 阅读全文
posted @ 2019-12-24 08:59 XiangHuiBlog 阅读(305) 评论(0) 推荐(0)
摘要:SpringCloud是什么? SpringCloud=分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,俗称微服务全家桶 SpringCloud,基于SpringBoot提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了基 阅读全文
posted @ 2019-12-23 12:48 XiangHuiBlog 阅读(510) 评论(0) 推荐(0)
摘要:最近和尚硅谷周阳老师学习了Spring Cloud感觉有必要在这里做下笔记和总结。 软件系统架构演变 单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。此时,用于简化增删改查工作量的数据访问框架(ORM)是关键。垂直应用架构当访问量逐渐增大,单一应用增加机器带 阅读全文
posted @ 2019-12-23 12:01 XiangHuiBlog 阅读(221) 评论(0) 推荐(0)
摘要:安装 ①将Redis 的tar 包上传到opt 目录②解压缩③安装gcc 环境我们需要将源码编译后再安装,因此需要安装c 语言的编译环境!不能直接make! 可以上网,yum install –y gcc-c++ ④编译,执行make 命令! ⑤编译完成后,安装,执行make install 命令! 阅读全文
posted @ 2019-12-17 16:31 XiangHuiBlog 阅读(98) 评论(0) 推荐(0)
摘要:缓存击穿/穿透/雪崩 Intro 使用缓存需要了解几个缓存问题,缓存击穿、缓存穿透以及缓存雪崩,需要了解它们产生的原因以及怎么避免,尤其是当你打算设计自己的缓存框架的时候需要考虑如何处理这些问题。 缓存击穿 一般的缓存系统,都是按照 key 去缓存查询,如果不存在对应的 value ,就应该去后端系 阅读全文
posted @ 2019-12-17 10:06 XiangHuiBlog 阅读(126) 评论(0) 推荐(0)
摘要:1、什么是Redis Redis(Remote Dictionary Server) 是一个使用 C 语言编写的,开源的(BSD许可)高性能非关系型(NoSQL)的键值对数据库。Redis 可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串,值支持五种数据类型:字符串、列表、集合、散列表、 阅读全文
posted @ 2019-12-16 12:32 XiangHuiBlog 阅读(201) 评论(0) 推荐(0)
摘要:Nginx 动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和静态页面物理分离。严格意义上说应该是动态请求跟静态请求分开,可以理解成使用Nginx 处理静态页面,Tomcat处理动态页面。动静分离从目前实现角度来讲大致分为两种, 一种是纯粹把静态文件独立成单独的域名,放在独立 阅读全文
posted @ 2019-12-10 09:43 XiangHuiBlog 阅读(1345) 评论(0) 推荐(0)
摘要:配置负载均衡实例 实现效果: 配置负载均衡 实验代码 1) 首先准 备两个同时启动的 Tomcat 2) 在 nginx.conf 中进行配置 随着互联网信息的爆炸性增长,负载均衡(load balance )已经不再是一个很陌生的话题顾名思义,负载均衡即是将负载分摊到不同的服务单元,既保证服务的可 阅读全文
posted @ 2019-12-10 09:40 XiangHuiBlog 阅读(145) 评论(0) 推荐(0)
摘要:反向代理实例(一) 实现效果:实现效果:使用 n ginx 反向代理,访问 www.123.com 直接跳转到 127.0.0.1:8080 实现代码: 1) 启动一个 tomcat ,浏览器地址栏输入 127.0.0.1:8080 ,出现如下界面 2) 通过修改本地 host 文件,将 www. 阅读全文
posted @ 2019-12-10 09:33 XiangHuiBlog 阅读(248) 评论(0) 推荐(0)
摘要:Nginx常用命令 1、启动命令 在/usr/local/nginx/sbin 目录下执行 ./nginx 2.关闭命令 在/usr/local/nginx/sbin 目录下执行 ./nginx s stop 3.重载命令 在/usr/local/nginx/sbin 目录下执行 ./nginx s 阅读全文
posted @ 2019-12-10 09:23 XiangHuiBlog 阅读(421) 评论(0) 推荐(0)
摘要:安装Nginx 第一步,安装 pcrewget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre8.37.tar.gz 解压文件,./configure完成后,回到 pcre 目录下执行 make 再执行make install 阅读全文
posted @ 2019-12-10 09:09 XiangHuiBlog 阅读(87) 评论(0) 推荐(0)
摘要:Nginx 概述 Nginx ("engine x")是一个高性能的 HTTP 和反向代理服务器, 特点是占有内存少,并发能力强,事实上 nginx 的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用 nginx 网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。 Nginx作为web服务器 阅读全文
posted @ 2019-12-10 09:01 XiangHuiBlog 阅读(123) 评论(0) 推荐(0)
摘要:C#任务和并行编程 我们在处理有些需要等待的操作时,例如,文件读取、数据库或网络访问等,这些都需要一定的时间,我们可以使用多线程,不需要让用户一直等待这些任务的完成,就可以同时执行其他的一些操作。即使是处理密集型的任务,线程也能起到帮助作用, 一个进程的多个线程可以同时运行在不同的CPU上,或多核C 阅读全文
posted @ 2019-12-05 14:04 XiangHuiBlog 阅读(586) 评论(0) 推荐(0)
摘要:C#异步编程 关于异步的概述,这里引用MSDN的一段文字: 异步编程是一项关键技术,使得能够简单处理多个核心上的阻塞 I/O 和并发操作。 如果需要 I/O 绑定(例如从网络请求数据或访问数据库),则需要利用异步编程。 还可以使用 CPU 绑定代码(例如执行成本高昂的计算),对编写异步代码而言,这是 阅读全文
posted @ 2019-12-05 11:39 XiangHuiBlog 阅读(314) 评论(0) 推荐(0)
摘要:C#任务同步 如果需要共享数据,就必须使用同步技术,确保一次只有一个线程访问和改变共享状态。如果不注意同步,就会出现争用条件和死锁。 不同步导致的线程问题 如果两个或多个线程访问相同的对象,并且对共享状态的访问没有同步,就会出现争用条件。为了解决这类问题,可以使用lock语句,对共享对象进行锁定,除 阅读全文
posted @ 2019-12-05 11:24 XiangHuiBlog 阅读(981) 评论(0) 推荐(0)
摘要:C#文件和流 本文主要是对C#中的流进行详细讲解,关于C#中的文件操作,考虑到后期.net core跨平台,相关操作可能会发生很大变化,所以此处不对文件系统(包括目录、文件)过多的讲解,只会描述出在.net framework下常用的类,具体用法请参见官方API文档。 管理文件系统 在Windows 阅读全文
posted @ 2019-12-05 11:08 XiangHuiBlog 阅读(1675) 评论(0) 推荐(2)
摘要:C# 委托 委托是类型安全的类,它定义了返回类型和参数的类型,委托类可以包含一个或多个方法的引用。可以使用lambda表达式实现参数是委托类型的方法。 委托 当需要把一个方法作为参数传递给另一个方法时,就需要使用委托。委托是一种特殊类型的对象,其特殊之处在于,我们以前定义的所有对象都包含数据,而委托 阅读全文
posted @ 2019-12-05 11:03 XiangHuiBlog 阅读(559) 评论(0) 推荐(0)
摘要:C# LINQ LINQ(Language Integrated Query,语言集成查询)。在C# 语言中集成了查询语法,可以用相同的语法访问不同的数据源。 命名空间System.Linq下的类Enumerate中定义了许多LINQ扩展方法,用于可以在实现了IEnumerable<T>接口的任意集 阅读全文
posted @ 2019-12-05 10:57 XiangHuiBlog 阅读(814) 评论(0) 推荐(0)
摘要:C# 泛型(Generics) 泛型概述 泛型是C#编程语言的一部分,它与程序集中的IL(Intermediate Language,中间语言)代码紧密的集成。通过泛型,我们不必给不同的类型编写功能相同的许多方法和类,而是可以创建独立于被包含类型的一个类或方法。 例如,通过使用泛型类型参数 T,可以 阅读全文
posted @ 2019-12-05 09:55 XiangHuiBlog 阅读(473) 评论(0) 推荐(0)
摘要:C#集合 有两种主要的集合类型:泛型集合和非泛型集合。 泛型集合被添加在 .NET Framework 2.0 中,并提供编译时类型安全的集合。 因此,泛型集合通常能提供更好的性能。 构造泛型集合时,它们接受类型形参;并在向该集合添加项或从该集合删除项时无需在Object类型间来回转换。 集合接口和 阅读全文
posted @ 2019-12-05 09:21 XiangHuiBlog 阅读(397) 评论(0) 推荐(0)