保存成功
订阅成功
保存失败,请重试
提交成功
酸奶

酸奶

java 高级开发工程师
专注 java 后端开发 熟悉 springboot、springcloud、zk、docker、Redis 等主流开源框架~ CSDN 博客专家:https://quellanan.blog.csdn.net...更多
创作文章25

实用!手把手带你部署 MySQL 一主两从一 MHA 集群环境

MySQL 想必大家都有用到吧,但是我们作为开发却很少关注 MySQL 的主从复制,以及集群环境的搭建。因为这部分是运维工程师做的,但是不懂运维的开发不是好的开发。所以本文带领大家部署一个 MySQL 一主两从一 MHA 集群环境。 本人也是开发工程师,但也比较喜欢运维的这些事,其实都是技术吗,多了解一些不会错,多动手实践才能进步。所以赶紧学起来吧。 学习本场 Chat 您将了解到: 1. 虚拟机创建并安装系统 2. 部署 MySQL 3. 部署主从同步 4. 部署 MHA 架构 5. 测试效果
MySQL
68 订阅

实用!搭建一个基于 Nocas、Dubbo 的 Spring Cloud 微服务架构

这篇文章带领大家基于上篇文章的案例需求背景,我们对一些组件进行调整。搭建一个基于 SCA 的微服务架构,同时加入链路追踪技术,追踪服务间的调用。 案例背景:[《实用!搭建一个基于 Netflix 的 Spring Cloud 微服务架构》](https://gitbook.cn/gitchat/activity/5f463276f9fe2a0860814064) 学习本场 Chat 您将了解到: 1. Nacos 作为注册中心 2. Nacos 作为配置中心 3. 通过 Dubbo RPC 实现服务间的调用 4. 使用 Sentinel 对 GateWay 网关的入口资源进行限流 5. 使用 Spring Cloud Sleuth 和 Zipkin 实现链路追踪
Spring Cloud
72 订阅

实用!搭建一个基于 Netflix 的 Spring Cloud 微服务架构

Spring Cloud 是一站式微服务解决方案。很多公司都在使用 Spring Cloud 组件。我们想要学习 Spring Cloud 微服务架构,就需要学习他们的组件。包含:注册中心、负载均衡、熔断处理、过程调用、网关服务、配置中心、消息总线、调用链路、数据监控等等。 这篇文章带领大家整合微服务的这些组件。以注册、登录为主线,串联起验证码⽣成及校验、邮件发送、IP 防暴刷、⽤户统⼀认证等功能。实现需基于 Spring Cloud 微服务架构,技术涉及 Nginx、Eureka、Feign(Ribbon、Hystrix)、Gateway、Config 等,赶紧 get 吧。 学习本场 Chat 您将了解到: 1. Eureka 服务端搭建,实现服务的自动注册与发现 2. Gateway 网关搭建,设定全局过滤器,实现 IP 防暴刷、⽤户统⼀认证等功能 3. Gateway 动态路由配置,和 Eureka 结合从注册 4. Config 配置中心构建,所有服务的配置放在配置中心实现配置的统一管理 5. Feign 实现服务间的调用,以及通过配置 Ribbon 和 Hystrix 实现负载均衡和服务降级。 6. service-user 实现用户的注册和登录 7. service-code 实现验证码生成以及验证码校验 8. service-code 实现邮件发送短信验证码 9. Nginx 实现动静分离
Spring Cloud
118 订阅

收藏! 一文彻底了解 Feign:微服务远程服务调用

Spring Cloud 是一站式微服务解决方案。很多公司都在使用 Spring Cloud 组件。我们想要学习 Spring Cloud 微服务架构,就需要学习他们的组件。包含:注册中心、负载均衡、熔断处理、过程调用、网关服务、配置中心、消息总线、调用链路、数据监控等等。 这篇文章带领大家彻底了解 Spring Cloud 中的远程服务调用——Feign。是一个基于 HTTP 协议远程服务调用的过程。方便快捷的帮助我们实现服务间的调用。让我们从使用到源码,深入了解 Feign 吧。 学习本场 Chat 您将了解到: 1. Feign 简介 2. Feign 应用 3. Feign 对负载均衡的支持 4. Feign 对熔断器的支持 5. Feign 日志级别配置 6. Feign 源码解析之代理对象生成的流程 7. Feign 源码解析之增强逻辑处理过
微服务
105 订阅

收藏! 一文彻底彻底了解 Hystrix :微服务熔断器

Spring Cloud 是一站式微服务解决方案。很多公司都在使用 Spring Cloud 组件。我们想要学习 Spring Cloud 微服务架构,就需要学习他们的组件。包含:注册中心、负载均衡、熔断处理、过程调用、网关服务、配置中心、消息总线、调用链路、数据监控等等。 这篇文章带领大家彻底了解 Spring Cloud 中的熔断器——Hystrix。什么是熔断器?我微服务中如果一个服务出现了问题,不进行处理的话,就会导致雪崩效应,所有服务都会受影响,熔断器就是为了避免这种问题发生,当服务不可用时,进行降级处理。从使用到源码,深入了解 Hystrix 。 学习本场 Chat 您将了解到: 1. Hystrix 熔断器简介 2. Hystrix 应用 3. Hystrix 舱壁模式 4. Hystrix 工作流程 5. Hystrix 监控程序 6. Hystrix 源码解析
Hystrix
81 订阅

收藏! 一文彻底了解 Ribbon:微服务负载均衡

Spring Cloud 是一站式微服务解决方案。很多公司都在使用Spring Cloud 组件。我们想要学习 Spring Cloud 微服务架构,就需要学习他们的组件。包含:注册中心、负载均衡、熔断处理、过程调用、网关服务、配置中心、消息总线、调用链路、数据监控等等。 这篇文章带领大家彻底了解 Spring Cloud 中的负载均衡——Ribbon。负载均衡相信大家在工作中听过很多,不管是 Nginx 的负载均衡。还是 Dubbo 的负载均衡 都是依附在其他组件上的一负载均衡决策。而 Ribbon 是 Spring Cloud 提供的一种专门在客户端实现软负载均衡的一种组件。所以我们从使用到源码,一次搞定它。 学习本场 Chat 您将了解到: 1. Ribbon 简介 2. Ribbon 应用 3. Ribbon 负载均衡策略 4. Ribbon 源码解析之 RestTemplate 对象绑定拦截器过程 5. Ribbon 源码解析之服务负载均衡器 6. Ribbon 源码解析之选择服务的过程 7. Ribbon 源码解析之负载均衡策略
负载均衡
180 订阅

收藏! 一文彻底彻底了解 Eureka:微服务注册中心

Spring Cloud 是一站式微服务解决方案。很多公司都在使用Spring Cloud 组件。我们想要学习 Spring Cloud 微服务架构,就需要学习他们的组件。包含:注册中心、负载均衡、熔断处理、过程调用、网关服务、配置中心、消息总线、调用链路、数据监控等等。 这篇文章带领大家彻底了解 Spring Cloud 中的注册中心——Eureka。当然 Eureka 只是注册中心的一种实现方案。它的有点就是无其他依赖,相对于 Zookeeper 或者 Consul 都需要额外的安装服务端。所以文本就聚焦 Eureka ,从使用到原理,彻底了解它。 学习本场 Chat 您将了解到: 1. Eureka 简介 2. EurekaServer 构建 3. EurekaClient 构建 4. Eureka 注册中心集群构建 5. Eureka 源码解析之 EurekaServer 启动流程 6. Eureka 源码解析之服务接口提供策略 7. Eureka 源码解析之服务注册接口 8. Eureka 源码解析之 Client 初始化获取服务流程 9. Eureka 源码解析之 Client 本地缓存及续约
Eureka
96 订阅

面试必备! Zookeeper 核心源码剖析

Zk 相信大家早有耳闻,但是是不是有很多小伙伴和我一样,并没有真正的尝试去了解它呢?勇敢的踏出第一步,所以这里带领大家来看看 ZK 源码。 这篇文章带领大家搭建 ZK 的源码搭建,到 ZK 启动、初始化、选举等核心流程剖析,让大家对 ZK 有更深层次的认识,面试侃侃而谈不好吗? 学习本场 Chat 您将了解到: 1. Zookeeper 源码环境搭建 2. Zookeeper 单机模式的启动执行流程 3. Zookeeper 单机模式的初始化流程 4. Zookeeper Leader 选举的流程 5. Zookeeper 集群模式启动流程 6. ZK 源码资料
ZooKeeper
92 订阅

开干!手撸几个 Zookeeper 典型应用场景

ZK 相信大家早有耳闻,但是是不是有很多小伙伴和我一样,并没有真正的尝试去了解它呢?勇敢的踏出第一步,所以这里带领大家撸几个 ZK 的典型应用场景。 这篇文章我们依据 ZK 的特性,我们可以基于 ZK 实现服务注册与自发现,也就是我们常说的注册中心,以及实现负载均衡类似 Nginx 的负载均衡;以及实现配置动态更新,也就是我们常说的的配置中心。本文就基于这三个比较流行的场景,利用 ZK 实现简易版的 Demo。 学习本场 Chat 您将了解到: 1. 基于 Zookeeper 实现简易版服务的注册与发现机制 2. 实现基于 Zookeeper 的简易版负载均衡策略 3. 基于 Zookeeper 实现简易版配置中心 4. Demo 源码资料
ZooKeeper
109 订阅

#Java# 走起 !一文带你 Zookeeper 入门

ZK 相信大家早有耳闻,但是是不是有很多小伙伴和我一样,并没有真正的尝试去了解它呢?勇敢的踏出第一步,所以这里带领大家 ZK 入门吧。 这篇文章给大家带来从 Zookeeper 的基本概念、安装部署、核心组件等等来一步步的了解。让你知道原来 ZK 功能强大,使用简单,赶紧 Get 吧。 学习本场 Chat 您将了解到: 1. Zookeeper 简介与安装 2. Zookeeper 的系统模型 3. Zookeeper 命令行操作 4. Zookeeper API 使用 5. Zookeeper 开源客户端使用
ZooKeeper
82 订阅

开干!手撸一个基于 Netty 的 RPC 框架

随着分布式和微服务的流行,服务拆分的越来越细,服务间的调用也成了我们程序员必备的知识点。什么是 Netty ?Netty 的使用,什么是 RPC? 怎样实现一个 RPC? 这篇文章给大家带来 Netty 的核心组件的讲解。主要通过谅解 Netty 的线程模型以及 Netty 的应用,来手写一个基于 Netty 的 RPC 远程调用的的案例 。 学习本场 Chat 您将了解到: 1. 线程模型 2. Netty 核心组件 3. Netty 使用 4. 基于 Netty 实现一个简易 RPC 框架
Netty
114 订阅

揭秘 !Tomcat 启动流程和请求处理流程源码剖析

现在 Spring Boot 这么流行,为什么还要学习 Tomcat ? 确实 Spring Boot 内置 Tomcat 了,不再需要我们进行配置就可以访问 Web 项目。但是正因为 Spring Boot 使用了内置 Tomcat。我们才更需要了解 Tomcat 的核心原理。这样在报错的情况下才能快速定位到问题。 这篇文章给大家带来 Tomcat 源码解读。主要解读 Tomcat 在启动阶段是怎样执行的,以及启动完成后,怎样监听请求以及处理请求的。 学习本场 Chat 您将了解到: 1. Tomcat 源码环境搭建 2. Tomcat 启动流程 3. Tomcat 启动流程源码剖析 4. 请求访问 Tomcat 执行流程 5. 请求流程源码剖析
Tomcat
136 订阅

手写迷你版 Tomcat

现在 Spring Boot 这么流行,为什么还要学习 Tomcat ? 确实 Spring Boot 内置 Tomcat 了,不再需要我们进行配置就可以访问 web 项目。但是正因为 Spring Boot 使用了内置 Tomcat。我们才更需要了解 Tomcat 的核心原理。这样在报错的情况下才能快速定位到问题。 所以本篇文章就带领大家手写一个迷你版 Tomcat 。让我们了解一下 Tomcat 的核心实现以及核心流程。本文一个完成 5 个需求,一步步的完善,思路清晰,让你也能手写一个 Tomcat 。 学习本场 Chat 您将了解到: 1. 请求迷你 Tomcat ,返回固定的内容 2. 请求迷你 Tomcat ,返回 HTML 静态文件 3. 可以请求动态资源(Servlet) 4. 迷你 Tomcat 支持多线程访问 5. 迷你 Tomcat 支持多项目部署访问
Tomcat
127 订阅

揭秘 Spring Boot 启动到底做了什么

Spring Boot 随着微服务的流行也变得炙手可热了,它的约定大于配置,简化了我们开发过程中繁琐的配置以及 Jar 之间的依赖关系。小白上手 Spring Boot 也只用几分钟。这就是 Spring Boot 的宗旨,开箱即用。 那 Spring Boot 在给我们提供便利的同时,它到底为我们做了什么呢 ? 为什么我们使用 Spring Boot Keyi 开箱即用?这些这些,本文给你答案。 学习本场 Chat 您将了解到: 1. Spring Boot 依赖配置 2. Spring Boot 启动配置 3. Spring Boot 启动流程 4. Spring Boot 源码资料
Spring Boot
115 订阅

一文读懂 Spring MVC 请求处理流程

Spring MVC 在 Web 项目中基本上是必用的,基于 Servlet 的一种控制层框架,我们在使用的过程中往往会碰到各种问题,有时候还没有思绪解决问题,主要是因为我们对请求处理的流程不熟悉,不能快速定位都问题所在,所以总会耗费大量时间,各种百度才解决问题。如果你也有这样的困惑,不妨一起来看下 Spring MVC 的请求处理流程。让我们能够快速定位问题。 学习本场 Chat 您将了解到: 1. DispatcherServlet 九大对象介绍 2. DispatcherServlet 核心方法分析 3. Request 请求处理流程分析 4. 请求处理流程源码剖析
免费Spring
54 订阅

MyBatis 缓存你真的会了吗?

mybatis 占据 ORM 框架的半壁江山,我们是不仅要做到会使用,还得做到知其然更知其所以然。 MyBatis 缓存分为一级缓存和二级缓存,那这两级缓存是怎么实现的呢?他们的存储结构,作用范围,失效场景你都了解吗?这里带领大家一起探索 MyBatis 缓存实现的奥秘。 学习本场 Chat 您将了解到: 1. MyBatis 一级缓存,二级缓存的概念 2. MyBatis 一级缓存源码剖实现以及特点 3. MyBatis 二级缓存源码实现以及特点 4. 在自定义持久层框架中增加 缓存实现 5. MyBatis 整合 Redis 实现分布式环境下缓存
免费MyBatis
52 订阅

开干!Spring Boot 缓存你会用了吗?

在缓存为王的时代,我们在项目中多多少少都会用到缓存,所以就需要我们对缓存技术有一定的了解。之前讲过 Mybatis 的缓存。现在我们在 Spring Boot 项目中怎么使用缓存呢? Spring Boot 为我们提供了哪些缓存机制,我们怎么快速上手使用呢? 学习本场 Chat 您将了解到: 1. Spring Boot 默认缓存的使用 2. Spring Boot 整合 Redis 缓存的使用 3. 自定义 Redis 缓存序列化机制
Spring Boot
111 订阅

手写 MyBatis 你值得拥有

MyBatis 占据 ORM 框架的半壁江山,我们是不仅要做到会使用,还得做到知其然更知其所以然。 所以本文带领大家搭建一个自定义的持久层框架,通过我们手动实现,来探索 MyBatis 框架的核心原理,让我们在后面阅读源码或者使用功能的时候能够知道为什么这样写。 学习本场 Chat 您将了解到: 1. MyBatis 核心设计思想 2. 学会自定义一个持久层框架 3. 自定义框架的增删改查的功能实现 4. 通用 Mapper 的动态代理实现 5. 经典 MyBatis 面试题解答
免费MyBatis
33 订阅

面试必会的 Spring 解决循环依赖问题

Spring 作为 Java 领域的霸主,我们使用颇多,包含 Spring MVC 、Spring Boot 、Spring Cloud。但其实这些都是在 Spring 框架基础上的衍生产物。那你对 Spring 真的有了解过吗? 循环依赖是指实例化对象时,发现对象间循环依赖,但是实际上 Spring 解决了循环依赖的问题,可以实例化出循环依赖的对象?本文就带你一起看看 Spring 是怎样做的。主要使用的是三级缓存机制哟,快来看看吧。 学习本场 Chat 您将了解到: 1. Bean 的创建流程 2. Spring 解决循环依赖的机制。 3. Spring 解决循环依赖的源码剖析 4. 源码学习资料
Spring
132 订阅

手写 Spring IOC 和 AOP 你会了吗

Spring 作为 Java 领域的霸主,我们使用颇多,包含 Spring MVC 、Spring Boot 、Spring Cloud。但其实这些都是在 spring 框架基础上的衍生产物。那你对 Spring 真的有了解过吗? Spring 框架 作为 Spring 家族的核心,主要就两个核心功能,控制翻转(IOC)和面向切面编程(AOP)。那你知道 Spring 中是怎么实现的吗?想不想一探 Spring 核心奥秘呢?本文手把手搭建一个不依赖 Spring 但可以实现和 Spring 一样的 IOC 和 AOP 的核心功能的 Demo 。通过这个 Demo 让我们对 Spring 核心源码有清晰的认识,以便大家更轻松的阅读源码。 学习本场 Chat 您将了解到: 1. 手写 IOC 和 AOP 的实现方式 2. 自定义注解的使用 3. 动态代理的使用 4. Spring 核心源码剖析 5. 源码学习资料
Spring
110 订阅

MyBatis 插件原理及实现你了解吗

MyBatis 占据 ORM 框架的半壁江山,我们是不仅要做到会使用,还得做到知其然更知其所以然。 MyBatis 插件你有听说过吗?MyBatis 提供了插件机制,才会让市面上涌现出大量的 MyBatis 的插件,比如 pageHelper、mybatis-generator 等等优秀的插件。 那你知道 MyBatis 插件核心是怎么实现的吗?怎么实现一个自定义插件呢? 学习本场 Chat 您将了解到: 1. MyBatis 插件原理 2. MyBatis 自定义插件实现 3. MyBatis 插件源码剖析 4. pageHelper 插件分页 5. 源码学习资料
MyBatis
106 订阅

手把手搭建 Redis 集群以及项目中使用

上一篇 Chat 我们了解到了 Redis 的主从复制以及哨兵模式。那什么又是 Redis 集群呢? 在实际项目中单台 Redis 做服务器还是很少的,大部分都是以集群的方式。那怎样搭建一个集群以及在项目中使用呢?接下来我就手把手给大家搭建一个集群模式。 学习本场 Chat 您将了解到: 1. 什么是 Redis 集群 2. Redis 集群有什么好处,用在哪些场景 3. 集群的主从复制和故障转移 4. 搭建一个 Redis 集群的实例 5. 在项目(Spring Boot 项目为例)中怎么使用集群
183 订阅

一眼就能看懂的 Redis 持久化的 RDB 和 AOF

本篇 chat 主要将一下 redis 持久化 通过本 chat 你将了解到 1. 什么是 redis 持久化以及持久化的作用 2. redis 持久的方式 3. RDB 持久化的方式 4. AOF 持久化的方式 5. 二者优劣 6. 实际中选择
免费
174 订阅

Redis 主从复制原来这么简单

Redis 现在在大小项目中用的越来越多,我们不能仅仅局限在会通过 RedisTemplate 等使用 Redis ,我们还应该掌握 Redis 部署的一些相关技能。 现在项目中很少只用一台 Redis 服务器的,因为这样 Redis 挂了整个项目就崩了,所以往往会有多台服务器,那怎么保证数据一致性呢?实际就是通过 Redis 主从复制,分成一个主服务器和多个从服务器,实现读写分离以及负载均衡,并保持数据一致性。所以让我们学起来吧。 学习本场 Chat 您将了解到: 1. 什么是 Redis 主从复制 2. 主从复制有什么好处,用在哪些场景 3. 常见主从复制的模式 4. 搭建一个主从复制的实例 5. 主从复制和哨兵模式配合使用
137 订阅

代码简洁之道,检测出你代码中的 bug、漏洞、异味

大家在写代码的时候都希望写出简洁高效的代码,那什么样的代码是简洁高效的呢,不是说代码行越少越好,也不是说用了一个多厉害的函数。而是能让别人一眼就能看懂的代码就是简洁的代码,毕竟我们的代码都是祖传代码,所以在看别人写的代码就知道有多痛苦了,所以为了我们写的代码方便别人看懂。这里和大家一起探讨下在写代码的时候需要注意哪些地方,遵循哪些规范,以及对现有的代码怎么优化。 本场 Chat 分一下几个步骤(备注:针对 Java 项目,由于本人涉及的是 Java 代码,所以这次探讨的是 Java 代码的 Clean Code)。 1. 讲解一下代码简洁的重要性。 2. 什么样的代码是简洁易懂的代码。 3. 怎样写出简洁代码,需要注意哪些。 4. 对现在项目的代码怎么进行优化的思路。 5. SonarLint 和 SonarQube 的使用。 6. SonarLint 和 SonarQube 检测出的 bug、漏洞、异味修复的思路和案例
代码规范
153 订阅