微服务
文章平均质量分 51
浩丶木
这个作者很懒,什么都没留下…
展开
-
ddd概念
ddd的相关概念ddd叫做领域驱动设计,是一种软件架构设计方法,他并不定义软件开发过程ddd利用面向对象的特性,以业务为核心驱动,而不是传统的数据库驱动开发什么是领域领域是对功能需求的划分;大的领域下面还有许多小的子领域对领域模型进行分析,推演实体(数据表),值对象(传递的参数),领域服务(实现的业务功能)找出聚合边界,降低服务耦合度。为聚合配备存储仓库(数据持久化)实践ddd,并不断推倒和重构。...原创 2022-01-22 09:29:46 · 490 阅读 · 0 评论 -
分布式链路追踪
将一次分布式请求还原成调用链路,进行日志记录,性能监控并将一次分布式请求的调用情况集中展示。trace:整个调用链路span:每个最小的工作单元,一次远程微服务调用Sleuth主要功能就是在分布式系统中提供追踪解决方案,并且兼容支持了zipkin...原创 2021-09-12 09:53:41 · 98 阅读 · 0 评论 -
文件的逻辑结构
所谓的逻辑结构,就是指在用户看来,文件内部的数据应该是如何组织起来的。而物理结构指的是在操作系统看来,文件的数据是如何存放在外存的。无结构文件:文件内部的数据就是一系列二进制流或字符流组成的。如.txt文件有结构文件:由一组相似的记录组成,每条记录又若干个数据相组成。如:数据库表。有结构文件顺序文件文件中的记录一个接一个地顺序排列,记录可以是定长的或者是可变长的。各个记录在物理上可以是顺序存储或者是链式存储。索引文件索引表本身是定长记录的顺序文件。因此可以快速找到第i个记录对应的索引项。原创 2021-08-14 09:16:12 · 325 阅读 · 0 评论 -
Sentinel
随着微服务的普及,服务调用的稳定性变得越来越重要。Sentinel以“流量”为切入点,在流量控制、断路、负载保护等多个领域开展工作,保障服务可靠性。1.引入sentinel依赖 <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId> </dependenc原创 2021-07-20 10:17:40 · 44 阅读 · 0 评论 -
nacos的配置中心
将配置上传的要求:dataId的完整格式:前缀名-环境.后缀名前缀名:服务名称环境:在什么环境下的配置文件后缀名:xml,properties…使用nacos作为配置中心1.从nacos获取配置引入nacos client依赖引入nacos config依赖2.配置配置中心地址...原创 2021-07-19 16:30:00 · 107 阅读 · 0 评论 -
Config
config又称为统一配置中心,将配置统一管理。在日后大规模集群部署服务应用的时候使相同的服务配置一致,日后再修改配置只需要在统一配置中心进行修改而达到全部服务配置同步的效果。ConfigServer开发1.引入依赖2.开启统一配置中心服务在启动类上添加注解@EnableConfigServer3.修改配置文件4.配置拉取配置所存储的位置config client开发1.项目中引入config client依赖2.编写配置文件3.在远程仓库中创建案例配置文件这里需要把客原创 2021-07-17 19:11:59 · 846 阅读 · 0 评论 -
Springcloud服务网关
服务网关网关统一服务入口,可以方便实现对平台众多服务接口进行管控,对访问服务的身份认证,防报文重放与防数据篡改,功能调用的业务鉴权,相应数据的脱敏,流量与并发控制,甚至基于api调用的计量或者计费等等。网关=路由转发+过滤器网关动态路由网关配置有两种方式,一种是快捷方式,一种是完全展开方式1.创建项目引入网关依赖注意在引入网关依赖的时候不能引入web依赖,会引起冲突同时将网关注册到服务中心2.编写网关配置lb配置是负载均衡配置服务网关的predicate使用可以基于时间的配置原创 2021-07-17 12:21:42 · 1668 阅读 · 0 评论 -
Hystrix
在分布式环境中,许多服务依赖项不可避免地会失败。Hystrix是一个库,呀通过添加延迟容忍和容错逻辑来帮助控制这些分布式服务之间的交互。Hysteix通过隔离服务之间的访问点,停止他们之间的级联故障以及提供后背选择来实现这一点,所有这些都可以提高系统的整体弹性。服务雪崩在微服务之间进行服务调用是由于某一个服务故障,导致级联服务故障的现象,称为雪崩效应。雪崩效应描述的是提供方不可用,导致消费方不可用并将不可用逐渐放大的过程。图解雪崩效应当serviceA的流量波动很大的时候,流量经常会突然性增加,那原创 2021-07-16 16:35:26 · 107 阅读 · 0 评论 -
OpenFeign
对于RestTemplate+ribbon已经可以完成服务间的调用,但是依旧存在一些问题1.每次调用服务都需要写url代码,存在大量的代码冗余2.服务地址如果修改,维护成本增高3.使用的时候不够灵活OpenFeign是一个声明式的伪http客户端,它使得写http客户端变得更加简单。使用Feign,只需要创建一个接口并注解,他便具有可插拔的注解特性,可使用feign注解和jax-rs注解。feign支持可插拔的编码器和解码器。同时feign默认继承了ribbon,默认实现了负载均衡的效果且sprin原创 2021-07-16 11:33:20 · 322 阅读 · 2 评论 -
服务间通信方式
服务间通信方式在springcloud中服务间调用方式主要是使用http restfhul方式进行服务间的调用基于Restemplate的服务调用spring框架提供的resttemplate类可用于在应用中调用rest服务,他简化了与http服务的通信方式,统一了restful的标准,封装了htpp连接,我们只需要传入url以及返回值类型即可。问题:1.直接使用restTemplate方式调用没有经过服务注册中心能获取服务地址,代码写死不利于维护,当服务宕机时不能高效剔除。2.调用服务时没原创 2021-07-15 19:03:13 · 409 阅读 · 0 评论 -
服务注册中心
Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。...原创 2021-07-15 11:25:09 · 79 阅读 · 0 评论 -
微服务概述
微服务:微服务是一种架构,这种架构是将单个的整体应用程序分割成更小的项目关联的独立的服务,一个服务通常实现一组独立的特性或功能,包含自己的业务逻辑和适配器。各个微服务之间的关联通过暴露api来实现。这些独立的微服务不需要部署在同一个虚拟机,同一个系统和同一个应用服务器中。为什么是微服务?单体应用:优点:单一架构模式在项目初期很小的时候开发方便,测试方便,部署方便,运行良好。缺点:应用随着时间的推荐,加入的功能越来越多,最终会变得巨大,一个项目中很有可能数百万行的代码,互相之间繁琐的jar包。久而原创 2021-07-14 08:56:17 · 128 阅读 · 0 评论