SpringBoot进阶教程(七十一)详解Prometheus+Grafana

随着容器技术的迅速发展,Kubernetes已然成为大家追捧的容器集群管理系统。Prometheus作为生态圈Cloud Native Computing Foundation(简称:CNCF)中的重要一员。Prometheus是一套开源的系统监控报警框架。它启发于Google的borgmon监控系... ... »

SpringBoot进阶教程(七十)SkyWalking

流行的APM(Application Performance Management工具有很多,比如Cat、Zipkin、Pinpoint、SkyWalking,优秀的监控工具还有很多,其它比如还有zabbix、prometheus、Arthas、Grafana之类的。这里主要介绍SkyWalking... ... »

SpringBoot进阶教程(六十九)ApplicationContextAware

在某些特殊的情况下,Bean需要实现某个功能,但该功能必须借助于Spring容器才能实现,此时就必须让该Bean先获取Spring容器,然后借助于Spring容器实现该功能。为了让Bean获取它所在的Spring容器,可以让该Bean实现ApplicationContextAware接口。Appli... ... »

SpringBoot进阶教程(六十八)Sentinel实现限流降级

前面两篇文章nginx限流配置和SpringBoot进阶教程(六十七)RateLimiter限流,我们介绍了如何使用nginx和RateLimiter限流,这篇文章介绍另外一种限流方式---Sentinel。Sentinel 是阿里中间件团队开源的,面向分布式服务架构的轻量级高可用流量控制组件,主要... ... »

SpringBoot进阶教程(六十七)RateLimiter限流

在上一篇文章nginx限流配置中,我们介绍了如何使用nginx限流,这篇文章介绍另外一种限流方式---RateLimiter。在早期的计算机领域,限流技术(time limiting)被用作控制网络接口收发通信数据的速率。 可以用来优化性能,减少延迟和提高带宽等。 现在在互联网领域,也借鉴了这个概念... ... »

nginx限流配置

在上一篇文章Nginx负载均衡配置中,我们已经介绍了关于nginx的安装与nginx负载均衡配置相关的知识,今天主要讲讲nginx是如何限流的。随着业务的扩散,系统并发越来越高时,有三样利器用来保护系统,分别是缓存、降级和限流。 ... »

SpringBoot进阶教程(六十五)自定义注解

在上一篇文章《SpringBoot最全注解手册》中介绍了springboot的常用注解,springboot提供的注解非常的多,这些注解简化了我们的很多操作。今天主要介绍介绍自定义注解。自spring4.0开放以来,自定义注解非常常见,项目中都会或多或少的使用自定义注解,我们的demo中主要针对登录... ... »

SpringBoot进阶教程(六十四)注解大全

在Spring1.x时代,还没出现注解,需要大量xml配置文件并在内部编写大量bean标签。Java5推出新特性annotation,为spring的更新奠定了基础。从Spring 2.X开始spring将xml配置中的对象ioc过程转化成了注解。Spring Boot之所以能够轻松地实现应用的创建... ... »

Java常用开源库

Java的经久不衰,很大程度上得益于Java的生态好。在日常开发中,我们也会经常使用到各种开源库和工具类,为了避免重复造轮子,本文将贴出工作及学习中会用到的部分开源库和工具类。Java的生态实在太大,这里只能列举一部分。如果你对此感兴趣,不妨去读读他们的源码。 ... »

SpringBoot进阶教程(六十二)整合Kafka

在上一篇文章《Linux安装Kafka》中,已经介绍了如何在Linux安装Kafka,以及Kafka的启动/关闭和创建发话题并产生消息和消费消息。这篇文章就介绍介绍SpringBoot整合Kafka。 ... »

Kafka常用命令合集

在上一篇文章《Linux安装Kafka》中,已经介绍了如何在Linux安装Kafka,以及Kafka的启动/关闭和创建发话题并产生消息和消费消息。这篇文章就介绍介绍Kafka的那些常用的命令。关于Kafka的启停/创建话题/消息的产生和消费等命令在上一篇文章《Linux安装Kafka》中已经指出,这... ... »

Linux安装Kafka

kafka是一个分布式消息队列。具有高性能、持久化、多副本备份、横向扩展能力。生产者往队列里写消息,消费者从队列里取消息进行业务逻辑。一般在架构设计中起到解耦、削峰、异步处理的作用。kafka对外使用topic的概念,生产者往topic里写消息,消费者从读消息。为了做到水平扩展,一个topic实际是... ... »

Redis实用监控工具一览

Redis已经成为web应用开发不可或缺的一个组成部分,在项目中的应用越来越广泛,这篇文章就来讲讲那些关于Redis监控的那点事。 ... »

SpringBoot进阶教程(二十九)整合Redis 发布订阅

SUBSCRIBE, UNSUBSCRIBE 和 PUBLISH 实现了 发布/订阅消息范例,发送者 (publishers) 不用编程就可以向特定的接受者发送消息 (subscribers). Rather, 发布的消息进入通道,不需要知道有没有订阅者. 订阅者发表感兴趣的一个或多个通道,并且只接... ... »

SpringBoot(二十七)整合Redis之分布式锁

在之前的一篇文章(《Java分布式锁,搞懂分布式锁实现看这篇文章就对了》),已经介绍过几种java分布式锁,今天来个Redis分布式锁的demo。redis 现在已经成为系统缓存的必备组件,针对缓存读取更新操作,通常我们希望当缓存过期之后能够只有一个请求去更新缓存,其它请求依然使用旧的数据。这就需要... ... »

SpringBoot(二十六)整合Redis之共享Session

集群现在越来越常见,当我们项目搭建了集群,就会产生session共享问题。因为session是保存在服务器上面的。那么解决这一问题,大致有三个方案,1.通过nginx的负载均衡其中一种ip绑定来实现(通过ip绑定服务器其中一台,就没有集群概念了);2.通过cookie备份session实现(因为co... ... »