自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 从单体架构到微服务的发展历程

架构的演变过程:单体架构——>垂直架构——>soa面向服务架构——>微服务架构单体架构: 特点:    ①所有功能集中在一个项目中    ②所有功能都要达成war包部署到服务器     ③ 通过集群(session共享集群)来提高服务器的性能优点:    ①.项目架构简单,前期开发的成本低,周期短,小型企业首先.缺点:    ①全部的功...

2018-06-25 19:31:27 7252

原创 spring整合redis与接口封装

没整合前普通java程序:导入jar包无连接池创建链接public class JedisDemo {    public static void main(String[] args) {        // 构造jedis对象        Jedis jedis = new Jedis("127.0.0.1", 6380);        // 向redis中添加数据        jedi...

2018-06-12 20:40:18 855

原创 微服务——Discovery

灰度发布灰度发布解决的第一个问题:服务数量多,业务变动频繁,发布频繁。灰度发布解决的第二个问题:灰度发布能降低发布失败风险,减少影响范围。灰度发布解决的第三个问题:当发布出现故障时,可以快速回滚,不影响用户。灰度发布策略用户策略客户端策略服务策略...

2023-08-29 11:36:29 59

原创 线程安全遇到的问题——(arraylist的add方法出现下角标越界)

public Map<String, List<Integer>> register(String userName, String passWd, int start, int end) throws InterruptedException { List<Future<Map<String, List<Integer>>>> futures = new ArrayList<>(); Ma

2020-09-30 17:38:20 797

原创 微服务——Zuul

zull动态路由、请求监控、认证鉴权、压力测试、灰度发布动态路由:动态路由是动态的将客户端的请求路由到后端不同的服务上,如果没有网关去做统一的路由,那么客户端就需要关注后端 N 个服务。请求监控:请求监控可以对整个系统的请求进行监控,详细地记录请求响应日志,可以实时统计当前系统的访问量及监控状态。调用量,根据数据分析决定是否要动态限流,分析是否有爬虫请求等多维数据结果。认证鉴权:认...

2020-02-26 21:35:30 525

原创 微服务——Feign

Contract契约组件 在Feign中可以通过定义API接口的方式来调用远程的Http API,在定义调用Client的时候需要增加一些注解来描述这个调用API的基本信息,比如请求类型是GET还是POST,请求的URI是什么。Contract允许用户自定义契约去解析注解信息,最典型的应用场景就是在Spring Cloud中使用Feign,我们可以...

2020-02-25 19:38:37 4191

原创 微服务——服务容错保护-Hystrix

服务雪崩:微服务架构下,会存在服务之间相互依赖调用的情况,当某个服务不可用时,很容易因为服务之间的依赖关系使故障扩大,甚至造成整个系统不可用的情况,这种现象称为服务雪崩效应。产生原因:比如说代码的 Bug 问题,由于某些代码问题导致 CPU 飙升,将资源耗尽等,比如服务器出现问题,磁盘出问题,导致数据读写特别慢,一下就拉高了响应时间。比如说某个新来的同事对业务不太熟悉,写了个查询的 SQL...

2020-02-25 17:44:55 208

原创 微服务——客户端负载均衡-Ribbon

客户端负载均衡:Ribbon集中式负载均衡:Nginx(软件),F5(硬件)使用方式Ribbon + RestTemplateRibbon + Feignrule内置算法:RoundRobinRule 轮询RandomRule 随机BestAvailableRule 最小的并发请求 server自定义rule:指定算法:①通过纯配置文件...

2020-02-24 23:40:08 662

原创 微服务——服务治理-Eureka

Eureka功能:服务注册、服务发现注册中心:将应用程序的信息告诉注册中心,通过注册中心来全局管理服务的节点信息。服务发现:每个客户端都会从注册中心拉取自己关注的信息到本地。服务注册与服务发现相关动作:整个过程包含的操作有注册、拉取、心跳、剔除等动作。主要解决的问题:消费方会定时从注册中心拉取最新的信息,无效的服务信息会自动剔除,整个流程都是自动化的,不需要人工维护节点信息、修改配...

2020-02-24 22:12:25 552

原创 微服务——Springboot

介绍:Spring Boot 可以大大简化开发模式,提高开发效率。亮点:starter简化框架导包、自动装配、应用监控、内嵌容器自动装配:Spring Boot 会根据某些规则对所有配置的 Bean 进行初始化。可以减少了很多重复性的工作。内嵌容器:Spring Boot 应用程序可以不用部署到外部容器中,比如 Tomcat。Spring Boot 应用程序可以直接通过 Mav...

2020-02-24 21:11:30 113

原创 springboot整合——druid

1、导包 &lt;!--配置druid--&gt; &lt;dependency&gt; &lt;groupId&gt;com.alibaba&lt;/groupId&gt; &lt;artifactId&gt;druid&lt;/artifactId&gt; &lt;version&gt;1.1.9&lt;/version&gt; &

2018-08-06 15:53:43 158

原创 Spring整合httpclient

spring整合httpclient配置①导入依赖&lt;!-- httpclient --&gt;&lt;dependency&gt; &lt;groupId&gt;org.apache.httpcomponents&lt;/groupId&gt; &lt;artifactId&gt;httpclient&lt;/artifactId&gt;&lt;/...

2018-06-12 20:58:48 259

原创 开发interface和service层代码封装

interface代码封装:①新建接口BaseServicepublic interface BaseService&lt;T&gt; { public List&lt;T&gt; queryAll(); public T queryById(long id); public List&lt;T&gt; queryByWhere(T t); public Integer queryCountByW...

2018-06-12 20:23:19 825

原创 springMVC实现jsonp

 jsonp原理js 是可以访问跨域资源的(通过ajax异步请求,或者通过src标签),但是浏览器对js的跨域做了限制,通过jsonp原理跳出浏览器限制,在页面中定义一个回调函数,来获取到资源.springMvc4.1之后:①@ControllerAdvice加上这个注解②实现AbstractJsonpResponseBodyAdvice如下:springMvc4.1之前:方法:继承原来的消息处理...

2018-06-10 16:45:05 496

空空如也

空空如也

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

TA关注的人

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