Nicksxs's Blog https://nicksxs.me/icon.png What hurts more, the pain of hard work or the pain of regret? 2024-10-06T13:42:37.286Z https://nicksxs.me/ Nicksxs Hexo 基于Caddy的快速反向代理 https://nicksxs.me/2024/10/06/%E5%9F%BA%E4%BA%8ECaddy%E7%9A%84%E5%BF%AB%E9%80%9F%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86/ 2024-10-06T13:41:57.000Z 2024-10-06T13:42:37.286Z <p>首先是安装Caddy,</p> <figure class="highlight shell"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span 小技巧-用iptables统计网速占用 https://nicksxs.me/2024/09/28/%E5%B0%8F%E6%8A%80%E5%B7%A7-%E7%94%A8iptables%E7%BB%9F%E8%AE%A1%E7%BD%91%E9%80%9F%E5%8D%A0%E7%94%A8/ 2024-09-28T10:16:35.000Z 2024-09-28T10:17:27.947Z <p>目前我在家里用的路由器是个装了ImmortalWrt的NX30 Pro路由器,由于内存只有256兆,默认没带网速统计和限制网速的插件,对于网络速度限制就有点困难,刚好这次网上找到了一个可以用iptables统计网速的脚本,简单记录下</p> <figure 小技巧之-安卓终端工具Termux访问手机文件 https://nicksxs.me/2024/09/22/%E5%B0%8F%E6%8A%80%E5%B7%A7%E4%B9%8B-%E5%AE%89%E5%8D%93%E7%BB%88%E7%AB%AF%E5%B7%A5%E5%85%B7Termux%E8%AE%BF%E9%97%AE%E6%89%8B%E6%9C%BA%E6%96%87%E4%BB%B6/ 2024-09-22T07:10:14.000Z 2024-09-22T07:10:14.824Z <p>Termux是安卓下一个终端工具,一开始以为就是一些极客的高端玩具,在安卓下编程用,实际的实用性不太强,直到之前稍微研究了下,还真的是个神器,这个神器的原因在于三方面<br>第一点,它其实不只是个终端工具,而是个类似于iterm2 + 用netty实现一个简单的http server-深入理解下 https://nicksxs.me/2024/09/15/%E7%94%A8netty%E5%AE%9E%E7%8E%B0%E4%B8%80%E4%B8%AA%E7%AE%80%E5%8D%95%E7%9A%84http-server-%E6%B7%B1%E5%85%A5%E7%90%86%E8%A7%A3%E4%B8%8B/ 2024-09-15T02:52:35.000Z 2024-09-15T02:52:35.628Z <p>上次用netty写的一个玩具http server,发现了一个问题,为啥channelRead0方法会被调用两次,这里我们来研究下<br>我们在收到http请求的时候需要经过的一个必要的过程就是编解码,而这里我们用的是 用netty实现一个简单的http server https://nicksxs.me/2024/09/08/%E7%94%A8netty%E5%AE%9E%E7%8E%B0%E4%B8%80%E4%B8%AA%E7%AE%80%E5%8D%95%E7%9A%84http-server/ 2024-09-08T08:43:58.000Z 2024-09-08T08:44:48.505Z <p>netty是java网络框架中非常有名,因为它把各种网络类型,阻塞非阻塞的都做了上层的抽象,非常值得学习,这边就先以一个简单的http server来做下实践,<br>主体的server代码</p> <figure class="highlight 一个Java类型的小问题记录 https://nicksxs.me/2024/09/01/%E4%B8%80%E4%B8%AAJava%E7%B1%BB%E5%9E%8B%E7%9A%84%E5%B0%8F%E9%97%AE%E9%A2%98%E8%AE%B0%E5%BD%95/ 2024-09-01T01:00:09.000Z 2024-09-01T01:02:51.406Z <p>最近发现一个小问题,感觉挺有意思,我们来看下代码</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span class="line">1</span><br><span 聊下apollo配置中心的接入 https://nicksxs.me/2024/08/25/%E8%81%8A%E4%B8%8Bapollo%E9%85%8D%E7%BD%AE%E4%B8%AD%E5%BF%83%E7%9A%84%E6%8E%A5%E5%85%A5/ 2024-08-25T14:17:48.000Z 2024-08-31T06:23:55.929Z <p>很多技术栈在优化过程中都会有更便捷的接入方式,或者接入demo,这次想拿apollo来对比一些例如向量数据库的部署方式,对我说的就是milvus,<br>apollo如果生产环境部署完全不推荐用这种方式,但是如果为了做个实验,研究下源码还是很方便的,当然前提是有docker 体验下Java 21的虚拟线程-协程 https://nicksxs.me/2024/08/18/%E4%BD%93%E9%AA%8C%E4%B8%8BJava-21%E7%9A%84%E8%99%9A%E6%8B%9F%E7%BA%BF%E7%A8%8B-%E5%8D%8F%E7%A8%8B/ 2024-08-18T05:21:57.000Z 2024-08-18T05:21:57.716Z <p>Java在后续版本中添加了虚拟线程,也是类似于php跟go的协程,对应操作系统的线程是在线程基础上模拟了一层子线程的逻辑,因为减少了操作系统的线程上下文切换开销,能够在常规业务场景带了比较大的性能提升,但也并非银弹,不能包治百病<br>首先安装下jdk 21 版本,需要用 一个经典的fastjson反序列化问题记录 https://nicksxs.me/2024/08/11/%E4%B8%80%E4%B8%AA%E7%BB%8F%E5%85%B8%E7%9A%84fastjson%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E9%97%AE%E9%A2%98%E8%AE%B0%E5%BD%95/ 2024-08-11T11:09:55.000Z 2024-08-24T11:40:01.500Z <p>最近碰到一个问题,因为一些干扰因素导致排查的时候走了一段歧路,<br>报错信息是</p> <figure class="highlight java"><table><tr><td class="gutter"><pre><span 使用milvus和towhee实现简陋版的以图搜图 https://nicksxs.me/2024/08/04/%E4%BD%BF%E7%94%A8milvus%E5%92%8Ctowhee%E5%AE%9E%E7%8E%B0%E7%AE%80%E9%99%8B%E7%89%88%E7%9A%84%E4%BB%A5%E5%9B%BE%E6%90%9C%E5%9B%BE/ 2024-08-04T09:49:14.000Z 2024-08-04T09:49:14.683Z <p>上次我们尝试用 <code>towhee</code> 跟 <code>milvus</code> 实现了图片的向量化,那么顺势我们就能在这个基础上实现以图搜图<br>首先我们找一些图片,<br><img 尝试下图片向量化 https://nicksxs.me/2024/07/28/%E5%B0%9D%E8%AF%95%E4%B8%8B%E5%9B%BE%E7%89%87%E5%90%91%E9%87%8F%E5%8C%96/ 2024-07-28T08:41:03.000Z 2024-08-04T09:48:43.528Z <p>之前觉得谷歌的以图搜图很厉害,现在似乎这个路径还毕竟清晰了,首先要有图片库,把它们向量化以后存储起来,然后对于目标图片也做向量化,再做检索<br>那么我们先来做重要的这一步,图片的向量化,因为向量化以后就跟图片没关系了,直接用前面讲到的向量的近似搜索就可以做到以图搜图了<b 向量数据库 Milvus 安装初体验 https://nicksxs.me/2024/07/21/%E5%90%91%E9%87%8F%E6%95%B0%E6%8D%AE%E5%BA%93-Milvus-%E5%AE%89%E8%A3%85%E5%88%9D%E4%BD%93%E9%AA%8C/ 2024-07-21T12:07:11.000Z 2024-07-21T12:08:19.251Z <p>之前做了个简单的铺垫,作为大模型应用技术领域非常重要的一环,向量数据库我们在前面有做一些引导性的介绍,其中的索引技术,<br>而在众多向量数据库比较有代表性的 Milvus,这边我们来尝试安装 Milvus 聊一下 Linux 中 dmesg 跟 journal 的差别 https://nicksxs.me/2024/07/14/%E8%81%8A%E4%B8%80%E4%B8%8B-Linux-%E4%B8%AD-dmesg-%E8%B7%9F-journal-%E7%9A%84%E5%B7%AE%E5%88%AB/ 2024-07-14T14:24:50.000Z 2024-07-14T14:25:27.484Z <p>最近在迁移一个自己用的mysql实例,发现用 portainer 安装 mysql 一直失败,还以为是配置了自定义端口映射被系统防火墙限制,但后面不映射端口也是不行,一开始查看 聊一下 Spring 的 SmartLifecycle 使用 https://nicksxs.me/2024/07/07/%E8%81%8A%E4%B8%80%E4%B8%8B-Spring-%E7%9A%84-SmarLifecycle-%E4%BD%BF%E7%94%A8/ 2024-07-07T09:55:22.000Z 2024-07-07T09:56:06.843Z <p>最近在学习过程中碰到一个比较有意思的Spring特性,就是 SmartLifecycle ,这个可以很轻松的融合进 Spring 生命周期</p> <figure class="highlight java"><table><tr><td 介绍一下Java的BiFunction https://nicksxs.me/2024/06/30/%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8BJava%E7%9A%84BiFunction/ 2024-06-30T14:17:35.000Z 2024-06-30T14:18:06.043Z <p>java的函数式接口是java8引入的很重要的特性,也让日常代码有了比较大的风格转变<br>这里介绍下BiFunction,<br>BiFunction的代码很短</p> <figure class="highlight java"><table><tr><td 向量数据库学习-介绍一下HNSW算法 https://nicksxs.me/2024/06/23/%E4%BB%8B%E7%BB%8D%E4%B8%80%E4%B8%8BHNSW%E7%AE%97%E6%B3%95/ 2024-06-23T14:50:50.000Z 2024-06-23T15:12:40.321Z <p>结合AI写的一篇HNSW的介绍文章,算是向量数据库中比较核心的算法</p> <h2 id="1-引言"><a href="#1-引言" class="headerlink" title="1. 引言"></a>1. NX30Pro 刷成 Openwrt-ImmortalWrt 后作为有线中继的配置方法 https://nicksxs.me/2024/06/16/NX30Pro-%E5%88%B7%E6%88%90-Openwrt-ImmortalWrt-%E5%90%8E%E4%BD%9C%E4%B8%BA%E6%9C%89%E7%BA%BF%E4%B8%AD%E7%BB%A7%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%B9%E6%B3%95/ 2024-06-16T14:45:23.000Z 2024-06-16T14:47:48.302Z <p>因为买了两个NX30Pro,主要是奔着可以刷Openwrt,然后把两个都刷成了ImmortalWrt,结果发现要作为有线中继的话设置还有点麻烦,所以记录下<br>首先要设置个与主路由相同网段的静态地址,方便管理<br>在网络-LAN-基本设置-协议设置成“静态地址”<br> 向量数据库学习基础之跳表 https://nicksxs.me/2024/06/16/%E5%90%91%E9%87%8F%E6%95%B0%E6%8D%AE%E5%BA%93%E5%AD%A6%E4%B9%A0%E5%9F%BA%E7%A1%80%E4%B9%8B%E8%B7%B3%E8%A1%A8/ 2024-06-16T14:30:37.000Z 2024-06-16T14:30:37.102Z <p>在学习向量数据库的时候,发现检索的算法 <code>HNSW</code> 给局域网中的Ubuntu固定下ip https://nicksxs.me/2024/06/02/%E7%BB%99%E5%B1%80%E5%9F%9F%E7%BD%91%E4%B8%AD%E7%9A%84Ubuntu%E5%9B%BA%E5%AE%9A%E4%B8%8Bip/ 2024-06-02T15:32:18.000Z 2024-06-02T15:32:28.739Z <p>将一个小点,在局域网中包括类似于homelab的或者仅仅只是搭一个用来当实验环境的,在局域网内机器比较少的时候大部分DHCP会给分配相同的ip,但是这不是一定的,当机器比较多,并且上下线比较频繁时就会出现ip地址变动,这对于一些使用场景比较讨厌,所以我想把ip固定下来,先简 Headscale渐入佳境补充篇-自定义中转derper的证书问题 https://nicksxs.me/2024/05/26/Headscale%E6%B8%90%E5%85%A5%E4%BD%B3%E5%A2%83%E8%A1%A5%E5%85%85%E7%AF%87-%E8%87%AA%E5%AE%9A%E4%B9%89%E4%B8%AD%E8%BD%ACderper%E7%9A%84%E8%AF%81%E4%B9%A6%E9%97%AE%E9%A2%98/ 2024-05-26T15:32:56.000Z 2024-05-26T15:32:56.056Z <p>之前自定义部署的derper在Mac端和Windows使用时没啥问题,但是在我想作为网关的Armbian小机器上一直会报 “x509: certificate signed by unknown