Nicksxs's Blog https://nicksxs.me/icon.png What hurts more, the pain of hard work or the pain of regret? 2020-10-18T15:15:50.458Z https://nicksxs.me/ Nicksxs Hexo 在老丈人家的小工记五 https://nicksxs.me/2020/10/18/%E5%9C%A8%E8%80%81%E4%B8%88%E4%BA%BA%E5%AE%B6%E7%9A%84%E5%B0%8F%E5%B7%A5%E8%AE%B0%E4%BA%94/ 2020-10-18T15:14:52.000Z 2020-10-18T15:15:50.458Z <p>终于回忆起来了,年纪大了写这种东西真的要立马写,不然很容易想不起来,那天应该是 9 月 12 日,也就是上周六,因为我爸也去了,而且娘亲(丈母娘,LD Leetcode 2 Add Two Numbers 题解分析 https://nicksxs.me/2020/10/11/Leetcode-2-Add-Two-Numbers-%E9%A2%98%E8%A7%A3%E5%88%86%E6%9E%90/ 2020-10-11T15:22:45.000Z 2020-10-11T15:23:51.554Z <p>又 roll 到了一个以前做过的题,不过现在用 Java 也来写一下,是 easy 级别的,所以就简单说下</p> <h2 id="简要介绍"><a href="#简要介绍" class="headerlink" mybatis 的缓存是怎么回事 https://nicksxs.me/2020/10/03/mybatis-%E7%9A%84%E7%BC%93%E5%AD%98%E6%98%AF%E6%80%8E%E4%B9%88%E5%9B%9E%E4%BA%8B/ 2020-10-03T14:43:13.000Z 2020-10-03T14:43:13.750Z <p>Java 真的是任何一个中间件,比较常用的那种,都有很多内容值得深挖,比如这个缓存,慢慢有过一些感悟,比如如何提升性能,缓存无疑是一大重要手段,最底层开始 CPU 在老丈人家的小工记四 https://nicksxs.me/2020/09/26/%E5%9C%A8%E8%80%81%E4%B8%88%E4%BA%BA%E5%AE%B6%E7%9A%84%E5%B0%8F%E5%B7%A5%E8%AE%B0%E5%9B%9B/ 2020-09-26T15:48:05.000Z 2020-09-26T15:48:05.568Z <h2 id="小工记四"><a href="#小工记四" class="headerlink" Leetcode 3 Longest Substring Without Repeating Characters 题解分析 https://nicksxs.me/2020/09/20/Leetcode-3-Longest-Substring-Without-Repeating-Characters-%E9%A2%98%E8%A7%A3%E5%88%86%E6%9E%90/ 2020-09-20T13:40:23.000Z 2020-09-20T13:45:17.936Z <p>又做了个题,看记录是以前用 C++写过的,现在捋一捋思路,用 Java 再写了一下,思路还是比较清晰的,但是边界细节处理得比较差</p> <h2 id="简要介绍"><a href="#简要介绍" class="headerlink" 在老丈人家的小工记三 https://nicksxs.me/2020/09/13/%E5%9C%A8%E8%80%81%E4%B8%88%E4%BA%BA%E5%AE%B6%E7%9A%84%E5%B0%8F%E5%B7%A5%E8%AE%B0%E4%B8%89/ 2020-09-13T15:37:21.000Z 2020-09-13T15:39:01.118Z <h2 id="小工记三"><a href="#小工记三" class="headerlink" mybatis 的 $ 和 # 是有啥区别 https://nicksxs.me/2020/09/06/mybatis-%E7%9A%84-%E5%92%8C-%E6%98%AF%E6%9C%89%E5%95%A5%E5%8C%BA%E5%88%AB/ 2020-09-06T15:14:50.000Z 2020-09-06T15:18:32.309Z <p>这个问题也是面试中常被问到的,就抽空来了解下这个,跳过一大段前面初始化的逻辑,<br>对于一条<code>select * from t1 where id = #{id}</code>这样的 sql,在初始化扫描 mapper 的xml文件的时候会根据是否是 这周末我又在老丈人家打了天小工 https://nicksxs.me/2020/08/30/%E8%BF%99%E5%91%A8%E6%9C%AB%E6%88%91%E5%8F%88%E5%9C%A8%E8%80%81%E4%B8%88%E4%BA%BA%E5%AE%B6%E6%89%93%E4%BA%86%E5%A4%A9%E5%B0%8F%E5%B7%A5/ 2020-08-30T15:22:57.000Z 2020-08-30T15:31:08.939Z <p>因为活实在比较多,也不太好叫大工(活比较杂散),相比上一次我跟 LD Filter, Interceptor, Aop, 啥, 啥, 啥? 这些都是啥? https://nicksxs.me/2020/08/22/Filter-Intercepter-Aop-%E5%95%A5-%E5%95%A5-%E5%95%A5-%E8%BF%99%E4%BA%9B%E9%83%BD%E6%98%AF%E5%95%A5/ 2020-08-22T12:44:32.000Z 2020-08-23T15:10:23.155Z <p>本来是想取个像现在那些公众号转了又转的文章标题,”面试官再问你xxxxx,就把这篇文章甩给他看”这种标题,但是觉得实在太 low 周末我在老丈人家打了天小工 https://nicksxs.me/2020/08/16/%E5%91%A8%E6%9C%AB%E6%88%91%E5%9C%A8%E8%80%81%E4%B8%88%E4%BA%BA%E5%AE%B6%E6%89%93%E4%BA%86%E5%A4%A9%E5%B0%8F%E5%B7%A5/ 2020-08-16T15:01:09.000Z 2020-08-16T15:48:08.194Z <p>这周回家提前约好了要去老丈人家帮下忙,因为在翻修下老房子,活不是特别整的那种,所以大部分都是自己干,或者找个大工临时干几天(我们这那种比较专业的泥工匠叫做大工),像我这样去帮忙的,就是干点小工(把给大工帮忙的,干些偏体力活的叫做小工)的活。从大学毕业以后真的蛮少帮家里干活了 Linux 下 grep 命令的一点小技巧 https://nicksxs.me/2020/08/06/Linux-%E4%B8%8B-grep-%E5%91%BD%E4%BB%A4%E7%9A%84%E4%B8%80%E7%82%B9%E5%B0%8F%E6%8A%80%E5%B7%A7/ 2020-08-06T09:07:17.000Z 2020-08-06T13:30:26.239Z <p>用了比较久的 grep 命令,其实都只是用了最最基本的功能来查日志,</p> <p>譬如</p> <figure class="highlight shell"><table><tr><td class="gutter"><pre><span 聊聊 Java 自带的那些*逆天*工具 https://nicksxs.me/2020/08/02/%E8%81%8A%E8%81%8A-Java-%E8%87%AA%E5%B8%A6%E7%9A%84%E9%82%A3%E4%BA%9B%E9%80%86%E5%A4%A9%E5%B7%A5%E5%85%B7/ 2020-08-02T13:13:59.000Z 2020-09-13T15:40:17.563Z <p>原谅我的标题党,其实这些工具的确很厉害,之前其实介绍过一点相关的,是从我一次问题排查的过程中用到的,但是最近又有碰到一次排查问题,发现其实用 idea 直接 <code>dump thread</code> 是不现实的,毕竟服务器环境的没法这么操作,那就得用 Java 我是如何走上跑步这条不归路的 https://nicksxs.me/2020/07/26/%E6%88%91%E6%98%AF%E5%A6%82%E4%BD%95%E8%B5%B0%E4%B8%8A%E8%B7%91%E6%AD%A5%E8%BF%99%E6%9D%A1%E4%B8%8D%E5%BD%92%E8%B7%AF%E7%9A%84/ 2020-07-26T15:32:55.000Z 2020-07-26T15:34:01.230Z <p>这周因为没有准备技术方面的内容加之之前有想分享下我和跑步的一些事情,我从小学开始就是个体育渣,因为体重大非常胖,小学的时候要做仰卧起坐,基本是一个都起不来,然后那时候跑步也是要我命那种,跟另外一个比较胖的同学在跑步队尾苟延残喘,只有立定跳远还行。</p> <p>时光飞逝,我 聊聊 RocketMQ 的 Broker 源码 https://nicksxs.me/2020/07/19/%E8%81%8A%E8%81%8A-RocketMQ-%E7%9A%84-Broker-%E6%BA%90%E7%A0%81/ 2020-07-19T13:48:48.000Z 2020-07-19T13:49:39.193Z <p>broker 的启动形式有点类似于 NameServer,都是服务类型的,跟 Consumer 差别比较大,</p> <p>首先是org.apache.rocketmq.broker.BrokerStartup中的 main 2020年中总结 https://nicksxs.me/2020/07/11/2020%E5%B9%B4%E4%B8%AD%E6%80%BB%E7%BB%93/ 2020-07-11T15:20:38.000Z 2020-07-11T15:21:22.299Z <p>很快2020 聊一下 RocketMQ 的 NameServer 源码 https://nicksxs.me/2020/07/05/%E8%81%8A%E4%B8%80%E4%B8%8B-RocketMQ-%E7%9A%84-NameServer-%E6%BA%90%E7%A0%81/ 2020-07-05T13:01:47.000Z 2020-07-05T13:03:29.036Z <p>前面介绍了,nameserver相当于dubbo的注册中心,用与管理broker,broker会在启动的时候注册到nameserver,并且会发送心跳给namaserver,nameserver负责保存活跃的broker,包括master和slave,同时保存topic和t 聊一下 RocketMQ 的 DefaultMQPushConsumer 源码 https://nicksxs.me/2020/06/26/%E8%81%8A%E4%B8%80%E4%B8%8B-RocketMQ-%E7%9A%84-Consumer/ 2020-06-26T14:21:20.000Z 2020-07-05T13:03:52.441Z <p>首先看下官方的小 demo</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span 介绍一下 RocketMQ https://nicksxs.me/2020/06/21/%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8B-RocketMQ/ 2020-06-21T13:25:22.000Z 2020-06-21T13:35:12.826Z <p>说起消息队列一般Web后端做过一段时间开发的肯定会用过,在前司的时候用的是改良版的 NSQ,有点像 NOSQL 的简写版🙄,其实是个go 语言写的消息队列,<a href="https://github.com/nsqio/nsq" target="_blank" 聊聊一次 brew update 引发的血案 https://nicksxs.me/2020/06/13/%E8%81%8A%E8%81%8A%E4%B8%80%E6%AC%A1-brew-update-%E5%BC%95%E5%8F%91%E7%9A%84%E8%A1%80%E6%A1%88/ 2020-06-13T14:28:56.000Z 2020-06-13T14:31:35.522Z <p>熟悉我的人(谁熟悉你啊🙄)知道我以前写过 PHP,虽然现在在工作中没用到了,但是自己的一些小工具还是会用 PHP 来写,但是在 Mac 碰到了一个环境相关的问题,因为我也是个更新狂魔,用了 brew 之后因为 gfw 聊聊 Dubbo 的 SPI 续之自适应拓展 https://nicksxs.me/2020/06/06/%E8%81%8A%E8%81%8A-Dubbo-%E7%9A%84-SPI-%E7%BB%AD%E4%B9%8B%E8%87%AA%E9%80%82%E5%BA%94%E6%8B%93%E5%B1%95/ 2020-06-06T14:39:38.000Z 2020-06-06T14:48:09.324Z <h2 id="Adaptive"><a href="#Adaptive" class="headerlink" title="Adaptive"></a>Adaptive</h2><p>这个应该是 Dubbo SPI