原文地址https://blog.fanscore.cn/a/61/ 1.wssh 1.1开发背景 公司内部的发布系统提供一个连接到k8spod的web终端,可以在网页中连接到k8spod内。实现原理大概为通过websocket协议代理了k8spodssh,然后在前端通过xterm.js+websocket实现了web终端的效果。 但是每次需要进pod内调试点东西都需要打开浏览器进到发布系统里一通点点点才能进入,而发布系统页面加载的又非常慢,所以效率非常低。 因此使用Rust实现了一个命令行工具,可以在本机终端中通过命令连接到k8spod,实现了类似于sshclient的效果。这样一来不仅简化...

  7HcQsiUTDvMA   11天前   42   0   0 Rust

原文地址:https://blog.fanscore.cn/a/51/ 背景 最近接到一个需求,开发中使用了redisgeoradius命令取附近给定距离内的点。完工后对服务进行压测后发现georadius的性能比预期要差,因此我分析了georadius的源码,并对原始的实现方案进行了优化,总结成了本文。 我们生产环境使用的redis版本为4.0.13,因此本文redis源码皆为4.0.13版本的源码 redisgeo原理 往redis中添加坐标的命令是GEOADDkeylongitudelatitudemember[longitudelatitudemember...],实际上redis...

  7HcQsiUTDvMA   2023年11月01日   150   0   0 NoSQL

原文地址:https://blog.fanscore.cn/a/53/ 1.前言 本文是与世界分享我刚编的转发ntunnel_mysql.php的工具的后续,之前的实现有些拉胯,这次重构了下。需求背景是为了在本地macbook上通过开源的mysql可视化客户端(dbeaver、SequelAce等)访问我司测试环境的mysql,整个测试环境的如图所示: 那么就有以下几种方式: 客户端直连mysqlPass测试环境mysql只提供了内网ip,只允许测试环境上的机器连接,因此不可行 通过ssh隧道连接Pass测试环境机器倒是可以ssh上去,但是只能通过堡垒机接入,且堡垒机不允许ssh隧道,因此...

  7HcQsiUTDvMA   2023年11月01日   201   0   0 MySQL
关注 更多

空空如也 ~ ~

粉丝 更多

空空如也 ~ ~