logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Go mod init 降级撤回背后:精英主义正在杀死 Go 社区的民主?

当剥开技术争议的表象,我们会发现一个令人担忧的事实:Go 语言引以为傲的“设计驱动(Design-Driven)”和民主化提案流程正在褪色,取而代之的,是一种脱离群众、缺乏约束的“精英主义”。当开发者发现影响自己日常工作的命令被悄悄改掉,且在提出异议时遭遇“没有新信息不予讨论”的傲慢对待时,社区与官方团队之间的信任就会产生深深的裂痕。然而,近两年来,随着 Go 语言演进速度的加快,这种“Desig

#golang#开发语言#后端
被嘲笑比 Python 还慢?扒开 Go 正则表达式的底层,看看它为了防范“系统猝死”付出了什么

你可以选择引入通过 CGO 调用 PCRE的Go binding库(比如https://github.com/GRbit/go-pcre),但要注意防范 ReDoS 攻击,或google/re2的Go binding(比如https://github.com/wasilibs/go-re2),又或是在业务侧尝试社区的野路子。在匹配正常字符串时,它快如闪电。是一个完全用纯 Go 编写的正则库,它的出

#golang#正则表达式#开发语言 +1
谁“杀”死了你的 HTTP 连接?—— 揭秘云环境下连接池配置的隐形陷阱

然而,在云原生时代,应用代码只是庞大网络链路中的一环。最令人费解的是,这往往发生在低频请求的场景下,或者系统刚从闲置状态“醒来”的时候。Go 客户端认为连接在 60~90 秒之间是可用的,但云端的 LB 已经在第 60 秒把它杀掉了。客户端的空闲超时时间,必须小于链路中任何中间设备(LB, NAT, Firewall)的超时时间。:OkHttp 的 5分钟,Go 的 90秒,在 60秒超时的公有云

#http#网络协议#网络
理解时序数据库的时间线

在当今数据爆炸的时代,时序数据已经成为企业和组织中不可或缺的一部分。它们包括了从传感器、监控设备、日志记录系统和金融交易等多种来源的大量数据,这些数据按照时间顺序排列,记录了各种事件和活动的发生和变化。时序数据的分析和处理对于企业的业务决策和运营效率至关重要。为了更好地管理和利用这些数据,人们发明了**时序数据库管理系统(Time Series Database System,TSDB)**。在时

#时序数据库#数据库
AI 编码时代的生产力跃迁:2025 年开发者生态报告深度解读

如果你觉得代码写得更快了,这也是对的。这或许暗示了,在这个规模下,沟通成本尚在可控范围,而 AI 带来的单兵作战能力提升被最大化地释放了出来。两者之间的差距正在迅速缩小,这反映了 Claude 系列模型(尤其是 Sonnet )在编码能力上的卓越表现,正在赢得越来越多开发者的青睐。:新的研究 (RetroLM) 提出,对于长上下文任务,直接利用 KV 缓存进行检索,可能比传统的 RAG (检索增强

#人工智能
一个 Kubernetes 集群的“珠峰攀登”:从 10 万到 100 万节点的极限探索

这里的敌人不再是具象的冰川或岩壁,而是“稀薄的空气”——那些看不见、摸不着,却能瞬间让最强壮的登山者倒下的系统性瓶颈。它成功地将旗帜插在了“百万节点”的顶峰,但其真正的价值,是为后来的“登山者”(其他工程师)绘制了一份详尽的地图。:Go 是构建 Kubernetes 这样的云原生巨兽的理想语言,但即便是 Go,在绝对的规模面前,其核心特性(如 GC)也终将面临极限。由此来看,etcd,这座看似坚不

#kubernetes#容器#云原生
7 个常见的 Kubernetes 陷阱(以及我是如何学会避免它们的)

随着时间的推移,这些被遗忘的对象会累积起来,消耗集群资源,增加云成本,并造成操作上的混乱,尤其是当过时的 Services 或 LoadBalancers 仍在继续路由流量时。在没有明确的安全策略的情况下,集群可能会持续暴露于容器逃逸、未经授权的权限提升或因未固定的镜像导致的意外生产变更等风险中。:相反,如果没有限制,一个 Pod 可能会消耗超过其应有份额的资源,影响同一节点上其他 Pod 的性能

#kubernetes#java#容器 +2
【Go 网络编程全解】13 从 HTTP/1.1 到 gRPC:Web API 与微服务的演进

这固然能让你快速上路,但只有那些真正懂得引擎、变速箱和悬挂系统(也就是我们前十二讲所学)的“老司机”,才能在面对复杂路况时游刃有余,甚至自己动手改装和调优。坦白说,对于一个追求极致底层的系统工程师而言,我们专栏的核心故事,到上一讲或许已经可以画上一个圆满的句号。因为在现实世界中,绝大多数 Go 开发者,包括你我,日常打交道最多的,并非原始的 Socket,而是构建在其上的、更加抽象、也更加普遍的应

#网络#golang#http +2
“6个月,47个微服务”:一场由“简历驱动”引发的架构灾难

倡导一种渐进式的“绞杀者无花果模式”(Strangler Fig Pattern),逐步将单体中的功能,一块块地、有选择地、在确认有净收益的前提下,剥离成更小的服务(或者叫“宏服务”/“迷你服务”)。这不仅仅是一个团队的技术困境,更像是一部在软件行业中反复上演的戏剧:一个稳定但“不时髦”的遗留系统,遭遇了一位满怀“宏大愿景”(和一堆时髦 buzzwords)的新领导。而一个糟糕的架构师,则像一个手

#架构#微服务#云原生
微服务灾难清单:从技术深坑到组织泥潭的10个惨痛教训

当不可避免的组织重组发生时,原有的“支付团队”被一分为二,但他们共同拥有的服务和基础设施,却依然纠缠在旧的 AWS 账户和 K8s 命名空间中。它承诺将庞大、笨重的单体应用,分解为小而美的、可独立开发和部署的服务,从而极大地提升团队的敏捷性和交付速度。更有效的方法,是采纳 Cindy Sridharan 提倡的“安全地在生产环境测试”,通过金丝雀发布、灰度部署等策略,在真实流量中验证变更。当一个工

#微服务#架构#云原生
    共 157 条
  • 1
  • 2
  • 3
  • 16
  • 请选择