<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[gghh2015的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/gghh2015</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; gghh2015]]></copyright><item><title><![CDATA[记一次线上问诊过程的心路历程]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/145343780</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/145343780</guid><author>gghh2015</author><pubDate>Sun, 26 Jan 2025 14:58:56 +0800</pubDate><description><![CDATA[体验一下当前的问诊新方式-线上问诊。]]></description><category></category></item><item><title><![CDATA[Homebrew使用]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/139865915</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/139865915</guid><author>gghh2015</author><pubDate>Fri, 21 Jun 2024 17:14:47 +0800</pubDate><description><![CDATA[具体参考：https://blog.youkuaiyun.com/m0_67402970/article/details/126434901。简介：https://www.jianshu.com/p/f4c9cf0733ea。2、查看安装路径：brew list maven。官网：https://brew.sh/]]></description><category></category></item><item><title><![CDATA[遇上了redis的大key与热key怎么办]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/128791622</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/128791622</guid><author>gghh2015</author><pubDate>Sun, 29 Jan 2023 17:06:27 +0800</pubDate><description><![CDATA[redis的大key和热key]]></description><category></category></item><item><title><![CDATA[MySQL灵魂拷问]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/128785861</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/128785861</guid><author>gghh2015</author><pubDate>Sun, 29 Jan 2023 10:50:53 +0800</pubDate><description><![CDATA[为什么不能使用in？什么情况导致全表扫描？数据库优化思路？]]></description><category></category></item><item><title><![CDATA[常见索引使用的数据结构及使用场景]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/127763562</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/127763562</guid><author>gghh2015</author><pubDate>Wed, 09 Nov 2022 09:45:17 +0800</pubDate><description><![CDATA[索引在软件中的应用]]></description><category></category></item><item><title><![CDATA[算法在索引中的应用]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/127758088</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/127758088</guid><author>gghh2015</author><pubDate>Tue, 08 Nov 2022 20:26:45 +0800</pubDate><description><![CDATA[其实这篇文章只是从Kafka索引入手，来讲述算法在工程上基于场景的灵活运用。单单是因为看源码的时候有感而写之。]]></description><category></category></item><item><title><![CDATA[@ConditionalOnProperty 和@Conditional注解作用]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/126942457</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/126942457</guid><author>gghh2015</author><pubDate>Mon, 19 Sep 2022 21:34:08 +0800</pubDate><description><![CDATA[spring常用注解]]></description><category></category></item><item><title><![CDATA[MySQL如何实现隔离级别-MVCC]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/126743243</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/126743243</guid><author>gghh2015</author><pubDate>Wed, 07 Sep 2022 12:40:21 +0800</pubDate><description><![CDATA[MySQL使用MVCC实现隔离级别]]></description><category></category></item><item><title><![CDATA[图解脏读、不可重复读、幻读]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/126736514</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/126736514</guid><author>gghh2015</author><pubDate>Wed, 07 Sep 2022 00:01:23 +0800</pubDate><description><![CDATA[图解脏读、不可重复读、幻读]]></description><category></category></item><item><title><![CDATA[什么是行锁、间隙锁]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/126734089</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/126734089</guid><author>gghh2015</author><pubDate>Tue, 06 Sep 2022 21:23:41 +0800</pubDate><description><![CDATA[什么是行锁、间隙锁]]></description><category></category></item><item><title><![CDATA[list按汉字首字母排序]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/124092520</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/124092520</guid><author>gghh2015</author><pubDate>Mon, 11 Apr 2022 10:10:57 +0800</pubDate><description><![CDATA[// 首字母排序
        if (CollectionUtils.isNotEmpty(areaInfoList)){
            Comparator comparator = Collator.getInstance(Locale.CHINA);
            Collections.sort(areaInfoList, (m1, m2) -&gt; {
                return comparator.compare(PinyinUtil...]]></description><category></category></item><item><title><![CDATA[dependencies 与dependencyManagement 的区别]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/115353924</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/115353924</guid><author>gghh2015</author><pubDate>Wed, 31 Mar 2021 16:34:22 +0800</pubDate><description><![CDATA[现在的项目基本上都是使用多module来管理的，这就涉及到一个问题，多module之间如何使用共同的第三方jar,或者说如何减少相同的jar导入的配置。


首先介绍
我们是这里引入了一个jar包之后，这里如果没有加上version版本号的话，那么maven就会去里找对应groupId和artifactId的jar,如果有就继承他，如果没有就会报错，这时候其实在我们配置的本地仓库中会真实的下载对应的jar包，这时候所有的子module都会默认继承这里面所有声明的jar



这里其实是起到管理依赖jar版本]]></description><category></category></item><item><title><![CDATA[git常用命令]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/109114313</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/109114313</guid><author>gghh2015</author><pubDate>Fri, 16 Oct 2020 12:54:53 +0800</pubDate><description><![CDATA[git顺利的提交代码流程
查看修改的文件
git status
为了谨慎检查一下代码
git diff
添加修改的文件，新加的文件也是直接add就好了
git add dirname1/filename1.py dirname2/filenam2.py
添加修改的日志
git commit -m “fixed:修改了上传文件的逻辑”
提交代码git push，如果提交失败的可能原因是本地代码库版本不是最新。
‘matching’ 参数是 Git 1.x 的默认行为，其意是如果你执行 git push 但没有]]></description><category></category></item><item><title><![CDATA[最通俗易懂明明白白的jvm内存结构]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/108563214</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/108563214</guid><author>gghh2015</author><pubDate>Sun, 13 Sep 2020 15:55:37 +0800</pubDate><description><![CDATA[引用：

https://blog.youkuaiyun.com/laomo_bible/article/details/83067810


            
                            
                                            Java内存结构是每个java程序员必须掌握理解的，这是Java的核心基础，对我们编写代码特别是并发编程时有很大帮助。由于Java程序是交由JVM执行的，所以我们在谈Java内存区域划分的时候事实上是指JVM]]></description><category></category></item><item><title><![CDATA[MySql时间处理]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/108239021</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/108239021</guid><author>gghh2015</author><pubDate>Wed, 26 Aug 2020 14:20:56 +0800</pubDate><description><![CDATA[update table_a set modified =  date_add(modified, interval 1 second) where created &gt;= ‘2020-08-25 00:00:00’ and created &lt; ‘2020-08-26 00:00:00’

]]></description><category></category></item><item><title><![CDATA[打印sql日志怎么在logback里配置]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/108168849</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/108168849</guid><author>gghh2015</author><pubDate>Sat, 22 Aug 2020 21:22:54 +0800</pubDate><description><![CDATA[MyBatis 世界上流行最广泛的SQL 映射框架，由Clinton Begin 在2002 年创建，iBATIS一词来源于“internet”和“abatis”的组合，是一个基于Java的持久层框架。其后，捐献给了Apache基金会，成立了iBatis 项目。2010 年5 月，将代码库迁致Google Code，并更名为MyBatis。（导包名：ibatis）
MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置]]></description><category></category></item><item><title><![CDATA[分布式事务]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/107283692</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/107283692</guid><author>gghh2015</author><pubDate>Sun, 12 Jul 2020 20:27:06 +0800</pubDate><description><![CDATA[学习孙玄老师的公开课，企业级分布式事务，笔记。
使用场景
一次请求涉及数据分布多个存储系统：

多个DB；
DB和Redis；
DB和MQ；
…

业务场景容忍度：


购买商品，商品、订单、支付；不能失败，必须用分布式事务。
–金融场景，要么都成功，要么都失败
–要求最终一致性


朋友圈发布信息，发布信息，朋友圈小红点；允许失败，对用户伤害不大，用分布式事务，那不是给自己找困难吗？
– 社交场景
–	BASE理论即可满足（CAP理论不太适合，最终还是要数据一致性）


分布式事务的本质
以购买商品为例：]]></description><category></category></item><item><title><![CDATA[将本地项目上传至 Github]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/106639630</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/106639630</guid><author>gghh2015</author><pubDate>Tue, 09 Jun 2020 13:50:06 +0800</pubDate><description><![CDATA[将本地项目上传至 Github欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题，有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能，丰富你的文章UML 图表FLowchart流程图导出与导入导出导入
欢迎使用Markdown编辑器
你好！ 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何]]></description><category></category></item><item><title><![CDATA[ApplicationContextAware使用理解]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/104605879</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/104605879</guid><author>gghh2015</author><pubDate>Mon, 02 Mar 2020 10:02:37 +0800</pubDate><description><![CDATA[问题背景
在我们的web程序中，用spring来管理各个实例(bean), 有时在程序中为了使用已被实例化的bean, 通常会用到这样的代码：
ApplicationContext appContext = new ClassPathXmlApplicationContext(“applicationContext-common.xml”);
AbcService abcService = (Ab...]]></description><category></category></item><item><title><![CDATA[DATETIME与TIMESTAMP的区别，该不该使用自动更新]]></title><link>https://blog.youkuaiyun.com/gghh2015/article/details/103561823</link><guid>https://blog.youkuaiyun.com/gghh2015/article/details/103561823</guid><author>gghh2015</author><pubDate>Mon, 16 Dec 2019 14:11:31 +0800</pubDate><description><![CDATA[今天遇到一个问题，明明数据有更新，update_time字段却还停留在创建数据的时候。
按常理来说这个字段应该是自动更新的才对。
查了一下表结构，update_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
发现update_time字段的类型是datetime
由此牵扯出两个问题，（1）timestamp与datetime的区别；（2）CURRE...]]></description><category></category></item></channel></rss>