<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Zack_tzh的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Zack_tzh</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Zack_tzh]]></copyright><item><title><![CDATA[Spring Cloud Alibaba - Sentinel（三）规则持久化]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/124711359</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/124711359</guid><author>Zack_tzh</author><pubDate>Wed, 11 May 2022 15:39:44 +0800</pubDate><description><![CDATA[文章目录1. 原始模式2. Pull模式3. Push模式3.1 基于Nacos配置中心控制台实现推送3.1.1 添加依赖3.1.2 nacos中配置flow rule3.1.3 yml添加配置


Sentinel规则推送分为 3 种模式，包括 “原始模式”、“Pull 模式” 和"Push 模式"





推送模式
说明
优点
缺点




原始模式
API 将规则推送至客户端并直接更新到内存中，扩展写数据源（WritableDataSource）
简单，无任何依赖
不保证一致性；规则保存在内存中，.]]></description><category></category></item><item><title><![CDATA[Spring Cloud Alibaba - Sentinel（二）熔断、热点、授权]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/124692245</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/124692245</guid><author>Zack_tzh</author><pubDate>Tue, 10 May 2022 16:55:04 +0800</pubDate><description><![CDATA[文章目录一、熔断降级1. 熔断策略1.1 慢调用比例1.2 异常比例1.3 异常数2. 整合OpenFeign降级2.1 引入依赖2.2 添加bootstrap.yml2.3 在程序中使用配置二、热点参数限流三、系统规则四、授权控制规则

一、熔断降级

熔断降级是一种基于消费者报复自身的手段，在调用提供方的接口时，基于慢调用比例、异常比例、异常数进行熔断降级。

1. 熔断策略
1.1 慢调用比例

慢调用比例 (SLOW_REQUEST_RATIO)：选择以慢调用比例作为阈值，需要设置允许的慢调用 R.]]></description><category></category></item><item><title><![CDATA[Spring Cloud Alibaba - Sentinel（一）快速入门&流控配置]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/124500186</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/124500186</guid><author>Zack_tzh</author><pubDate>Fri, 29 Apr 2022 17:08:34 +0800</pubDate><description><![CDATA[文章目录一、Sentinel 介绍二、Sentinel 快速入门2.1 获取控制台jar包2.2 启动控制台2.3 添加服务端三、流控配置3.1 快速入门3.2 BlockException统一处理3.3 配置讲解

一、Sentinel 介绍

随着微服务的流行，服务和服务之间的稳定性变得越来越重要。 Sentinel 以流量为切入点，从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

Sentinel 具有以下特征:

丰富的应用场景： Sentinel 承接了阿里巴巴近 10 年的双十.]]></description><category></category></item><item><title><![CDATA[Spring Cloud Alibaba - Nacos（四）配置中心]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/124453622</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/124453622</guid><author>Zack_tzh</author><pubDate>Wed, 27 Apr 2022 16:10:22 +0800</pubDate><description><![CDATA[文章目录一、Nacos配置中心使用1. 快速开始2. 搭建nacos-config服务**2.1 引入依赖****2.2 添加bootstrap.yml**2.3 在程序中使用配置3. Config相关配置

一、Nacos配置中心使用

官方文档： https://github.com/alibaba/spring-cloud-alibaba/wiki/Nacos-config
Nacos 提供用于存储配置和其他元数据的 key/value 存储，为分布式系统中的外部化配置提供服务器端和客户端支持。使用.]]></description><category></category></item><item><title><![CDATA[Spring Cloud Alibaba - Nacos（三）OpenFeign]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/124451734</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/124451734</guid><author>Zack_tzh</author><pubDate>Wed, 27 Apr 2022 15:14:42 +0800</pubDate><description><![CDATA[文章目录一、什么是Feign1. Feign的优势2. Spring Cloud Alibaba快速整合OpenFeign**2.1 引入依赖****2.2 添加feign接口****2.3 在启动类上添加开启Feign的注解****2.4 在调用的地方使用feign调用**3.Spring Cloud Feign的自定义配置3.1 日志配置3.2 契约配置3.3 自定义拦截器实现认证逻辑3.4 超时时间配置3.5 客户端组件配置3.6 GZIP 压缩配置


在Java项目中，我们是如何实现接口调用的呢.]]></description><category></category></item><item><title><![CDATA[Spring Cloud Alibaba - Nacos（二）负载均衡器]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/124445758</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/124445758</guid><author>Zack_tzh</author><pubDate>Wed, 27 Apr 2022 10:51:09 +0800</pubDate><description><![CDATA[文章目录一、简介二、使用LoadBnlancer三、切换策略四、自定义策略

一、简介
在Spring Cloud Nacos 2021以后就没有在默认使用Ribbon作为负载均衡器了，而且在Cloud官网中也推荐使用LoadBnancer作为负载均衡器，他实现了轮询和随机两种方式（RandomLoadBalancer、RoundRobinLoadBalancer），如果引入了NacosDiscovery的话里面还可以使用NacosLoadBnancer的方式。所以接下来我们就来实现一下如何使用LoadB.]]></description><category></category></item><item><title><![CDATA[Spring Cloud Alibaba - Nacos（一）服务注册与发现]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/124444828</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/124444828</guid><author>Zack_tzh</author><pubDate>Wed, 27 Apr 2022 10:27:26 +0800</pubDate><description><![CDATA[文章目录简介Nacos注册中心Nacos Discovery 核心功能Spring Cloud Alibaba Nacos 快速开始Nacos Server 部署将Order服务注册到Nacos Service

简介

Nacos 官方：一个更易于构建云原生应用的动态服务发现(Nacos Discovery )、服务配置(Nacos Config)和服务管理的平台。

Nacos 的关键特性包括:

服务发现和服务健康监测
动态配置服务
动态 DNS 服务
服务及其元数据管理

Nacos注册中心

管.]]></description><category></category></item><item><title><![CDATA[Spring Cloud Alibaba 入门系列]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/124444620</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/124444620</guid><author>Zack_tzh</author><pubDate>Wed, 27 Apr 2022 10:22:45 +0800</pubDate><description><![CDATA[文章目录介绍本系列使用的版本功能组件目录

介绍

Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件，方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。
依托 Spring Cloud Alibaba，您只需要添加一些注解和少量配置，就可以将 Spring Cloud 应用接入阿里分布式应用解决方案，通过阿里中间件来迅速搭建分布式应用系统。
此外，阿里云同时还提供了 Spring Cloud Ali.]]></description><category></category></item><item><title><![CDATA[【二】微信公众号之扫码关注后自动登录]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/116005482</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/116005482</guid><author>Zack_tzh</author><pubDate>Thu, 22 Apr 2021 11:12:03 +0800</pubDate><description><![CDATA[【二】微信公众号之扫码关注后自动登录

​		原来公司的官网就支持账号密码、手机验证码、QQ扫码授权、微信扫码授权等多种登录方式。昨天分享了微信公众号之扫码登录，今天接到需求说要为了咋们的公众号涨粉，要扫码后关注公众号后才可以登录，我一想这不是耍流氓嘛，登个网站还非得我关注。。。算了，产品爸爸说了算。

一、准备工作
查阅了微信公众号开发文档，发现可以用微信生成带参数二维码实现。看看人家的介绍

这不就是我们这个需求准备的接口嘛????
二、整个流程说明
先来看看整个流程的时序图

然后咋们来捋一下整个流程]]></description><category></category></item><item><title><![CDATA[【一】微信公众号之扫码登录]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/115898016</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/115898016</guid><author>Zack_tzh</author><pubDate>Tue, 20 Apr 2021 11:07:28 +0800</pubDate><description><![CDATA[微信公众号之扫码登录

​		原来公司的官网就支持账号密码、手机验证码、QQ扫码授权、微信扫码授权等多种登录方式。今天要分享的就是关于微信扫码授权登录的原理。

一、准备工作
使用的是微信登录功能实现的，需要先在微信开放平台注册开发者帐号，并拥有一个已审核通过的网站应用，并获得相应的AppID和AppSecret，申请微信登录且通过审核后，可开始接入流程。
二、授权流程说明
微信授权登录让微信用户使用微信身份安全登录第三方应用或网站，当微信用户授权登录接入微信的第三方应用后，第三方就可以获取到用户的接口调用]]></description><category></category></item><item><title><![CDATA[分布式之Redis【二】高可用集群搭建]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/114455894</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/114455894</guid><author>Zack_tzh</author><pubDate>Sat, 06 Mar 2021 20:37:09 +0800</pubDate><description><![CDATA[分布式之Redis【二】高可用集群搭建
一、Redis集群方案比较

哨兵模式


在redis3.0以前的版本要实现集群一般是借助哨兵sentinel工具来监控master节点的状态， 如果master节点异常，则会做主从切换，将某一台slave作为master，哨兵的配置略微复杂，并且性能和高可用性等各方面表现一般，特别是在主从切换的瞬间存在访问瞬断的情况，而且哨兵模式只有一个主节点对外提供服务，没法支持很高的并发，且单个主节点内存也不宜设置得过大，否则会导致持久化文件过大，影响数据恢复或主从同步的效率]]></description><category></category></item><item><title><![CDATA[分布式之Redis【一】基础学习]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/114396923</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/114396923</guid><author>Zack_tzh</author><pubDate>Fri, 05 Mar 2021 14:57:26 +0800</pubDate><description><![CDATA[分布式之Redis【一】基础学习
一、Linux 源码安装
# 官网 https://redis.io/
# wget http://download.redis.io/releases/redis-5.0.2.tar.gz
# tar xzf redis-5.0.2.tar.gz
# cd redis-5.0.2
# make
# 修改配置文件 redis.conf  daemonize yes
# 启动redis服务端  ./src/redis-server redis.conf
# 启动客服端 ./s]]></description><category></category></item><item><title><![CDATA[【每日一题】  1438. 绝对差不超过限制的最长连续子数组]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/114277098</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/114277098</guid><author>Zack_tzh</author><pubDate>Tue, 02 Mar 2021 09:44:43 +0800</pubDate><description><![CDATA[【每日一题】  1438. 绝对差不超过限制的最长连续子数组

避免每日太过咸鱼，一天搞定一道LeetCode算法题

一、题目描述
难度： 中等
给你一个整数数组 nums ，和一个表示限制的整数 limit，请你返回最长连续子数组的长度，该子数组中的任意两个元素之间的绝对差必须小于或者等于 limit 。
如果不存在满足条件的子数组，则返回 0 。
提示：

1 &lt;= nums.length &lt;= 10^5
1 &lt;= nums[i] &lt;= 10^9
0 &lt;= limit &]]></description><category></category></item><item><title><![CDATA[【每日一题】  697. 数组的度]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/114183880</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/114183880</guid><author>Zack_tzh</author><pubDate>Sat, 27 Feb 2021 18:12:29 +0800</pubDate><description><![CDATA[【每日一题】  697. 数组的度

避免每日太过咸鱼，一天搞定一道LeetCode算法题

一、题目描述
难度： 简单
给定一个非空且只包含非负数的整数数组 nums，数组的度的定义是指数组里任一元素出现频数的最大值。
你的任务是在 nums 中找到与 nums 拥有相同大小的度的最短连续子数组，返回其长度。
提示：

nums.length 在1到 50,000 区间范围内。
nums[i] 是一个在 0 到 49,999 范围内的整数。

示例 1：
输入：[1, 2, 2, 3, 1]
输出：2
解]]></description><category></category></item><item><title><![CDATA[【每日一题】  1004. 最大连续1的个数 III]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/114118491</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/114118491</guid><author>Zack_tzh</author><pubDate>Fri, 26 Feb 2021 10:45:10 +0800</pubDate><description><![CDATA[【每日一题】  1004. 最大连续1的个数 III

避免每日太过咸鱼，一天搞定一道LeetCode算法题

一、题目描述
难度： 中等
给定一个由若干 0 和 1 组成的数组 A，我们最多可以将 K 个值从 0 变成 1 。
返回仅包含 1 的最长（连续）子数组的长度。
提示：

1 &lt;= A.length &lt;= 30000
1 &lt;= K &lt;= A.length

示例 1：
输入：A = [1,1,1,0,0,0,1,1,1,1,0], K = 2
输出：6
解释： 
[1,1]]></description><category></category></item><item><title><![CDATA[【每日一题】  995. K 连续位的最小翻转次数]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/114066818</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/114066818</guid><author>Zack_tzh</author><pubDate>Thu, 25 Feb 2021 10:54:29 +0800</pubDate><description><![CDATA[【每日一题】  995. K 连续位的最小翻转次数

避免每日太过咸鱼，一天搞定一道LeetCode算法题

一、题目描述
难度： 困难
在仅包含 0 和 1 的数组 A 中，一次 K 位翻转包括选择一个长度为 K 的（连续）子数组，同时将子数组中的每个 0 更改为 1，而每个 1 更改为 0。
返回所需的 K 位翻转的最小次数，以便数组没有值为 0 的元素。如果不可能，返回 -1。
提示：

1 &lt;= A.length &lt;= 30000
1 &lt;= K &lt;= A.length

示例]]></description><category></category></item><item><title><![CDATA[【每日一题】  992. K 个不同整数的子数组]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/114009805</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/114009805</guid><author>Zack_tzh</author><pubDate>Wed, 24 Feb 2021 09:28:25 +0800</pubDate><description><![CDATA[【每日一题】  992. K 个不同整数的子数组

避免每日太过咸鱼，一天搞定一道LeetCode算法题

一、题目描述
难度： 困难
给定一个正整数数组 A，如果 A 的某个子数组中不同整数的个数恰好为 K，则称 A 的这个连续、不一定独立的子数组为好子数组。
（例如，[1,2,3,1,2] 中有 3 个不同的整数：1，2，以及 3。）
返回 A 中好子数组的数目。
提示：

1 &lt;= A.length &lt;= 20000
1 &lt;= A[i] &lt;= A.length
1 &lt;= ]]></description><category></category></item><item><title><![CDATA[【每日一题】  978. 最长湍流子数组]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/113972032</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/113972032</guid><author>Zack_tzh</author><pubDate>Tue, 23 Feb 2021 09:37:25 +0800</pubDate><description><![CDATA[【每日一题】  978. 最长湍流子数组

避免每日太过咸鱼，一天搞定一道LeetCode算法题

一、题目描述
难度： 中等
当 A 的子数组 A[i], A[i+1], …, A[j] 满足下列条件时，我们称其为湍流子数组：
若 i &lt;= k &lt; j，当 k 为奇数时， A[k] &gt; A[k+1]，且当 k 为偶数时，A[k] &lt; A[k+1]；
或 若 i &lt;= k &lt; j，当 k 为偶数时，A[k] &gt; A[k+1] ，且当 k 为奇数时， A[k] &lt]]></description><category></category></item><item><title><![CDATA[【每日一题】  665. 非递减数列]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/113929048</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/113929048</guid><author>Zack_tzh</author><pubDate>Mon, 22 Feb 2021 09:34:56 +0800</pubDate><description><![CDATA[【每日一题】  665. 非递减数列

避免每日太过咸鱼，一天搞定一道LeetCode算法题

一、题目描述
难度： 简单
给你一个长度为n的整数数组，请你判断在 最多 改变1 个元素的情况下，该数组能否变成一个非递减数列。
我们是这样定义一个非递减数列的：对于数组中所有的i (0 &lt;= i &lt;= n-2)，总满足 nums[i] &lt;= nums[i + 1]。
提示：

1 &lt;= n &lt;= 10 ^ 4
- 10 ^ 5 &lt;= nums[i] &lt;= 10 ^ 5
]]></description><category></category></item><item><title><![CDATA[【每日一题】  1423. 可获得的最大点数]]></title><link>https://blog.youkuaiyun.com/Zack_tzh/article/details/113920380</link><guid>https://blog.youkuaiyun.com/Zack_tzh/article/details/113920380</guid><author>Zack_tzh</author><pubDate>Sun, 21 Feb 2021 17:01:28 +0800</pubDate><description><![CDATA[【每日一题】  1423. 可获得的最大点数

避免每日太过咸鱼，一天搞定一道LeetCode算法题

一、题目描述
难度： 中等
几张卡牌 排成一行，每张卡牌都有一个对应的点数。点数由整数数组 cardPoints 给出。
每次行动，你可以从行的开头或者末尾拿一张卡牌，最终你必须正好拿 k 张卡牌。
你的点数就是你拿到手中的所有卡牌的点数之和。
给你一个整数数组 cardPoints 和整数 k，请你返回可以获得的最大点数。
例如：
[2,3,4]，中位数是 3
[2,3]，中位数是 (2 + 3) / ]]></description><category></category></item></channel></rss>