自从2024年4月2日起,所有人可以在 Cloudflare Workers 上运行Python代码。这是一个重大的里程碑,因为在之前,Cloudflare Worker 仅支持 JavaScript 以及 WebAssembly,这对于许多开发人员来说是一个限制。如今,就算不熟悉 Js,也仍然可以使用更加简单易学的 Python 来编写 Worker。本篇文件将介绍如何从零开始,在本地编写和调试一个 Python Worker,并将其部署到 Cloudflare Worker 上。
Haproxy(High Availability Proxy)是一种开源软件,广泛用于负载均衡和高可用性服务。相比于 Nginx,Haproxy在作为转发用途的时候更单纯,并不需要额外配置其他的代理参数。在反向代理方面,Haproxy 支持 TCP 协议的转发,在网络第四层上直接将流量转发至源站,从而实现 SSL Passthrough 的效果。这使得中转服务器并不需要部署相关域名的 SSL 证书即可完成转发。
由于我是 Macos + Windows 双系统持有者,两个系统截然不同的快捷键导致在日常生活中电脑使用效率骤减,在被 Ctrl 切换输入法折磨了非常长的一段时间后,我在 v2ex 搜索到了一个宝藏脚本,使用 AutoHotKey 实现,功能十分接近 Macos 切换输入法的逻辑:短按 Caps 切换中英输入法,长按Caps 切换大小写锁定。
问题描述:当使用qBittorrent选择下载路径直接设置到CIFS挂载的路径中时,如果种子Torrent只包含一个文件(比如只包含一个视频文件)时性能符合预期,在种子质量良好时通常可以跑到机器带宽上限(1Gbps+);但只要种子包含的文件数量大于1(比如一个视频文件和一个20kb大小的封面图,或一个数kb大小的nfo元数据),同样在种子质量良好的情况下下载速度只能在2-6MB/s中来回波动,同时观察统计面板I/O缓存写入超负载经常维持在90%上下,I/O延迟也爆增至四位数,很明显的卡I/O现象。同时很奇怪的一点是,一个只包含两个文件的电影种子,和一个包含上百个文件的剧集种子文件所表现的I/O性能是一致的,下载速度都只能在2-6MB/s之间波动,这就非常奇怪了,难道同时下载两个文件和同时下载200个文件所占用的I/O是一致的?想想都不太可能。
事情起源于在上网冲浪的时候,发现一个网站可以查到之前DNS泄露的域名对应的IP地址,即使在之后使用了CDN来隐藏IP,之前泄露的源站IP依旧是可以被找到,结合之前遇到的直接访问IP:443会导致NGINX泄露SNI一样严重,两者结合就很容易绕过CDN找到源站IP。
然而在部署哪吒探针过程中需要设置未接入CDN的面板服务器域名/IP 来和dashboard通讯,如果在这里一不留神直接使用dns
解析到了dashboard
的IP上,面板机的IP就会被泄露了。那怎么才能使用域名的前提下又能保证面板机的安全呢?前段时间知名慈善公司Cloudflare添加了gRPC的支持,这样就可以使用CDN代理通过gRPC和面板机通讯并且隐藏IP地址了。
哪吒面板的文档同样提到了如何反向代理gRPC,并且也说了(支持 Cloudflare CDN) ,感觉这样就可以删除掉按照流程中特意强调不要套CDN的字眼了,不然很容易产生误导。