SpringCloud
文章平均质量分 58
_从头再来_
不积跬步无以至千里
展开
-
Apollo配置中心
一、简介Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。官方github:https://github.com/ctripcorp/apollo作者对Apollo对介绍:https://github.com/ctripcorp/apollo/wiki/Apollo配置中心介绍二、安装部署基础设施本次部署环境为DEV(开发环境)、FAT原创 2020-11-22 11:03:55 · 1169 阅读 · 0 评论 -
zuul实现反向代理与负载均衡
1.前言 网上都说zuul是路由网关,对外暴露api,例如ios,安卓等客户端请求的api都是经过zuul网关,然后由zuul做路由实现请求转换,这里的原理我也不是很懂,只是知道这么用法,详细可以找找资料了解一下,这个时候zuul就有点像nginx起到了反向代理的作用,但是我很好奇,那zuul能不能跟nginx一样做到负载均衡的效果呢?答案是:YES 核心:zuul拦截对应的api...转载 2018-12-19 09:29:27 · 2635 阅读 · 0 评论 -
zuul限流控制
简述Spring Cloud Zuul RateLimit项目Github地址:https://github.com/marcosbarbero/spring-cloud-zuul-ratelimit该包实现了在Zuul对每个服务进行限流。提供的几种限流方式:1. 认证用户(Authenticated User)使用已认证的用户名(username)或'anonymous'...转载 2018-12-18 22:02:02 · 2459 阅读 · 0 评论 -
自开发添加swagger map类型参数说明
1 添加maven<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.7.0</version></dependency>原创 2018-12-24 11:47:08 · 15791 阅读 · 3 评论 -
Docker部署JavaWeb项目实战
摘要:本文主要讲了如何在Ubuntu14.04 64位系统下来创建一个运行Java web应用程序的Docker容器。 一、下载镜像、启动容器1、下载镜像先查看镜像docker images 记住这个Image ID,下面我们启动容器需要用到它。如果看到以上输出,说明您可以使用“oursuer/ubuntu”这个镜像了,或将其称为仓库(Repository),该...转载 2018-12-21 10:30:03 · 1225 阅读 · 0 评论 -
Eureka VS Consul VS Zookeeper
最大的区别是Eureka保证AP, Consul为CP。Consul强一致性(C)带来的是: 1 服务注册相比Eureka会稍慢一些。因为Consul的raft协议要求必须过半数的节点都写入成功才认为注册成功 2 Leader挂掉时,重新选举期间整个consul不可用。保证了强一致性但牺牲了可用性。Eureka保证高可用(A)和最终一致性: 1 服务注册相对要快,因为...原创 2018-12-20 18:42:13 · 1515 阅读 · 1 评论 -
Hystrix参数详解
一、hystrix参数使用方法通过注解@HystrixCommand的commandProperties去配置,如下就是hystrix命令超时时间命令执行超时时间,为1000ms和执行是不启用超时@RestControllerpublic class MovieController { @Autowired private RestTemplate restTempla...原创 2018-11-22 19:39:34 · 882 阅读 · 0 评论 -
SwaggerAPI注解详解,以及注解常用参数配置
官网github地址:https://github.com/swagger-api/swagger-core/wiki/Annotations-1.5.X注解@Api:作用在类上,用来标注该类具体实现内容。表示标识这个类是swagger的资源 。 参数: 1. tags:可以使用tags()允许您为操作设置多个标签的属性,而不是使用该属性。 2. description:可描述描...转载 2018-11-21 15:27:19 · 2299 阅读 · 1 评论 -
zuul集群及顶层负载均衡
上一篇博文我们引入了zuul路由网关实现了对不同生产者服务集群的路由转发。不过真正系统发布时有以下问题:1.zuul里的配置文件会暴露我们所有接口的信息,放在顶层不合适2.毕竟落实了路由分发和过滤器功能,当接口很多的时候也是可能宕机的其他考虑应该还有很多,我只是简单理解了一下。下面优化一下我上一个博文里的系统结构图,将来zuul集群化实现高可用,另外放一个顶层的负载均衡去访问下面的zu...转载 2018-11-13 22:44:09 · 2583 阅读 · 1 评论 -
DockerFile 命令
制作Dockerfile为Docker入门学习的第一步。FROM功能为指定基础镜像,并且必须是第一条指令。如果不以任何镜像为基础,那么写法为:FROM scratch。同时意味着接下来所写的指令将作为镜像的第一层开始语法:FROM <image>FROM <image>:<tag>FROM <image>:<dig...原创 2019-01-10 14:52:04 · 187 阅读 · 0 评论 -
Docker 项目发布
一,前提要求:Docker通常运行在CentOS 7以上,因为Docker运行环境要求系统为64位,系统内核版本为3.8以上。查看CentOS版本:cat /etc/centos-release查看当前的内核版本:uname –rDocker 分为两个分支版本: Docker CE 和 Docker EE。Docker CE 即社区免费版,Docker EE 即企业版,强调安全...原创 2018-12-26 09:16:38 · 277 阅读 · 0 评论 -
SpringCloud-使用Sidecar支持异构平台的微服务
概述Spring Cloud是目前非常流行的微服务化解决方案,它将Spring Boot的便捷开发和Netflix OSS的丰富解决方案结合起来。如我们所知,Spring Cloud不同于Dubbo,使用的是基于HTTP(s)的Rest服务来构建整个服务体系。那么有没有可能使用一些非JVM语言,例如我们所熟悉的Node.js来开发一些Rest服务呢?当然是可以的。但是如果只有R...转载 2019-05-09 10:50:14 · 820 阅读 · 0 评论 -
Pinpoint分布式系统性能监控工具
Pinpoint分布式性能监控工具(docker安装)在做性能压测的时候,你是不是有只能看到测试报告?在做性能压测的时候,你是不是想知道每一个方法执行了多长时间?Pinpoint几乎可以帮助你查看你想看到的每一个细节。Pinpoint是什么?Pinpoint是一款全链路分析工具,提供了无侵入式的调用链监控、方法执行详情查看、应用状态信息监控等功能。基于GoogleDapp...原创 2019-03-19 19:53:04 · 70649 阅读 · 2 评论 -
微服务之分布式跟踪系统(springboot+pinpoint)-日志分析
这篇文章介绍一下在微服务(springboot开发)的项目中使用pintpoint监控的过程及效果展示。背景随着项目微服务的进行,微服务数量逐渐增加,服务间的调用也越来越复杂,我们急切需要一个APM工具帮我们监控各个服务的性能及对服务间的调用进行跟踪,而通过调研多个开源APM工具后,最终我们选择了pintpoint。github地址是:https://github.com/naver/pi...转载 2019-02-27 09:08:54 · 2029 阅读 · 0 评论 -
SpringCloud - LCN分布式事务框架
官网:http://www.txlcn.org/LCN原理:https://github.com/codingapi/tx-lcn/wiki/LCN%E5%8E%9F%E7%90%86入门测试:1.启动redis服务注意:自己的是否配置过密码,否则会导致最后测试失败2.启动eureka服务 3.启动tx-manager1.下载资源:https:/...转载 2019-02-24 14:30:43 · 729 阅读 · 0 评论 -
spring cloud 日志处理
一、 一般微服务中日志记录1 AOP切面记录package com.xsy.aop;import java.io.IOException;import java.lang.reflect.Method;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletRespon...原创 2019-02-24 11:26:40 · 2754 阅读 · 0 评论 -
使用sleuth实现微服务跟踪-微服务日志处理
在微服务架构中,众多的微服务之间互相调用,如何清晰地记录服务的调用链路是一个需要解决的问题。同时,由于各种原因,跨进程的服务调用失败时,运维人员希望能够通过查看日志和查看服务之间的调用关系来定位问题,而Spring cloud sleuth组件正是为了解决微服务跟踪的组件。sleuth的原理介绍可以参考这篇文章: [服务链路追踪(Spring Cloud Sleuth)](http:...转载 2019-02-24 10:38:32 · 2121 阅读 · 0 评论 -
Hystrix使用说明,配置参数说明
一、什么情况下会触发fallback方法?名字描述触发fallbackEMIT值传递NOSUCCESS执行完成,没有错误NOFAILURE执行抛出异常YESTIMEOUT执行开始,但没有在允许的时间内完成YESBAD_REQUEST执行抛出HystrixBadRequestExceptionNOSHORT_CIRCUITED...转载 2019-02-15 23:11:26 · 257 阅读 · 0 评论 -
springCloud之网关服务zuul过滤器filter
前面学习了zuul的反向代理、负载均衡、fallback回退。这张学习写过滤器filter,做java web开发的对filter都不陌生,那就是客户端(如浏览器)发起请求的时候,都先经过过滤器filter做一些相关的校验或业务判断(如登录、权限等),zuul也同样提供了过滤器功能。只要继承ZuulFilter类即可。 通过前文的介绍,我们对于Zuul的第一印象通常是这样的:它包含了对请求...转载 2019-02-15 23:01:02 · 458 阅读 · 0 评论 -
搭建eureka集群
使用spring boot1.5.16版本,spring cloud版本选择Edgware.SR4,添加eureka server的依赖<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka-serve...转载 2018-11-13 22:30:29 · 234 阅读 · 0 评论 -
SpringBoot入门
一、准备工作1、编制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:schem...原创 2017-12-09 08:46:33 · 126 阅读 · 0 评论 -
SpringBoot 入门2
目录:内置Servlet Container 使用Spring Boot 安装Spring Boot CLI 开发一个简单的Spring Boot应用--使用最原始的方式 创建一个文件夹 新建一个pom.xml文件 命令:mvn package 添加依赖 开始写代码 启动项目 打包 执行 Dependency Management...原创 2017-12-11 11:43:41 · 214 阅读 · 0 评论 -
我们为什么要使用Spring Cloud
Spring Cloud是一个集成了众多开源的框架,利用Spring Boot的开发便利性实现了服务治理、服务注册与发现、负载均衡、数据监控,REST API发布方式等,基本囊括了分布式框架所需要的所有功能。是一套易开放、易部署、易维护的分布式开发工具包。在详细的了解Spring Cloud中所使用的各个组件之前,我们先了解下微服务框架的前世今生。单体架构 在网站开发的前期,项目面临的流量...转载 2018-05-28 21:47:50 · 1475 阅读 · 0 评论 -
Spring Cloud 微服务的那点事
什么是微服务微服务的概念源于2014年3月Martin Fowler所写的一篇文章“Microservices”。微服务架构是一种架构模式,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务与服务间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API)。每个服务都围绕着具体业务进行构建,并且能够被独立地部署...转载 2018-05-28 16:31:34 · 141 阅读 · 0 评论 -
Spring Cloud生态圈简介
说到Spring Cloud就不得不提一下微服务,什么是微服务呢?就是Microservice,字面意思来看就是小服务,小型服务,微小型服务,然而它是与传统服务的相对概念。承载传统服务的Web项目,所有功能集成到一个系统,最终打包成一个war包,部署于Web容器,或单机,或集群,基本上没有什么外部的依赖,其有如下特点: (优点) - 开发简单直接,集中式管理 - 基本不会重复开发 - 功能都...转载 2018-05-28 16:29:30 · 306 阅读 · 0 评论 -
spring cloud初步实战-简单的web项目
spring cloud是这几年新兴的微服务框架,虽然现在的微服务框架很多,但是spring cloud还是被认为最好的微服务框架,尽管我也不知道为什么这么说,但是接下来我准备一点一点的探究,今天就是开始的第一步,大家可以一点一点的通过一个小小的例子,来看看为什么他被称为最好的微服务框架Web项目具体的虽然我不是很明白,但是我们先通过一个简单的例子来看看spring cloud是什么样子的吧。创建...转载 2018-05-28 16:07:53 · 3451 阅读 · 0 评论 -
Spring Cloud 概述
文档地址 https://www.springcloud.cc/spring-cloud-dalston.html具体流程(1)创建springboot 应用(2)创建spring cloud 分布式配置(如平时的properties,xml配置文件,当存在开发,生产等多个版本时,保持配置文件一致性)应用可以使用git做, 其他应用通过这个应用读去配置文件(3)创建eureka服务器,用于其他服务...转载 2018-05-28 15:57:34 · 226 阅读 · 0 评论 -
spring cloud
相关文章:Spring cloud - 概述Spring cloud eureka - 注册中心Spring cloud feign - RPCSpring cloud ribbon - 负载均衡Spring cloud hystrix - 断路器Spring cloud hystrix dashboard转载 2018-04-03 19:16:59 · 1381 阅读 · 0 评论 -
spring boot教程
一.什么是spring bootTakes an opinionated view of building production-ready Spring applications. Spring Boot favors convention over configuration and is designed to get you up and running as quickly as ...转载 2018-06-03 12:04:06 · 177 阅读 · 0 评论 -
SpringCloud精华
错过了这一篇,你可能再也学不会 Spring Cloud 了!Spring Boot做为下一代 web 框架,Spring Cloud 作为最新最火的微服务的翘楚,你还有什么理由拒绝。赶快上船吧,老船长带你飞。终章不是最后一篇,它是一个汇总,未来还会写很多篇。案例全部采用Spring Boot 1.5.x ,Spring Cloud版本为Dalston.RELEASE我为什么这些文章?一是...转载 2018-06-03 11:45:56 · 521 阅读 · 0 评论 -
使用Spring Cloud搭建服务注册中心
我们在之前的博客中已经介绍过阿里的分布式服务框架dubbo【Linux上安装Zookeeper以及一些注意事项】【一个简单的案例带你入门Dubbo分布式框架】,但是小伙伴们应该也看到了,阿里的dubbo无法单独完成工作,我们还要借助于Apache上的开源框架zookeeper(不是必须,但是最佳实践莫过于zookeeper),使用zookeeper作为服务注册中心,才能实现一个较好的分布式应用。与...转载 2018-05-28 22:15:26 · 186 阅读 · 0 评论 -
使用Spring Cloud搭建高可用服务注册中心
我们需要的,不仅仅是一个服务注册中心而已,而是一个高可用服务注册中心。 上篇博客【使用Spring Cloud搭建服务注册中心】中我们介绍了如何使用Spring Cloud搭建一个服务注册中心,但是搭建好的服务注册中心是一个单节点的服务注册中心,这样一旦发生了故障,那么整个服务就会瘫痪,所以我们需要一个高可用的服务注册中心,那么在Eureka中,我们通过集群来解决这个问题。Eureka Serv...转载 2018-05-28 22:18:15 · 155 阅读 · 0 评论 -
Spring Boot 入门3
Spring Boot 入门Spring Boot是Spring社区较新的一个项目。该项目的目的是帮助开发者更容易的创建基于Spring的应用程序和服务,让更多人的人更快的对Spring进行入门体验,让Java开发也能够实现Ruby on Rails那样的生产效率。为Spring生态系统提供了一种固定的、约定优于配置风格的框架。Spring Boot具有如下特性:为基于Spring的开...转载 2018-03-30 11:31:50 · 127 阅读 · 0 评论 -
Spring Cloud Netflix Eureka源码导读与原理分析
Spring Cloud Netflix技术栈中,Eureka作为服务注册中心对整个微服务架构起着最核心的整合作用,因此对Eureka还是有很大的必要进行深入研究。基本原理上图是来自eureka的官方架构图,这是基于集群配置的eureka;- 处于不同节点的eureka通过Replicate进行数据同步- Application Service为服务提供者- Applicatio...原创 2018-10-27 09:53:28 · 238 阅读 · 0 评论 -
基于rabbitMQ实现在高并发下性能倍增
以服务与服务之间的调用来举个例子,比如我们提供的是rest服务,那么如果在高并发下访问rest服务究竟能支撑多大的并发量呢?下面我先提供一个小例子来测试下项目目录结构如下:具体代码如下:UserController.javapackage com.cwh.controller;import org.springframework.beans.factory.annotatio...转载 2018-10-30 00:28:03 · 1046 阅读 · 0 评论 -
springcloud微服务实战:Eureka+Zuul+Feign/Ribbon+Hystrix Turbine+SpringConfig+sleuth+zipkin
springcloud微服务实战:Eureka+Zuul+Feign/Ribbon+Hystrix Turbine+SpringConfig+sleuth+zipkin相信现在已经有很多小伙伴已经或者准备使用springcloud微服务了,接下来为大家搭建一个微服务框架,后期可以自己进行扩展。会提供一个小案例: 服务提供者和服务消费者 ,消费者会调用提供者的服务,新建的项目都是用springboo...转载 2018-05-30 14:55:19 · 465 阅读 · 0 评论 -
Spring Cloud中声明式服务调用Feign
前面几篇文章我们详细的介绍了Ribbon、RestTemplate、Hystrix组件,这些组件是我们Spring Cloud中非常基础的组件,小伙伴们在使用的过程中可能也发现了这些东西都是同时出现的,而且配置也都非常相似,每次开发都有很多相同的代码,因此,Spring Cloud基于Netflix Feign整合了Ribbon和Hystrix,让我们的开发工作变得更加简单,就像Spring Bo...转载 2018-05-29 00:13:24 · 189 阅读 · 0 评论 -
Spring Cloud中的API网关服务Zuul
到目前为止,我们Spring Cloud中的内容已经介绍了很多了,Ribbon、Hystrix、Feign这些知识点大家都耳熟能详了,我们在前文也提到过微服务就是把一个大的项目拆分成很多小的独立模块,然后通过服务治理让这些独立的模块配合工作等。那么大家来想这样两个问题:1.如果我的微服务中有很多个独立服务都要对外提供服务,那么对于开发人员或者运维人员来说,他要如何去管理这些接口?特别是当项目非常大...转载 2018-05-28 23:22:12 · 147 阅读 · 0 评论 -
Spring RestTemplate中几种常见的请求方式
https://github.com/lenve/SimpleSpringCloud/tree/master/RestTemplate在Spring Cloud中服务的发现与消费一文中,当我们从服务消费端去调用服务提供者的服务的时候,使用了一个很好用的对象,叫做RestTemplate,当时我们只使用了RestTemplate中最简单的一个功能getForEntity发起了一个get请求去调用服务...转载 2018-05-28 22:39:01 · 482 阅读 · 0 评论 -
Spring Cloud中服务的发现与消费
之前没注意,微信公众号的图片不能引用到其他地方,本文图片显示不正常,原图在写完博客后已经删了,,,,,,所以本文小伙伴可以移步这里https://mp.weixin.qq.com/s/GoIZdwt5gJje-ZWMBUoBPw通过前面两篇文章(使用Spring Cloud搭建服务注册中心、使用Spring Cloud搭建高可用服务注册中心)的学习,相信小伙伴们已经可以自己搭建一个单节点或者多节点...转载 2018-05-28 22:19:36 · 650 阅读 · 0 评论