- 博客(143)
- 收藏
- 关注
原创 凌晨 2 点的 Nginx 攻击:从 CVE-2024-38077 到防御实战(附完整代码)
深夜Nginx服务器遭黑客攻击,程序员成功防御全过程 凌晨2点,服务器监控告警响起,黑客通过精心构造的URL参数试图利用Nginx漏洞进行远程代码执行攻击。攻击者利用ARM架构设备的薄弱防护,通过命令注入下载并运行恶意程序。程序员迅速响应:封禁攻击IP、优化Nginx拦截规则、部署自动化黑名单更新脚本,并引入Fail2Ban动态防御。文章剖析了黑客的攻击策略,包括自动化工具链和多线程设计,同时分享了防御措施,强调多层次防护和自动化响应的重要性。最后提出后续安全加固计划,呼吁程序员重视代码安全,防患于未然。
2025-08-01 17:00:00
317
原创 AI风险治理坐标系:程序员如何快速评估AI应用安全性
本文将介绍一个直观的"风险-治理坐标系"框架,帮助程序员在复杂多变的AI应用场景中快速定位风险等级,制定相应的治理策略,确保代码质量和系统安全。
2025-07-29 22:28:46
664
原创 AI 解析:从像素到行动 - 程序员指南
本文将带你探索这一过程:从像素到令牌(tokens),再到状态向量(state vectors),最后到可供性(affordances)。通过简单的例子和代码片段,我们将揭示这些概念如何帮助程序员构建更智能的系统。
2025-07-28 17:00:00
1354
原创 AI 赋能编程:2025 年的工具、趋势与技巧
本文将深入探讨 AI 在软件开发中的应用,分析全球和中国在这一领域的最新趋势,并为程序员提供实用建议,以更好地利用 AI 工具推动职业发展。
2025-07-27 01:26:35
708
原创 技术 — 资本双螺旋:AI 时代的投资浪潮与技术突破
本文将通过四幕结构,探索 AI 发展的关键节点、资本周期、技术与资本的交汇点,以及未来的未解之谜。我们希望为程序员和投资者提供洞见,激发思考与讨论。
2025-07-26 19:27:08
748
原创 AI 家族谱:从专家系统到 VLA 模型的演进
本文将带你走进 AI 的“家族谱”,从早期的专家系统到如今的 VLA 模型,探索每一代 AI 如何推动技术进步,并揭示 VLA 模型为何被认为是 AI 的下一个里程碑。
2025-07-23 17:00:00
928
原创 从 AlphaGo 到具身机器人:AI 四力阶梯的突破之旅
AI能力进化四阶梯:从感知到具身的智能跃迁 本文系统梳理了人工智能发展的四个关键能力阶段:感知智能(视觉/听觉识别)、认知智能(语义理解与推理)、决策智能(最优策略选择)和具身智能(物理世界行动)。通过扫地机器人夜间工作、AlphaGo下棋等生动案例,揭示了每阶段的技术突破:卷积神经网络实现图像识别、Transformer架构赋能语言理解、强化学习优化决策、多模态模型驱动机器人行动。文章指出四层能力呈递进关系,数据积累引发质变,同时强调各阶段对应的治理挑战,包括数据偏见、模型幻觉、决策黑箱和物理安全等问题。
2025-07-20 15:00:00
792
原创 Astro:前端性能革命!从原生 HTML 到 Astro + React 的升级指南
Astro作为现代前端框架,凭借服务器优先渲染和岛屿架构,显著提升网站性能与SEO表现,成为内容驱动网站的首选。相比传统SPA框架,Astro通过预生成HTML和按需加载JS,降低客户端负担,首屏速度快40%,核心WebVitals合格率达60%。升级案例显示,迁移至Astro+React后,加载时间缩短40%,JS负载减少90%,维护成本大幅降低。Astro尤其适合博客、文档等静态站点,未来将持续扩展动态功能。建议开发者立即尝试,构建更高效的Web应用。
2025-07-19 17:00:00
759
原创 React + Mermaid 图表渲染消失问题剖析及 4 种代码级修复方案
在React应用中集成Mermaid图表时,常遇到图表在重新渲染后消失的问题,这源于React虚拟DOM与Mermaid直接操作真实DOM的冲突。Mermaid通过添加data-processed属性标记已渲染图表,而React更新时会覆盖这些修改。解决方案包括:1)清除data-processed属性并重新触发Mermaid渲染;2)使用mermaid.render()手动生成SVG;3)利用useLayoutEffect确保同步渲染;4)高级方案使用MutationObserver监控DOM变化。
2025-07-18 16:00:00
1733
原创 从19%掉速到400%提速:AI协作的正确姿势,我用这8步跑通了
实测证明:不是AI让你变慢,而是你不会用AI!拆解实战案例与人-AI协作六步法,让代码效率逆风翻盘。
2025-07-15 23:10:30
831
原创 从 Cluely 融资看“AI 协同开发”认证:软件考试应该怎么升级?
AI 编码助手已成为主流开发方式,Cluely 等“外挂工具”甚至能融资上亿。与其防不胜防,不如正面拥抱。本文从协同开发角度提出软件考试升级方案:“开放 AI 工具 + 全程记录 + 协作评分”,构建新一代生产力导向的认证体系。面向技术人和投资人,给出机制设计、评分结构与产业机会完整框架。
2025-06-22 22:19:17
644
原创 一文教你合法逆向:radare2 + CrackMe 实战,全流程可复现!
从“拆锁”到“装锁”,教你安全又合规地玩转二进制补丁那是某个普通的星期一。
2025-06-21 22:11:30
1716
原创 Base44 技术揭秘:AI 语音生成全栈
疫情后身边朋友失业率飙到 20%+。这篇不是卖课,也不是收徒,只是一份“给普通人也能上手的副业脚本”。愿你我都能把副业做成余粮,而不是焦虑。
2025-06-19 20:00:43
1870
1
原创 一文彻底弄懂递归和迭代的底层原理,看完必懂!
回到开头:你只轻轻按下了Ctrl+S,但却触发了数十亿个电子的极速冒险。你喝下一口咖啡的悠闲,背后却有无数次电子奔跑、编译器工作、栈与堆空间的博弈。这种从宏观到微观尺度的穿越,令我们对这个世界产生深深的敬畏。当你真正理解了这些背后的原理:你便不再觉得代码神秘或抽象;你会带着新的眼光重新审视这个世界;你也会带着第一性原理的视角,重新看待生活中的问题。这种敬畏与理解,或许才是我们在技术之外,真正需要追寻的东西。挑战提示别忘了尝试一下“递归或迭代描述你的通勤路线”,留言与大家分享你的思考。
2025-06-19 20:00:11
865
原创 从按下 Ctrl+S 开始:Java 代码的底层以及递归与迭代
本文从计算机底层机制出发,探讨Java代码从保存到运行的完整过程。当按下Ctrl+S保存代码时,电子信号经过键盘扫描码、硬件中断、操作系统响应等环节,最终写入存储介质。Java编译过程将源代码转换为平台无关的字节码,由JVM通过解释执行和JIT编译实现跨平台运行。文章深入分析递归与迭代的运行机制差异:递归利用调用栈层层深入但消耗更多内存,迭代则通过循环结构重复操作更节省资源。两者可相互转换,选择时应考虑问题特性、代码可读性和性能需求。理解这些底层原理有助于开发者写出更高效可靠的代码。
2025-06-19 02:27:01
624
原创 意识建模的双因机制:加法累积 × 比例调节的一体化框架
本篇文章将以哲思式的步调,从感觉的对数定律到神经元的放电机制,从概率分布的轻尾与长尾到大脑的预测编码,再到耗散结构与信息熵、尺度不变性等概念,串联出意识形成的可能途径。让我们沿着这对隐形的双螺旋,一步步走过从嘈杂到自我的演化之路。
2025-06-18 20:48:29
926
原创 谷歌云全球宕机8小时:韧性系统还是脆性文明?
谷歌云6·12全球宕机8小时,空指针击溃配额守门员Service Control,音乐金融AI悉数瘫痪;拆解漏洞链,奉上多云容灾指南
2025-06-17 23:48:02
1046
原创 后端工程师睡前必读的故事:从宕机恐慌到自愈 - Docker 和 Kubernetes
凌晨两点,后端工程师小李的手机再次震动,熟悉的报警声划破夜空——服务器宕机了。困倦中,他的大脑像被重置了一样,涌现出杂乱的意识流:“为什么又是我?为什么总在半夜出事?” 服务器就像一只难以驯服的野兽,在关键时刻抛下他独自狂奔。每一次服务崩溃,他都心跳加速、冷汗直流,仿佛看见无数用户愤怒的目光在黑暗中闪烁。宕机意味着用户流失、领导责问,还有自己越来越浓的自我怀疑。那一夜,小李扶着额头盯着屏幕,代码在昏黄台灯下格外刺眼。他的思绪开始飘离现实:仿佛身处一间杂乱的厨房,各种版本的运行环境散落一地,MySQL、Pyt
2025-06-16 01:16:27
905
原创 AI狂欢下的残酷真相:云原生才是2025的保命底牌
大模型抢尽风头,程序员、职场人都在焦虑“AI吃掉了我们的未来”。但你真的看清这波技术潮了吗?云原生——才是撑起整个AI时代的底座,也是普通人真正有机会参与的方向。
2025-06-15 23:50:39
1007
原创 韦神开号2300万粉背后:我用代码对抗“AI造谣产业链”
当“AI嘴替”拿韦东奕编段子时,我决定不再沉默,用代码打响一场反击。本文从个人切身感受出发,讲述一个普通程序员如何在深夜调试中“觉醒”,亲手构建AI伪造检测脚本,揭秘一条看似娱乐、实则牟利的造谣产业链。
2025-06-12 00:31:04
1105
原创 Java 21 实战 | 虚拟线程让 Tomcat 停摆 | 我在 Task‑System 中找到了那把“失踪的锁”
锁不是不在了,只是没人能去拿。你看着它,等着它,却永远不能碰到它。这就是虚拟线程的浪漫。
2025-06-09 18:31:40
634
原创 视频讲解编程题:Docker, Kafka, Elastic Search
视频讲解 1_基础环境准备 3_查询商品需求 系统架构图基础环境准备在 VM 中克隆出一个新的虚拟机,IP 地址为 192.168.186.20。在 Docker 中安装 MySQL 容器,端口映射到宿主机。在 Docker 中安装 ElasticSer
2020-12-27 22:08:43
408
原创 Kafka 入门
消息队列 - MQ什么是消息队列消息队列不知道大家看到这个词的时候,会不会觉得它是一个比较高端的技术。消息队列,一般会简称为 MQ(Message Queue)。消息队列是一种帮助开发人员解决系统间异步通信的中间件,常用于解决系统解耦和请求的削峰平谷的问题。队列(Queue):Queue 是一种先进先出的数据结构,容器。消息(Message):不同应用之间传送的数据。消息队列:可以把消息队列比作是一个存放消息的容器,当需要使用消息的时候可以取出消息使用。消息队列是分布式系统中重要的组件,使用消息队
2020-12-06 20:38:50
824
原创 Docker 入门
Docker 简介虚拟化技术虚拟化技术是一种计算机资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来。虚拟化技术打破了计算机实体结构间的,不可切割的障碍。使用户可以比原本的组态更好的方式,来应用这些资源。虚拟化技术主要作用:高性能的物理硬件产能过剩和老的旧的硬件产能过低的重组重用,透明化底层物理硬件。软件跨环境迁移问题。在一台主机上实现多个操作系统,关键技术就是硬件的虚拟化。宿主机 <----> [虚拟机,虚拟机,虚拟机]什么是
2020-12-05 23:25:32
491
原创 Lucene 和 Kibana、ElasticSeach、Spring Data ElasticSearch
什么是全文检索数据分类生活中的数据总体分为两种:结构化数据和非结构化数据。结构化数据 - 行数据,可以用二维表结构来逻辑表达实现的数据;指具有固定格式或有限长度的数据,如数据库,元数据等。非结构化数据 - 指不定长或无固定格式的数据,如邮件,word 文档等磁盘上的文件。结构化数据搜索常见的结构化数据也就是数据库中的数据。在数据库中搜索很容易实现,通常都是使用 SQL 语句进行查询,而且能很快的得到查询结果。客户端请求 ----> 连接器连接器 ----> 缓存区连接器 -
2020-11-27 22:05:35
632
1
原创 Maven Compile 编译报错
首先在 IDEA 中使用 Maven 的插件中的 Lifecycle 进行 compile 指令,发现报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project ssm-utils: Fatal error compiling然后命令行运行 mvn compile 得到更详细的报错信息如下Failed to execute goal
2020-11-16 17:23:07
2446
原创 Java 后台开发面试题分享九
null 和 undefined 的区别?null 是一个表示"无"的对象,转为数值时为 0;undefined 是一个表示"无"的原始值,转为数值时为 NaN。当声明的变量还未被初始化时,变量的默认值为 undefined;null 用来表示尚未存在的对象。undefined 表示"缺少值",就是此处应该有一个值,但是还没有定义,典型用法是:1)变量被声明了,但没有赋值时,就等于 undefined。2)调用函数时,应该提供的参数没有提供,该参数等于 undefined。3)对象没有赋值的属性
2020-11-16 17:14:52
221
原创 Spring Cloud:Nacos,Sentinel
Spring Cloud Alibaba 简介Spring Cloud 是若干个框架的集合,包括 spring-cloud-config、spring-cloud-bus 等近 20 个子项目,提供了服务治理、服务网关、智能路由、负载均衡、断路器、监控跟踪、分布式消息队列、配置管理等领域的解决方案。Spring Cloud 通过 Spring Boot 风格的封装,屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、容易部署的分布式系统开发工具包。一般来说,Spring Cloud 包含以下组件
2020-11-16 16:23:40
798
原创 Spring Cloud:Eureka,Ribbon,Hystrix,Feign,GateWay,Config
网关组件 Zuul 性能一般,未来将退出 Spring Cloud 生态圈,所以直接使用 GateWay,把 GateWay 划分到第一代 Spring Cloud 核心组件中。各组件整体结构如下:Gateway:所有服务的入口;日志、黑白名单、鉴权。Ribbon:负载均衡。Hystrix:熔断器,服务熔断,服务降级。Feign:远程调用。Eureka:服务注册与发现;微服务名称、IP、端口号。Config:搭建配置中心微服务;实现对配置文件的统一管理,配置自动刷新 - bus。
2020-11-12 19:54:35
1126
原创 Spring Cloud:微服务入门,案例准备
微服务架构互联网应用架构演进随着互联⽹的发展,⽤户群体逐渐扩大,⽹站的流量成倍增⻓,常规的单体架构已⽆法满⾜请求压⼒和业务的快速迭代,架构的变化势在必⾏。下⾯从最开始的单体架构分析,⼀步步的到现在的微服务架构。1)单体应用架构在诞⽣之初,应用的⽤户量、数据量规模都⽐较⼩,项目所有的功能模块都放在一个工程中编码、编译、打包并且部署在一个 Tomcat 容器中的架构模式就是单体应用架构,这样的架构既简单实 ⽤、便于维护,成本⼜低,成为了那个时代的主流架构⽅式。Actor -> Applicati
2020-11-10 19:17:41
978
2
原创 Java 后台开发面试题分享八
请问 select(1) 和 select(*) 有什么区别selelct 常量 from ... 对应所有行,返回的永远只有一个值,即常量。所以正常只会用来判断是否有还是没有,比如 exists 子句。select * from ... 是返回所有行的所有列。 性能上的差异,关键看 from 和 where 子句,比如说 where 条件中可以使用索引,那显然 select 1 from ... 的性能比 select * from ... 好。说一下 count(1) 和 count
2020-11-07 17:17:53
1761
3
原创 Postman 和 Jmeter 的并发测试 Nginx 配置
用 Spring Boot 搭建完 Spring Cloud 微服务项目后,又用 Nginx 为 Spring Gateway 做了负载均衡,其中做了并发限制和每秒连接数限制,Nginx 的配置如下:worker_processes 1;events { worker_connections 1024;}http { include mime.types; default_type application/octet-stream; sendf
2020-11-07 16:07:29
511
原创 Spring Boot:基本应用,源码解析,数据访问和视图技术
SpringBoot 基本应用约定优于配置约定优于配置(Convention over Configuration),又称按约定编程,是一种软件设计范式。本质上是说,系统、类库或框架应该假定合理的默认值,而非要求提供不必要的配置。比如说模型中有一个名为 User 的类,那么数据库中对应的表就会默认命名为 User。只有在偏离这一个约定的时候,例如想要将该表命名为 person,才需要写有关这个名字的配置。比如平时架构师搭建项目就是限制软件开发随便写代码,制定出一套规范,让开发人员按统一的要求进行开发
2020-11-07 15:41:53
913
1
原创 Dubbo 分布式架构搭建教育 PC 站:视频讲解
视频讲解BiliBili 链接教育PC站-Dubbo分布式架构:后端教育PC站-Vue:前端说明服务提供方:http://localhost:8002/服务消费方:http://localhost:80/前端:http://localhost:8080/图片服务器地址:http://www.fdfsstorage.com/ZooKeeper、MySQL、FastDFS、Redis、Nginx 等都配置在 Linux 系统需求完成接口对应的前后端的代码.
2020-10-31 20:21:31
257
原创 Dubbo 分布式架构搭建教育 PC 站 - 微信支付
创建二维码安装 qrcodejs2 (注意:安装的是 qrcodejs2,不要安装 qrcode,否则会报错)npm install qrcodejs2 --save页面中引入<el-dialog :visible.sync="dialogFormVisible" style="width:800px;margin:0px auto;" > <h1 style="font-size:30px;color:#00B38A">微信扫一扫支付</h1> &
2020-10-30 18:44:37
365
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人