继前两天 B 站雪崩事件之后,国内最大的程序员站点 CSDN 居然也翻车了!

话说 CSDN 在程序员届的知名度甚至大于 B 站,我估计没有朋友没用过吧,来,先请大家用 4 个字来形容 CSDN _ _ _ _。

我先来一个:广告护体!

我对 CSDN 可以说是又爱又恨。里面有无数 Bug 解决方案,虽然答案都差不多,甚至怀疑网站内搞了复制粘贴大赛;还有各种资料可以下载,虽然大多数是把免费的项目搬运过来收费卖;最重要的,广告多到让人怀疑人生,有时候比正片儿内容还多。

事故现场

回顾一下事故,今天早上 10 点多,CSDN 突然崩了。主页能正常打开,但只要点进官方域名下的文章,比如blog.csdn.net/csdnnews/article/details/xxx,全都是 404 Not Found,页面直接白给,但是推荐内容竟然能倔强地完整展示!

而个人域名下的文章,比如鱼皮的个人主页 liyupi.blog.csdn.net/article/details/xxx,却能正常访问。到了 11 点多,系统陆续恢复,响应速度还算及时。

技术分析

下面进入事故分析时间,作为一名专业程序员,说说我的看法。

首先,主页没事,只有文章详情页 404,说明不是服务器全挂了,而是 路由配置 或者 反向代理 出了问题。

出现 404 的常见原因无非就这么几种:

  • 反向代理配置失误。访问 CSDN 文章详情页时,要经过一层反向代理(比如 Nginx、Apache),由它来决定请求该转发到哪个后端服务。如果反向代理的路由配置出错,比如某条规则失效、配置被误删、热更新失败,就会导致对应域名下的文章路径都找不到目标服务,直接返回 404。

  • CDN 异常。CSDN 这种大站肯定是会用 CDN 内容分发网络做加速的,如果 CSDN 节点缓存失效、回源失败,或者缓存了错误的 404 页面,也会导致大面积 404。

  • 数据库等存储服务异常。如果 CDN 失效,或者文章没被缓存,就要到数据库中查询文章信息,如果数据库崩了,数据就没法正常读取。

  • 权限问题。比如 Web 应用防火墙或其他安全策略不小心拦截了官方域名下的文章请求,也会导致 404 或访问异常。这叫什么,大水冲了龙王庙,自己人不认自己人。

而个人域名下的文章没受影响,说明这部分服务是独立部署的,或者走了不同的路由、缓存策略,到独立存储到其他数据库中。而且只要不是服务挂掉,上面这些问题都很好修复,回滚一下配置到正常的版本、或者清一清缓存就好了,从这个修复时间上来看,也是合理的。

总结

最后随便说两句,CSDN 这次故障虽然时间不长,但是范围很大,毕竟博客网站核心不就是看文章么?我看交流群里的吐槽,发现还是有很多程序员朋友慌了的,毕竟哪怕平时吐槽它广告多、质量低、答案水,真到用的时候,还是得真用一下的。

话说最近故障有点多啊,好像博客园、还有知名的程序员学习网站 编程导航 前两天也崩了,不知道是不是要过节了,程序员朋友们最近不好过呀。

最后,别忘了点赞关注鱼皮,下次有事故出现,我继续带你第一时间吃瓜、聊技术!

更多编程学习资源

