暂时未有相关云产品技术能力~
暂无个人介绍
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如,序列 {1,2,3,4,5} 是某栈的压栈序列,序列 {4,5,3,2,1} 是该压栈序列对应的一个弹出序列,但 {4,3,5,1,2} 就不可能是该压栈序列的弹出序列。
视频点播(ApsaraVideo for VoD)是集音视频采集、编辑、上传、自动化转码处理、媒体资源管理、分发加速于一体的一站式音视频点播解决方案。
谷粒学苑项目实战(十三):课程管理模块搭建
org.apache.ibatis.binding.BindingException: Invalidbound statement (not found)的解决方案和造成原因分析(超详细)
谷粒学苑项目实战(十二):课程分类管理模块搭建
谷粒学苑项目实战(十一):使用EasyExcel实现对Excel表的读写操作
之前前端的请求端口为8001,可是现在我们又多了8002端口,后面还会有8003、8004……,如何让前端能够请求这么多的端口呢? 也许我们可以写多个BASE_API,分别对应多个端口,可是在vue框架中许多地方都要用到BASE_API,这样修改的地方太多。 这就需要用到Nginx的请求转发了。
前面我们已经搭建了前端环境,运行起来后是可以看见登录框的,但是由于后端没有写东西,不能成功登录,今天我们就完成这个功能。
谷粒学苑项目实战(七):搭建前端页面
日志记录器(Logger)的行为是分等级的。如下表所示:分为:OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL。默认情况下,spring boot从控制台打印出来的日志级别只有INFO及以上级别,可以配置日志级别。
谷粒学苑项目实战(五):统一异常处理
项目中我们会将响应封装成json返回,一般我们会将所有接口的数据格式统一, 使前端(iOS Android, Web)对数据的操作更一致、轻松。 一般情况下,统一返回数据格式没有固定的格式,只要能描述清楚返回的数据状态以及要返回的具体数 据就可以。
前后端分离开发模式中,api文档是最好的沟通方式。 Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。
谷粒学苑项目实战(二):讲师管理模块搭建
谷粒学苑项目实战(二):讲师管理模块搭建
在线教育顾名思义,是以网络为介质的教学方式,通过网络,学员与教师即使相隔万里也可以开展教学 活动;此外,借助网络课件,学员还可以随时随地进行学习,真正打破了时间和空间的限制,对于工作 繁忙,学习时间不固定的职场人而言网络远程教育是最方便不过的学习方式。
SpringCloud Alibaba学习(十二):Seata处理分布式事务(三万字提供 介绍、搭建、实战、原理一条龙服务)
SpringCloud Alibaba学习(十二):Seata处理分布式事务(三万字提供 介绍、搭建、实战、原理一条龙服务)
在前面学习Sentinel时我们发现:一旦重启应用,sentinel规则将消失,生产环境需要将配置规则进行持久化 ,非常不方便。这就需要本文介绍的sentinel的规则持久化。
SpringCloud Alibaba学习(十):Sentinel的服务熔断功能(Sentinel整合Ribbon+OpenFeign+fallback)
SpringCloud Alibaba学习(九):Sentinel的@SentinelResource注解详解
热点即经常访问的数据,很多时候我们希望统计或者限制某个热点数据中访问频次最高的TopN数据,并对其访问进行限流或者其它操作 。
Sentinel 熔断降级会在调用链路中某个资源出现不稳定状态时(例如调用超时或异常比例升高),对这个资源的调用进行限制,让请求快速失败,避免影响到其它的资源而导致级联错误。
SpringCloud Alibaba学习(六):Sentinel的流控规则
SpringCloud Alibaba学习(五):Sentinel的介绍与搭建
SpringCloud Alibaba学习(四):Linux版Nacos+MySQL生产环境配置
SpringCloud Alibaba学习(三):Nacos之集群和持久化配置
SpringCloud Alibaba学习(二):Nacos之服务配置中心
SpringCloud Alibaba学习(一):Nacos之服务注册中心
在微服务框架中,一个由客户端发起的请求在后端系统中会经过多个不同的的服务节点调用来协同产生最后的请求结果,每一个前段请求都会形成一条复杂的分布式服务调用链路,链路中的任何一环出现高延时或错误都会引起整个请求最后的失败。
SpringCloud学习(二十一):Stream的分组消费与持久化
应用程序通过 inputs 或者 outputs 来与 Spring Cloud Stream中binder对象交互。通过我们配置来binding(绑定) ,而 Spring Cloud Stream 的 binder对象负责与消息中间件交互。所以,我们只需要搞清楚如何与 Spring Cloud Stream 交互就可以方便使用消息驱动的方式。通过使用Spring Integration来连接消息代理中间件以实现消息事件驱动。
前文说到:假如我们有很多的服务3355、3366、3377……,那是不是要给每一个服务发送一次手动刷新的post请求呢? 能不能做到只发送一次请求,让每个服务都收到更新通知,一次广播,处处生效呢?这就需要用到我们接下来要讲到的Bus消息总线。
微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务。由于每个服务都需要必要的配置信息才能运行,所以一套集中式的、动态的配置管理设施是必不可少的。
虽然官方为Gateway提供了很多filter,但其实并不使用,我们更多的还是使用自己的配置。 在9527网关模块中新建一个filter包,在里面写一个类来实现自定义filter
Gateway是在Spring生态系统之上构建的API网关服务,基于Spring 5,Spring Boot 2和 Project Reactor等技术。
SpringCloud学习(十五):Hystrix图形化Dashboard搭建与实战
熔断机制是应对雪崩效应的一种微服务链路保护机制。当扇出链路的某个微服务出错不可用或者响应时间太长时,会进行服务的降级,进而熔断该节点微服务的调用,快速返回错误的响应信息。
SpringCloud学习(十三):Hystrix的服务降级实现
Hystrix是一个用于处理分布式系统的延迟和容错的开源库,在分布式系统里,许多依赖不可避免的会调用失败,比如超时、异常等,Hystrix能够保证在一个依赖出问题的情况下,不会导致整体服务失败,避免级联故障,以提高分布式系统的弹性。
在没有feign之前,我们的客户端使用的是ribbon+restTemplate。 OpenFeign的使用其实就是 微服务调用接口+@FeignClient注解
SpringCloud学习(十):Ribbon负载均衡规则替换
Consul 是一套开源的分布式服务发现和配置管理系统,由 HashiCorp 公司用 Go 语言开发。
SpringCloud学习(八):服务注册进入zookeeper
请实现一个函数,把字符串 s 中的每个空格替换成"%20"。
如果我们想获得在eureka上注册的服务的信息,比如服务名称、端口号之类的信息,需要用到服务发现Discovery。
在上文中我们实现了eureka的集群,就相当于用户、服务和中间商中,我们连系了多个中间商,这样假如一个中间商跑路了,我们还能够通过其他中间商访问到服务。 那么,假如服务坏了呢?肯定不能只有一个服务,我们也需要给他找几个“备胎” 所以,我们需要实现服务的集群
试想:如果注册中心只有一个eureka服务,假如它出故障了,会导致整个为服务环境不可用。 所以,为了实现高可用,我们需要搭建Eureka注册中心集群 ,实现负载均衡+故障容错
SpringCloud学习(四):微服务入驻eurekaServer
SpringCloud学习(二):消费者订单模块的构建