引言 微服务这个词的热度自它出现以后,就一直是高烧不退,而微服务之所以这么火,其实和近几年互联网的创业氛围是分不开的. 与传统行业不同,互联网企业有一个特点,那就是市场扩张速度非常之快,可能也就是几天的时间,一家原本名不经传的互联网公司就会人尽皆知,一家独角兽公司也就诞生了. 而伴随着这些,接踵而来的,一般是业务的急速变化与规模的扩张,这就对应用应对变化的能力提出了更高的要求. 微服务,就是专门治疗这种情况的良药. 也因此,现在的绝大多数互联网公司,都逐渐引入了微服务架构,以便于应对发展越来越快…
第一个版本发布内容如下: 开源组件(spring-cloud-alibaba开头): 服务发现(Service Discovery) 配置管理(Configuration Management) 高可用防护(Safeguarding for High Availability) 商业服务(spring-cloud-alicloud开头): 服务发现(ANS——Application Naming Service) 配置管理(ACM——Application Configuration Manag…
本文已收录 https://github.com/lkxiaolou/lkxiaolou 欢迎star. 前言 说到redis,可能大家的脑海中蹦出的关键词是:NoSQL.KV.高性能.缓存等.但今天的文章从另一个角度--微服务来展开. 这篇文章的起因也是源自一次面试经历,在面试一位来自陌陌的候选人(就是那个交友的陌陌)时,他提到一点让我觉得很有意思,他说redis在陌陌被使用的非常广泛,除了常规的缓存外,某些场景下也当NoSQL数据库来使用,还用redis作为微服务的注册中心,甚至连RPC的调…
  导语:API Gateway是实现微服务重要的组件之一.面对诸多的开源API Gateway,如何进行选择也是架构师需要关注的焦点.本文作者对几个较大的开源API Gateway进行了压力测试,对于架构师来说,相信可以提供不少帮助.   过去一段时间,OpsGenie的员工数量和产品特性都经历了快速发展.去年,仅仅是我们的工程师团队就由15人增长到了50人.针对开发团队的划分,我们遵循两个披萨原则[1]将每个团队控制在8个工程师.   如你所料的,我们的产品还是一个单体应用.对并行开发的团队…
欢迎关注全是干货的技术公众号:JavaEdge 本文主要内容: 如何实现用户认证与授权? 实现的三种方案,全部是通过画图的方式讲解.以及三种方案的对比 最后根据方案改造Gateway和扩展Feign 0 相关源码 1 有状态 vs 无状态 1.1 有状态 也可使用粘性会话,即:对相同IP的请求,NGINX总 会转发到相同的Tomcat实例,这样就就无需图中的Session Store了.不过这种方式有很多缺点:比如用户断网重连,刷新页面,由于IP变了,NGINX会转发到其他Tomcat实例,而其…
前言 今年主要会做一个比较完整的微服务项目开源出来.目前已经开始了,刚兴趣的先Star一个吧. 项目:https://github.com/yinjihuan/kitty-cloud 基础框架:https://github.com/yinjihuan/kitty 在做的过程中遇到一个问题那就是标题所说的两个框架碰撞了火花.都是S开头的谁都不服谁. 问题描述 既然使用了Sentinel来限流,那么干脆熔断也直接用Sentinel好了,所以就没使用Hystrix了. Sentinel对Feign做了…
Spring Cloud Alibaba是什么 先来看一下官方是怎么定义Spring Cloud Alibaba的: Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案.此项目包含开发分布式应用微服务的必需组件,方便开发者通过Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务. 依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里微服务解决方案,通过阿里中间件来迅速搭建分布…
目录 一.背景 二.初识Spring Cloud Alibaba 三.Nacos的基础实践 3.1 安装Nacos并启动服务 3.2 建立微服务并向Nacos注册服务 3.3 建立微服务消费者进行服务调用 3.4 Nacos小结 四.Sentinel的基础实践 4.1 安装Sentinel监控 4.2 通过Sentinel对微服务提供方进行流量控制 4.2.1 通过JMeter模拟高并发流量 4.2.2 设置流控规则进行流量控制 4.2.3 设置降级规则进行流量控制 4.3 通过Sentinel…
背景 2014 年,Spring Boot 1.0 发布.Spring Boot 的发布绝对是 Pivotal 历史上具有里程碑意义的事件,它让我们能够非常简便地开发 Spring 应用,屏蔽了各种配置文件和底层实现,提供 AutoConfiguration,Factory Loading Mechanism, Embedded Servlet Container,Conditional Annotation 等诸多特性.目前围绕着 Spring Boot 的生态项目已经太多了,包括 Sprin…
这是我为InfoQ翻译的文章,原文地址:Build High Performance JVM Microservices with Ratpack & Spring Boot,InfoQ上的中文地址:使用Ratpack与Spring Boot构建高性能JVM微服务. 在微服务天堂中Ratpack和Spring Boot是天造地设的一对.它们都是以开发者为中心的运行于JVM之上的web框架,侧重于生产率.效率以及轻量级部署.他们在服务程序的开发中带来了各自的好处.Ratpack通过一个高吞吐量.非…