
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
最近在搞admin监控时,遇到一个坑。背景是这样得,使用得事nacos做注册中心,开发了admin server服务以后,服务offline,down状态可以正常推送到钉钉,但是up状态一直监控不到,网上查了一些资料,相关说明较少,有一篇文章是说要复制NacosWatch.java,本地实现一下,因为nacos没有监听上线通知。按说明操作了,但是还是不好使。相关代码如下:NacosWatch.ja
在实际项目使用中,必须要考虑服务的安全性,当服务部署到互联网以后,就要考虑服务被恶意请求和暴力攻击的情况,下面的教程,通过intercept和redis针对url+ip在一定时间内访问的次数来将ip禁用,可以根据自己的需求进行相应的修改,来打打自己的目的;首先工程为springboot框架搭建,不再详细叙述。直接上核心代码。首先创建一个自定义的拦截器类,也是最核心的代码;/***...
nacos做为注册中心和配置中心springboot微服务集成springboot admin做服务监控钉钉机器人及时推送服务下线、上线通知摘要Spring Boot Admin是一个开源社区项目,用于管理和监控SpringBoot应用程序。 应用程序作为Spring Boot Admin Client向为Spring Boot Admin Server注册(通过HTTP)或使用SpringClo
前话 在前面的文章中,先给出了Web服务请求异步处理的压力测试报告,从数据角度描述了支持Web请求异步化的容器在不同并发用户下的处理能力及性能消耗。本文从概念的角度对于应用系统异步化,Web服务请求异步化和Web请求异步化规范及实现三方面做一个介绍,为系统异步化改造做好基础准备。(同样,文中大部分都是个人意见和想法,非完全正确,欢迎讨论)应用系统异步化
在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和Feign来调用。为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能保证100%可用,如果单个服务出现问题,调用这个服务就会出现线程阻塞,此时若有大量的请求涌入,Servlet容器的线程资源会被消耗完毕,导致服务瘫
在微服务架构中,服务与服务的通讯是基于http restful的。Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign。在这一篇文章首先讲解下基于ribbon。1:ribbon简介ribbon是一个负载均衡客户端,可以很好的控制htt和tcp的一些行为。Feign默认集成了ribbon。ribbon 已经默认实现了这些配置bean:ICl
SpringCloud Bus 将分布式的节点用轻量的消息代理连接起来。它可以用于广播配置文件的更改或者服务之间的通讯,也可以用于监控。本文要讲述的是用Spring Cloud Bus实现通知微服务架构的配置文件的更改。1:首先安装rabbitmq,可自行去官网下载相关版本进行安装;2:修改config-client工程,添加相关依赖:<dependency><grou
上一篇我们讲述了一个服务如何从配置中心读取文件,配置中心如何从远程git读取配置文件,当服务实例很多时,都从配置中心读取文件,这时可以考虑将配置中心做成一个微服务,将其集群化,从而达到高可用,架构图如下:1:新建一个eureka server工程,命名为config-eureka-server,作为配置服务的注册中心。pom文件如下:<?xml version="1.0" encoding="U
今天工作中遇到一个坑,就是我们在使用拦截器的时候,把spring容器中的bean引用到拦截器中,引用的bean为空,代码如下:public class MyInterceptor implements HandlerInterceptor { @Autowiredprivate RedisService redisService;/*** 在请求处理之前进
背景在多线程环境下,通常会使用锁来保证有且只有一个线程来操作共享资源分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。