PingCAP 面试:Jenkins 和 Kubernetes
看我给你表演一个绝活,12 个小时之内完成 题目:给定三台香港的机器(4C8G),搭建一个单 master 节点的 k8s 集群,并搭建 Jenkins ,并且使用 k8s 作为 Jenkins 的 Work Node 自动调度,完成 Nginx/TiDB 的自动化发布(通过一个 Job) 时间是一周,机器我们可以提供,你什么时候开始小作业可以提前跟我说,我让同事把机器给你开了 本篇是以面试者的第一视角来纪录,可以当小说看,本文超长,建议闲着无聊时看~作为一个开发码农,kubernetes 我是一点也不了解,看到题目一堆未知都东西。jenkins 倒是玩过一点,jenkins 可以调 shell,写个脚本检测一下进程和 cpu 使用率,把 docker 塞给固定的机器。ok,完美。先看一下 kubernetes 文档,看看 kubernetes 都能干啥 找到了这篇 哦,kubernetes 可以实现自动调度,连脚本都不用写了,然后发现还有这个插件Kubernetes plugin for Jenkins 这不一会就搞定!然后我就去和 HR...
MQTT 踩坑指南
MQTT(Message Queuing Telemetry Transport 消息队列遥测传输协议)是一种基于发布/订阅(publish/subscribe)模式的 “轻量级” 通讯协议,该协议构建于 TCP/IP 协议上,最早由 IBM 在 1999 年发布。目前由 OASIS 维护 MQTT 标准 OASIS 这个组织维护的标准大部分人应该都没听说过不过 AMQP — Advanced Message Queuing Protocol 大概不用多说 。。。大名鼎鼎的 RabbitMQ 就是实现的这个协议 MQTT...
从零开始的学游泳
这天我参加了我人生中第一场游泳比赛 100M 蛙泳和 100M 自由泳,分别取得了第三名和第五名的成绩(小型比赛缺席的人太多,我运气比较好)。本文就分享一下我从旱鸭子,从头开始学习游泳的过程:学习游泳运动这件事和学习一种新的编程语言一样,都只不过是学了一项新技能 注:本人并非游泳教练,也不是专业人士,这只是业余个人学习游泳的一点心得天赋问题,我可能是完全没有天赋的。蛙泳在深水区游到 25M 我花了差不多有一个月的学习 我开始学游泳快一年了。哦不,是半年,因为今年疫情关系泳池有半年是没开门的 只要每天坚持连续总会有提高 游泳这件事感觉很重要,每个人都要个擅长的泳姿。某种泳姿有人一下子就学会了(天赋吧)。 剩下的就是经过不断连续。大概没有人四种泳姿都学的非常轻松 我觉得大概可以分成三个等级吧。。(当然不是运动员的说法) L1 淹不死 L2 都会游 L3 非人类 当然这个是我自己分的级 推荐视频:梦觉教游泳 这个讲的不错 喝水这件事,呛水 和...
modbus 协议初体验
最近被拉去支援硬件部分,又写了几天对接嵌入式的上位机程序 _(ˊཀˋ」∠)_ 和下位机通信是用 modbus 协议的。趁机学习了一下这个上古协议。(奇怪的知识又增加了 modbus 是用 req/res 的模式来通信的。和 http 是一样的,如果要拿传感器信息只能轮询 关于 modbus 协议的一大特点,就是支持设备并连,可以通过一个串口控制最多 256 个设备(每次发送请求时要发送目标地址) 由于 modbus.org 不支持 https 。所以就不放标准文档的连接了(迫真,上古协议) 以这个读取状态的请求为例 03 (0x03) Read Holding Registers Name Length Value Function code 1 Byte 0x03 Starting Address 2 Bytes 0x0000 to 0xFFFF Quantity of Registers 2 Bytes 1 to 125 (0x7D) 每个请求要有 Function code 字段。用到的 Function code...
自制旁路网关(三) ——nftables 来做透明代理
本以为这篇文章会写的很长,因为笔记上还有好多内容。不过博客不能是笔记,把最核心的地方用最简单的话提炼出来,尽可能让所有人能看懂才算是一篇好文章 今天或许是个好日子,三月七号女生节。我决定今天把这个系列的坑填上,就当作给所有女孩子的礼物了(大雾) 为什要使用 nftables 来分流而不用,clash 的分流。如果你了解零拷贝实现,你就会了解为什么这样做。不了解也没关系,记住结论 nftables 分流性能更高一些 不过那个nftables 性能高只是理论上的。实际上我并没有做过 benchmarks 。可能实际情况也刚好相反。(也欢迎那个较真的杠精来做下 benchmarks 来证明一下) 123456789101112131415# 挂上socks 代理下的大概快一点curl --socks5 localhost:7891 'http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest' > raw# 制作 nftables 的配置文件,先生成个第一行echo "define...
自制旁路网关(二) ——用unbound和smartdns来优化dns服务
今天是三月一日,我应该昨天更新,因为昨天是四年一度的二月二十九日。错过了了个好日子 T_T 。不过没关系,今天还是一年一次的三月一号那( 先来回顾一下 dns 查询会遇到那些问题 运营商 dns 基本上是最快的,但可能有污染 国内公共 dns ,国内地址准确,但未必最快,国外有污染 出口节点运营商 dns ,国外地址准确,速度基本最快 国外公共 dns ,国外地址准确,但未必快 国外网站可能有国内地址的 cdn ,cdn 最快 我们先把国内外分开查询,然后再汇总 使用 smartdns 来查询国内,只用公共 dns ,(smartdns 可以测速并返回你的位置最快的地址) 国内外 dns 该如何进行分流?有一个很重要的问题是国外网站有国内 cdn 基于 geo-ip 来分流查询,查到固定国家或特色网段的地址时,不使用这个结果(大陆白名单就是这种) 基于域名 GFWlist 是把被墙掉的域名收集起来做成一个数据库 究极方案 ICPlist:我还没见过有这么干的,不过这才是一劳永逸的办法,用于大陆法律的问题 ICP 你懂的,不过这个数据库可以反过来利用(只要在 icp...
自制旁路网关(一点一) ——增加clash订阅功能
说起来也惭愧,因为觉得自己维护线路太麻烦,所以买了机场的服务,不过要使用机场,肯定要配合订阅来一起食用 订阅功能原理:本质上就是访问一个带 token 的 url。所以直接去 curl 那个地址就可以拿到配置文件 本文是接上一篇文章自制旁路网关(一) ——使用clash做代理 其实就是定时去获取最新配置,从配置文件中取出自己需要的内容,然后重新加载配置文件(订阅到的配置可能不是你都需要的,只需要提取你需要的字段) 我用的是 n3ro.host(我并没有收广告费,n3ro 请打钱) 。。是基于 SSPanel 的机场,使用的是 clash 的订阅 先写一个核心文件用于处理配置文件,去更新关键性的字段。(这一步请自行判断自家使用的机场,订阅的配置文件内容) 你可以用这种方式来更新配置 1cat config.yaml | head -32 > result.yaml && curl '<Your Subscription Address>' | grep Proxy: -A 1000 >> result.yaml...
自制旁路网关(一) ——使用clash做代理
由于武汉新冠肺炎(COVID-19)的关系,我被困在老家,自从我买了 ac68u 之后基本上就再也没折腾过网。由于长期在家办公,需要好的网络,还好手里有树莓派,还有 nas。只能使用传统技能(时代变化还真实快,一觉醒来工具链全变了) 这次优化网路的经历我准备写一个系列(预计三篇文章:代理,dns,分流增强)。我也不知道能不能写完,也说不定后面两篇文章会咕掉 实际上并没有咕掉,而且还多写了一篇。本系列文章: 这应该算是第零篇,建议先看这篇 细说 Debian 的网络管理 network/interfaces 自制旁路网关(一) ——使用clash做代理 (本篇) 自制旁路网关(一点一) ——增加clash订阅功能 自制旁路网关(二) ——用unbound和smartdns来优化dns服务 自制旁路网关(三) ——nftables 来做透明代理 不可否认,我省略了一些过于基础的细节,但本文的确是从我的笔记上摘录的 本系列用到的代码都在 Raspbian GNU/Linux 10 (buster) 上验证过,请放心食用 代理软件使用 clash...
使用 OpenCV 来做单元测试
最近一直都在搞图像传输,webrtc 可以检测网络状况来调整码率。为了探究图像传输中损失了多少数据,用 opencv 来计算输入视频流和输出视频流的相似性 不过本人作为一个不懂算法,不懂C++, 不懂openCV 的菜鸡。(我还真把这个东西给做出来了 如何检测视频视频的相似性先来科普两个概念: 峰值信噪比 PSNR (Peak signal-to-noise ratio)https://en.wikipedia.org/wiki/Peak_signal-to-noise_ratio 结构相似性 SSIM (Structural similarity)https://en.wikipedia.org/wiki/Structural_similarity 这个处理本身是把视频拆成图像帧,然回分成 RGB...
MacBook Pro 初体验感想
刚买了一台 2015 款的 macbook pro 。嗯,就是 MF839 的那款。正好来谈谈使用感想 入手前准备最有效的资料是苹果官网的 macbook pro 机型 我当然是要买二手的机器了,干嘛要买新的( 先选择买哪一款,然后去某宝的二手苹果商家卖家那里查价钱,多查几家,基本可以得出要买机型的市场价格。没问题的机器价格波动基本上在 5% 不着急的话,去咸鱼上慢慢找。。。不够我实际观测,咸鱼上的二手苹果水极深 要注意几点: 价格波动基本上在 5% 以下,价钱过低都是有问题的 Macbook 整体造假成本很高,基本上没有假的。。。最多是防外观,基本上一眼就能看出 15...