突发,CSDN 崩了!程序员们开始慌了?的更多相关文章

  1. 程序猿尤其是.NET程序员所需要注意的网站资源

    我觉得一个程序员 需要 对 技术 和 行业 两方面同时具有极大热情和注意力才能让自己在一个新的台阶. 有些程序员就是对技术有着极大的热情但是行业完全不注意,这样我感觉只能成为一个专家,并不能让自己真正 ...

  2. [置顶] 程序员必知(三):一分钟知道URI编码(encodeURI)

    因为浏览器会用一些特殊的字符作为特定的意义,所以在要传输的内容上如果有这些特殊的字符的话,就需要对其进行转义才能正确传输,如以下字符为发送时候的关键字,即特殊字符 ;/?:@&=+$,# 所以 ...

  3. .NET程序员所需要注意的网站资源

    一个程序员 需要 对 技术 和 行业 两方面同时具有极大热情和注意力才能让自己在一个新的台阶. 有些程序员是对技术有着极大的热情但是行业完全不注意,这样我感觉只能成为一个专家,并不能让自己真正的质变, ...

  4. 「花田对」CSDN程序员专场——谁来拯救技术宅!_豆瓣

    「花田对」CSDN程序员专场--谁来拯救技术宅!_豆瓣 「花田对」CSDN程序员专场--谁来拯救技术宅!

  5. 程序员的沟通之痛https://blog.csdn.net/qq_35230695/article/details/80283720

    个人理解: 一般刚工作的程序员总觉得技术最重要.但是当工作年限超过3年.或者岗位需要涉及汇报.需求对接等就会发现沟通非常重要.也许在大公司还不那么明显,但是在小公司.小团队或者创业,沟通甚至可以说是第 ...

  6. 怎样从一名程序员过度到项目经理(整理自csdn论坛) 选择自 whoopee 的 Blog

    1.从程序员到PM,是一条脱变的路,事实上程序员走的路最终不应该是项目经理.首先有一点需要明白的就是,一定规模的项目中,项目经理不需要太懂技术,他可以是一知半解.项目经理的任务不是在技术方面,技术相关 ...

  7. 程序员接私活经验总结,来自csdn论坛语录

    以下为网上摘录,以做笔记: 可是到网上看看,似乎接私活也有很多不容易,技术问题本身是个因素,还有很多有技术的人接私活时被骗,或者是合作到最后以失败告终,所以想请有经验的大侠们出来指点一下,接私活是怎么 ...

  8. 重磅!华为云社区·CSDN【寻找黑马程序员】有奖征文活动奖项公布!!

    华为云社区·CSDN[寻找黑马程序员]第一期有奖征文活动在大家的鼎力支持下顺利落幕啦,非常感谢大家一直以来的支持~现在小宅就要隆重公布本次活动的奖项了!! 请各位获奖的伙伴在8月18日前私信联系提供联 ...

  9. B 站崩了,受害程序员聊聊

    非吃瓜,B 站事件始末分析 + 防治技术分享 大家好,我是鱼皮,昨天小破站崩了的事情相信很多朋友都听说了. 这要是搁以前,不爱吃瓜的我根本不会去关注这种事,崩了就崩了呗,反正天塌下来有程序员大佬们扛着 ...

  10. 程序员的一生时间90%是用在编程上,而剩余的10%是活在世界上。刚进CSDN的博客看到这么句话

    程序员的一生时间90%是用在编程上,而剩余的10%是活在世界上. 而自己呢?是个程序员呢还是个业余玩家!

随机推荐

  1. 解决Oracle锁表情况

    在使用Oracle数据库更新数据的时候,有两种查询方式可以修改编辑数据: select t.*,t.rowid from table t select * from table for update ...

  2. docker clean images

    docker ps | grep portal | awk '{print $2}' | cut -d ":" -f3 used=`docker ps | grep portal ...

  3. HTML5 定时通知

    通过setInterval()和Notification来实现定时通知功能. demo <script> window.onload = function () { //每10秒弹出一个桌 ...

  4. SearXNG私有化部署与Dify集成

    一.概述 SearXNG 是一个免费的互联网元搜索引擎,它聚合了来自各种搜索服务和数据库的结果,但摆脱了隐私追踪 -- 用户行为既不会被引擎跟踪也不会被分析. 功能特性 自托管,可以私有化部署 没有用 ...

  5. linux文件或目录权限、权限字符转为权限值

    1.字符的含义 当ll一个目录时会有类似下面的输出 [root@node2 ~]# ll /usr/ total 112 dr-xr-xr-x. 2 root root 24576 Oct 13 23 ...

  6. K8s新手系列之ReplicationController资源

    概述 官网地址:https://kubernetes.io/zh-cn/docs/concepts/workloads/controllers/replicationcontroller/ Repli ...

  7. 数据库事务回滚:FastAPI中的存档与读档大法

    title: 数据库事务回滚:FastAPI中的存档与读档大法 date: 2025/05/10 00:18:52 updated: 2025/05/10 00:18:52 author: cmdra ...

  8. Flex布局-容器项

    弹性盒子是一种用于 按行 或 按列的一维布局方法. 元素可以膨胀以填充额外的空间, 也可以 收缩 以适应更小的空间. flex 重点概览 对于 flex 重要的理解点在于: 主轴与交叉轴 换行与缩写 ...

  9. net core mvc6使用jwt实现简单的登录

    创建一个新的.NET Core Web应用程序项目.在创建项目时,选择MVC模板. 在项目中添加Microsoft.AspNetCore.Authentication.JwtBearer包: 在Vis ...

  10. VUE构建

    VUE 渐进式 JavaScript 框架 易学易用 基于标准 HTML.CSS 和 JavaScript 构建,提供容易上手的 API 和一流的文档. 性能出色 经过编译器优化.完全响应式的渲染系统 ...