学习笔记
文章平均质量分 94
Jum朱
网安,网工,爱好摄影。
展开
-
SpringCloud下的微服务应用技术(结尾篇)
RestTemplate调用问题:代码可读性差,参数复杂且URL难维护。Feign是一个声明式的HTTP客户端,官方地址:GitHub - OpenFeign/feign: Feign makes writing java http clients easier它可以解决上述提到的问题。STEP1:首先,在orderservice中引入依赖 STEP2:在启动类添加@EnableFeignClients注解STEP3:创建一个调用接口 STEP4:编写业务代码 对比一下之前的代码,使原创 2024-03-30 11:23:34 · 1207 阅读 · 0 评论 -
SpringCloud下的微服务应用技术(进击篇)
例如orderservice在SZ集群,userservice1在SZ集群,userservice2和userservice3在SH集群,那么orderservice应该优先调用userservice1。微服务要结合Nacos和本地application.yml的配置,但是由于Nacos配置文件的读取是在本地配置文件之前的,所以要引入。在项目中,需要热更新的配置才有必要放到Nacos的配置管理中,如果是数据库地址这种基本不会变的配置,保存在本地的配置文件即可。当本集群内不可用时,才访问其它集群。原创 2024-03-22 14:45:39 · 888 阅读 · 0 评论 -
SpringCloud下的微服务应用技术(认识篇)
就可以看到它的实现。开启后,响应时间降到250ms左右,快了一半,但仍比第二次访问的30ms慢很多,这是因为第一次还要加载DispatcherServlet等。可以看到,里面是先拿到allServerList,里面包含了被调用微服务userservice的服务列表,包括IP地址和端口号。在IDEA中,对已运行的服务右键->Copy Configuration,在VM options中指定新的端口号,例如。(拉取或注册服务信息),用以记录服务的IP和端口等服务,服务前往注册中心寻找另外一个服务。原创 2024-03-22 10:55:57 · 763 阅读 · 0 评论 -
Spring Cloud Alibaba一一SentinelResource
若希望使用其他类的函数,则可以指定fallbackClass为对应的类的Class对象,注意对应的函数必须为static函数,否则无法解析。blockHandler函数默认需要和原生方法在同一个类中,如果希望使用其他类的函数,则需要指定blockhandlerClass为对应的类的Class对象,注意对应的函数必须为static函数,否则无法解析。Feign调用服务过程中,服务出现故障,如果服务中存在全局异常管理器,会认为这个故障已经被服务处理了,然后返回一个空的对象,feign不会调用自己的降级方法。原创 2024-03-05 13:25:14 · 919 阅读 · 0 评论 -
Spring Cloud Alibaba一一熔断降级
如果依赖的服务出现了稳定的情况,请求的响应时间变长,那么调用服务的方法的响应时间也会变长,线程会产生堆积,最终可能耗尽业务自身的线程池,服务本身也变得不可用。Sentinel系统自适应限流从整个维度对应用入口流量进行控制,结合应用的Load、CPU使用率、总体平均RT、入口QPS和并发线程数等几个维度的监控指标、通过自适应的流控策略,让系统的入口流量和系统的负载达到一个平衡,让系统尽可能跑在最大吞吐量的同时保证系统整体的稳定性。系统保护规则是应用整体维度的,而不是资源维度的,并且**仅对入口流量生效**。原创 2024-03-05 13:17:58 · 1171 阅读 · 0 评论 -
共同学习|Spring Cloud Alibaba一一sentinel介绍
1、Sentinel是什么随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。2、sentinel能干什么?3、sentinel生态。原创 2024-02-28 16:03:20 · 1235 阅读 · 0 评论 -
共同学习|Spring Cloud Alibaba一一服务日志+Nacos集群
在整个微服务架构中,微服务很多,一个请求可能需要调佣很多很多的服务,最终才能完成一个功能,如果说,整个功能出现了问题,在这么多的服务中,如何去定位到问题的所在点,出现问题的原因是什么?原创 2024-02-28 15:57:36 · 967 阅读 · 0 评论 -
共同学习|Spring Cloud Alibaba一一服务网关Gateway
自定义全局Filter可以实现再路由之前的自定义的过滤,服务调用完成后的自定义响应处理,它是一个全局的作用,定义后对所有的服务都起作用。实际项目中一把把一些公共操作都统一的放在网关Filter实现。原创 2024-02-26 09:43:14 · 1357 阅读 · 0 评论 -
共同学习|Spring Cloud Alibaba一一Nacos配置
在服务或者应用运行过程中,提供动态配置或者元数据以及配置管理的服务提供者。原创 2024-02-26 09:29:49 · 1242 阅读 · 0 评论 -
共同学习|Spring Cloud Alibaba一一Nacos介绍
Nacos致力于帮助您发现、配置和管理微服务。Nacos提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。原创 2024-01-19 13:33:07 · 945 阅读 · 0 评论 -
共同学习|Spring Cloud Alibaba一一简介篇
所谓一句话“新东西的出现必然是因为市场需求的需要”。我们开发人员或者准开发人员有了这个需求了。因为SpringCloud Netflix 进入到了维护阶段。首先因为SpringCloud版本迭代的非常快,每发布一个release之后又会紧接着发布下一个版本,所以可能会积累一系列的bug,日积月累的使用肯定会出现这样那样的问题。进入到维护模式,意味着不会再有新的组件技术出现。只是在原来的基础上修修补补。技术上不更新,总要有人去做的吧,几年前Dubbo被SpringCloud所取代。原创 2024-01-19 11:15:59 · 924 阅读 · 0 评论 -
跟我学java|Stream流式编程——Stream 的终端操作
该方法会将流中的第一个元素作为初始值,然后将初始值与下一个元素传递给BinaryOperator函数进行计算,得到的结果再与下一个元素进行计算,以此类推,直到遍历完所有元素。在这个示例中,我们创建了一个包含整数的 List,并通过 stream() 方法将其转换为流。然后使用 findFirst 方法获取流中的第一个元素,并使用 ifPresent 方法判断 Optional 是否包含值,并进行相应的处理。与forEach不同的是,peek方法会返回一个新的流,该流中的元素和原始流中的元素相同。原创 2024-01-10 18:25:28 · 1196 阅读 · 0 评论 -
跟我学java|Stream流式编程——Stream 的中间操作
书接上回,继续研究。原创 2024-01-09 13:41:25 · 1049 阅读 · 0 评论 -
跟我学java|Stream流式编程——Stream 基础
Stream(流)是 Java 8 引入的一个新的抽象概念,它代表着一种处理数据的序列。简单来说,Stream 是一系列元素的集合,这些元素可以是集合、数组、I/O 资源或者其他数据源。Stream API 提供了丰富的操作方法,可以对 Stream 中的元素进行各种转换、过滤、映射、聚合等操作,从而实现对数据的处理和操作。Stream API 的设计目标是提供一种高效、可扩展和易于使用的方式来处理大量的数据。原创 2024-01-09 13:27:59 · 984 阅读 · 0 评论