<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[五维空间]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Alexanderlc</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Alexanderlc]]></copyright><item><title><![CDATA[Dubbo线程池满导致宕机的案例分析解决]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/124168428</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/124168428</guid><author>Alexanderlc</author><pubDate>Thu, 14 Apr 2022 16:16:15 +0800</pubDate><description><![CDATA[1 背景概述

线上事故：在做活动促销的时候，交易中台的商品服务发生了个别节点的宕机而此时间段内QPS并没有超过告警配置的线程数阈值1500。



于是决定做一次压测，当对自己的商品服务做压测20000个请求时，从监控看到客户端线程池(DubboClientHandler)飙升到800左右、而服务端线程池(DubboServerHandler)只有70左右，抛出线程已耗尽的异常。



当前配置如下：

1）dubbo版本为一直在用的2.5.5版本。

2）当前线程池配置为cached模式的ThreadP]]></description><category></category></item><item><title><![CDATA[Docker启动失败报错Failed to start Docker Application Container Engine解决方案]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/124084142</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/124084142</guid><author>Alexanderlc</author><pubDate>Sun, 10 Apr 2022 20:16:02 +0800</pubDate><description><![CDATA[在给一台腾讯云机器安装docker后发现无法启动，总是报错Failed to start Docker Application Container Engine，解决思路分享一下，以免各位童鞋踩坑。



1 安装Docker

说明：本文仅针对Linux CentOS 7环境下进行讲解，Mac版本请在官方下载Docker.dmg安装(留意：Macbook 没有yum、systemctl、service等Linux系统的命令，建议下载dmg桌面版Docker使用、配置方便。当然也可以brew install]]></description><category></category></item><item><title><![CDATA[多级缓存分析篇(三) Spring本地缓存源码分析]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/122657646</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/122657646</guid><author>Alexanderlc</author><pubDate>Sun, 23 Jan 2022 23:20:04 +0800</pubDate><description><![CDATA[上篇讲了Redis的分布式锁，这篇讲下Spring本地缓存策略，对源码稍作分析，以便设计多级缓存了解需要注意的细节坑，比如本地缓存和redis缓存的失效时间冲突等。



1 spring-data系列说明

日常开发中，一般都会需要框架对各种主流数据源的支持，spring官方就是利用了仓储动态代理机制，基于AbstractFactory(抽象工厂)、Adapter(适配器)、Template(模板)、Strategy(策略)、Visitor(访问者)多种设计模式，提供了spring-data-*这样一..]]></description><category></category></item><item><title><![CDATA[多级缓存分析篇(二) 常用分布式锁分析]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/122657456</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/122657456</guid><author>Alexanderlc</author><pubDate>Sun, 23 Jan 2022 21:23:37 +0800</pubDate><description><![CDATA[上篇主要讲了日常经常使用的哪些redis包及其配置的差异，这篇对基于redis的分布式锁，主要分享下自定义锁和redisson锁的使用和分析。



1.(自定义)Redis分布式锁

对于redis来说，非常适合做分布式锁来控制各个服务并发请求下造成的变量不一致、会串的问题。zookeeper锁其实也可以但不是很推荐，毕竟zk客户端是有某节点宕机自愈后、数据分发不同步的问题。

Redis锁的原理其实就是SETNX的原子性控制，建议一定要 设定超时时间，防止资源竞争过于激烈导致线程长时间获取不到锁、发生.]]></description><category></category></item><item><title><![CDATA[多级缓存分析篇(一) 多种Redis Client配置异同]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/122656241</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/122656241</guid><author>Alexanderlc</author><pubDate>Sun, 23 Jan 2022 21:16:52 +0800</pubDate><description><![CDATA[1 导言

 我们常常需要在项目里考虑使用Redis来做一些数据的缓存、比如存储较为静态化的数据或设计二级缓存来减少API接口QPS过大对服务端的压力、避免对后台数据库造成冲击甚至压垮。Redis是简单的KV分布式数据库，很好的避免了单机的Java锁不能解决的问题，所以很受青睐。因此，对Redis和本地缓存的理解非常重要，开发人员日常可能偏重于使用，缺乏分析原理性。因此，考虑写这个篇章分享经验所得，期望能给到参考。

 官方文档redis中文官方网站还是首要推荐大家去学习，只有理解了原理，才能融会贯通...]]></description><category></category></item><item><title><![CDATA[java8 新特性集锦和心得]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/85274233</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/85274233</guid><author>Alexanderlc</author><pubDate>Thu, 27 Dec 2018 12:03:51 +0800</pubDate><description><![CDATA[ java8问世已经好几年了，但很多程序猿/媛小伙伴们都还没普遍在项目里去使用起来，更多的可能还是缺少了解，究其根源，我想是因为国内没有能普及到程序员层面的活动或大会去推广，目前每年举办的各类活动或大会大都是针对高级架构师级别的，比如极客邦联合InfoQ举办的ArchSummit等等，却很少有针对程序员层面的沙龙。

好了，废话不多说了，这里分享下收集的java8几个重要特性。

一.全局概览

...]]></description><category></category></item><item><title><![CDATA[Redis集群环境下的分布式事务问题探究]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/85181115</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/85181115</guid><author>Alexanderlc</author><pubDate>Sat, 22 Dec 2018 01:43:26 +0800</pubDate><description><![CDATA[ 

  近日，从部署在PaaS平台上的java项目日志中发现每次前台按钮触发后会抛出redis释放锁的自定义的异常信息，回查代码发现是由于使用了自定义的Redis分布式锁(RedisLock工具类)过程中，在自定义的释放锁的方法中本打算使用watch()、multi()和exec()方法组成的事务来实现乐观锁控制(Redis事务没有回滚操作)，结果发现并不可以直接用，否则会在PaaS平台的Red...]]></description><category></category></item><item><title><![CDATA[JPA实践&多种场景应用集锦]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/80154872</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/80154872</guid><author>Alexanderlc</author><pubDate>Tue, 01 May 2018 11:28:29 +0800</pubDate><description><![CDATA[JPA官方地址：JPA语法规则：JPA框架在进行方法名解析时，会先把方法名多余的前缀截取掉，比如 find、findBy、read、readBy、get、getBy，然后对剩下部分进行解析。并且如果方法的最后一个参数是 Sort 或者 Pageable 类型，也会提取相关的信息，以便按规则进行排序或者分页查询。 And — 等价于 SQL 中的 and 关键字，比如 findByUsernameA...]]></description><category></category></item><item><title><![CDATA[正则表达式介绍及使用]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/6702723</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/6702723</guid><author>Alexanderlc</author><pubDate>Fri, 19 Aug 2011 17:44:01 +0800</pubDate><description><![CDATA[ 

 1.什么是正则表达式

基本说来，正则表达式是一种用来描述一定数量文本的模式。Regex代表Regular Express。本文将用&amp;lt;&amp;lt;regex&amp;gt;&amp;gt;来表示一段具体的正则表达式。

一段文本就是最基本的模式，简单的匹配相同的文本。

 2.不同的正则表达式引擎

正则表达式引擎是一种可以处理正则表达式的软件。通常，引擎是更大的应用程序的一部分。在软件世界，不同的正则...]]></description><category></category></item><item><title><![CDATA[C#如何获取网页内容]]></title><link>https://blog.youkuaiyun.com/Alexanderlc/article/details/6702665</link><guid>https://blog.youkuaiyun.com/Alexanderlc/article/details/6702665</guid><author>Alexanderlc</author><pubDate>Fri, 19 Aug 2011 17:33:03 +0800</pubDate><description><![CDATA[我们开发中经常会遇到程序需要获取网页的html代码来取出一些需要的东西，那么.net微软的库中就已经为我们准备了很多方式，如下例：
 
using System.Net;
using System.IO;
using System.Text;]]></description><category></category></item></channel></rss>