理论与实践
文章平均质量分 67
对研发过程中一些实践进行总结
IT 行者
洞悉每个字节的跳动
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spring Cloud Gateway为什么要推出 WebMVC 版本?深度解析两大版本的差异与选型
Spring Cloud Gateway 新增WebMVC版本,支持传统Servlet容器部署,解决了WebFlux版本对Netty的依赖问题。WebMVC版本基于Servlet API,兼容现有生态系统,通过JDK21虚拟线程技术实现了接近WebFlux的性能表现。文章对比了两种架构的技术栈、性能指标和适用场景,建议传统企业应用选择WebMVC版本以降低迁移成本,而全栈响应式系统仍适合WebFlux版本。关键区别在于WebMVC支持WAR部署和Servlet过滤器。原创 2025-12-12 21:32:18 · 970 阅读 · 0 评论 -
Java反编译工具全面对比:IntelliJ IDEA、JADX、JD-GUI 选型实战指南
日常开发选IDEA内置反编译器;Android逆向必须用JADX;快速查看老项目用JD-GUI。本文提供完整命令行脚本、性能基准、实战案例,一次性解决所有反编译问题。原创 2025-12-04 22:38:38 · 851 阅读 · 0 评论 -
慎重选择微服务架构:一个真实案例的深度反思
本文通过一个真实的"伪微服务"案例,揭示了盲目追崇微服务架构的风险。技术选型没有银弹,适合自己的才是最好的。原创 2025-11-30 12:15:32 · 624 阅读 · 0 评论 -
当AI开始写代码: 技术洪流中的工匠沉思
AI编程工具大幅提升了代码开发效率和质量,却让程序员陷入情感矛盾。文章通过对比从前手工调试的"亲密掌控感"与当下AI编程的高效标准化,揭示了技术进步带来的心理落差。作者指出工匠精神的本质并非工具本身,而在于如何运用工具:AI能生成代码却无法理解业务场景、权衡架构哲学或体会用户体验。未来程序员或将转型为"代码策展人",在技术精湛之上赋予代码人文温度,使工匠精神以新的形式延续。原创 2025-11-16 23:27:09 · 439 阅读 · 0 评论 -
AI 编程工具全景分析与 Claude Code 配置 MiniMax - m2 模型指南
摘要:AI编程工具主要分为三类:IDE插件(如GitHub Copilot)擅长代码补全和局部优化但受限于IDE;独立工具(如Tabnine)功能全面但学习成本高;命令行工具(如ClaudeCode)适合批量处理和自动化但操作门槛较高。其中ClaudeCode可通过配置环境变量连接MiniMax-m2模型,执行高效的项目级操作。开发者应根据项目需求选择合适工具,兼顾功能特性和使用场景,以最大化开发效率。原创 2025-11-11 23:13:38 · 1304 阅读 · 1 评论 -
AI时代程序员生存指南:从历史镜鉴到行动路线图
AI时代对程序员群体构成"生存危机"与"重生机遇"的双重挑战。报告通过工业革命纺织工人的历史镜鉴,揭示技术代差、生产关系滞后和虚假人力成本优势是结构性失业的三大风险。当前AI已替代20-30%初级岗位,但掌握AI工具的高级人才薪资增长150%。原创 2025-11-09 18:20:30 · 976 阅读 · 0 评论 -
VS Code秒变智能IDE :Claude Code For VS Code 插件配置MiniMax-M2
摘要:本文介绍了在VSCode中配置ClaudeCode扩展使用MiniMax-M2模型的步骤:1)安装扩展;2)设置模型为MiniMax-M2;3)在settings.json中配置API信息,包括从MiniMax官网获取的API Key及各类模型参数设置。完整配置包含base URL、认证令牌、超时设置等关键参数,配置完成后即可开始使用该AI编程助手功能。原创 2025-11-08 22:16:11 · 2754 阅读 · 0 评论 -
分布式事务我们真的需要么?
分布式事务,顾名思义,是指涉及两个或多个分布式资源(如数据库、消息队列等)的事务操作,要求这些操作要么全部成功,要么全部失败,以此保证数据的一致性。通过设计独立的服务边界,尽量减少跨服务的事务操作,利用API幂等性、事务日志和事件溯源等技术,可以在不引入分布式事务的情况下,实现业务逻辑的一致性。尽管分布式事务在某些关键场景下不可或缺,如金融交易系统,但大多数日常业务场景下,通过采用最终一致性模型、优化系统架构设计、实施有效的补偿机制,我们往往能避免分布式事务带来的复杂性和性能开销。原创 2024-05-18 22:06:23 · 749 阅读 · 0 评论 -
一个被忽略的日志采集框架Rsyslog
Rsyslog在日志收集和基础路由方面表现出色,而Logstash、Fluentd、Graylog和Splunk更侧重于日志的处理、分析和可视化。说起日志采集框架,大家动辄使用Logstash和Fluentd, 却忽略了Linux系统内置的日志框架Rsyslog,而且日常大家的应用服务都是部署在Linux服务器,可以减少三方组件的依赖。Rsyslog、Logstash、Fluentd、Graylog、Splunk、Filebeat和Metricbeat都是日志管理和分析工具,各自有其独特的优势。原创 2024-05-18 21:55:30 · 1401 阅读 · 0 评论 -
如何使公共组件与Springboot 2/3及不同Java版本保持兼容
对于依赖HttpServletResponse的公共组件或工具,建议逐步迁移到使用ResponseEntity,以确保对Spring Boot 2、3以及不同Java版本(如JDK 8和11+)的支持。这样,你无需根据不同的环境编写分支代码,从而简化了维护工作。然而,随着Servlet 5.0及更高版本的发布,javax.servlet.http.HttpServletResponse已被移到jakarta.servlet.http.HttpServletResponse命名空间下。原创 2024-05-17 23:46:19 · 592 阅读 · 0 评论 -
你程序中的异常用对了么? 一个属性大幅减少系统的异常堆栈信息
因此可以在你自己的工程中,通过覆写RuntimeException的所有构造方法,避免一些无效的堆栈打印。如果启用了异常抑制,那么在一个异常(称为“主异常”)抛出时,如果另一个异常(称为“被抑制的异常”)也发生,则被抑制的异常会被添加到主异常的“抑制异常”列表中。控制台上打印着一堆异常堆栈信息,这不但覆盖了有价值的日志,也大大降低了程序的性能,而且这些错误堆栈信息自身的价值很小。,则可以在异常对象中保存空的堆栈跟踪信息,从而减少填充异常对象所需的空间和时间。,则表示不保留堆栈跟踪信息。原创 2023-12-05 17:30:00 · 351 阅读 · 0 评论 -
Vue 组件加载 WASM 模块的最简方法
Vue 组件加载 WASM 模块的最简方法。基于wasm-pack构建的wasm要集成到vue工程中,总是遇到这样那样的错误。本文讲解了vue集成wasm的最简方法,亲测有效原创 2023-06-19 23:49:24 · 2830 阅读 · 0 评论 -
Maven构建时告警提醒的处理
Maven构建时的提醒信息的处理。有关详细信息, 请使用 -Xlint:unchecked 重新编译。[WARNING] XxFilter.java: 有关详细信息, 请使用 -Xlint:deprecation 重新编译。原创 2023-03-24 22:45:14 · 4964 阅读 · 0 评论 -
关于ClickHouse字典表在分布式表中使用的问题
Clickhouse的字典表在分布式表中进行查询操作时,会报列不存在(THERE_IS_NO_COLUMN)的问题。原创 2022-12-29 00:09:46 · 1662 阅读 · 0 评论 -
Mac中常用命令(持续更新)
1. 文本内容替换Mac中的这个命令与linux有点不同,它多了一个备份参数# 需要备份文件sed -i '.bak' 's/old_words/new_words/g' a.txt# 不需要备份文件sed -i '' 's/old_words/new_words/g' a.txt原创 2022-05-01 09:37:59 · 1307 阅读 · 0 评论 -
brew安装python2
Mac homebrew 成功安装 了puthon2原创 2022-04-27 16:45:12 · 4556 阅读 · 0 评论 -
【转发】75%新项目都可以“无脑”选择单体架构
75%新项目都可以“无脑”选择单体架构转载 2022-02-26 21:23:02 · 137 阅读 · 0 评论 -
献给2021年技术选型中被我否定的那些技术
近几年来,我的团队构建了部门最大规模的线上平台,也是部门迄今最成功的基于微服务架构的系统。每当做部门技术分享,我说的最多的是那些被我否定的技术框架,分析的核心问题是这些技术框架在解决什么问题,我们真的需要么? 就我的实践来讲,真的没什么可讲的,毕竟最近两年一直在对技术架构做减法。第一个否定的是ELK架构,平台上线之初,我认真的研究了一下ELK整个技术体系,并进行线上验证,存在如下几个问题,是我团队无法解决的:Elasticsearch的插入效率问题,每秒几百条的速度是个硬伤。 支撑系统3000TPS原创 2022-01-16 23:16:48 · 1173 阅读 · 0 评论 -
实用Linux命令大全【持续补充中】
持续积累的常用Linux命令原创 2022-01-14 08:30:21 · 1398 阅读 · 0 评论 -
基于Rsyslog的日志文件采集办法
近几年笔者在生产环境中,很多日志处理场景中都适用了Rsyslog,在基于UDP的分布式日志汇聚、日志文件采集方面都有出色的发挥,“The rocket-fast system for log processing” 真不是吹的。在Rsyslog的官方文档中,发现Rsyslog已经提供了文件(imfile)输入方法,毕竟它就在系统中,拿来就用,还选什么 filebeat,logstash。原创 2022-01-10 23:09:05 · 1352 阅读 · 0 评论 -
基于Rsyslog+Kafka+Flink+Clickhouse的高性能日志采集、分析、汇聚存储方法
我们要首先解决日志文件存储和分析的问题,鉴于Nginx日志数据量大的特点,我们必须选择一种功效的分析工具(能流式分析更好)和支持大数据量写入的数据库,经过各种Baidu和谷歌,最终定型为:Kafka + Flink + Clickhouse。原创 2022-01-08 23:55:43 · 2346 阅读 · 0 评论 -
[2021年终总结之Java篇] 与Java朝夕相处的这些年
虽然Java当前存在的问题,任然是学习编程的首选语言。 Java只是一种编程工具,程序员真正要学习的发现问题、分析问题和解决问题的能力。作为程序员应该具备:始终保持一种心境,遇到Bug还会废寝忘食,解决问题后的喜悦还是那么可爱;始终有种勇气,敢于否定一切;始终有个追求,把繁琐留给自己,让用户体验更加舒心。原创 2021-12-29 22:58:39 · 363 阅读 · 0 评论 -
高并发系统负载均衡与实时监控的实用方案
Nginx+ELK是当下高并发系统负载和监控的成熟方案,网上充斥着各种教程和最佳实践。可要在生产环境部署还是会面临着不小的挑战,生产环境首要满足的条件就是高可用, Nginx至少两个节点,如果后台服务多、并发高、访问接入点多情况,那单nginx节点的数量就会很可观;Elasticsearch要集群部署至少三个节点,对内存的要求也不低;Logstash和日志需要本地采集处理,多少个日志采集点就需要部署多少套,对内存要求不低。综上,这个方案俨然就是“吃机”大户,不但主机资源采购成本高,运维更具技...原创 2021-12-24 01:06:31 · 2701 阅读 · 1 评论 -
Mac用命令行在访达中打开指定目录
Mac用命令行快速在访达中打开指定目录原创 2021-11-23 13:05:54 · 4468 阅读 · 3 评论 -
【架构选型】就微服务特性而言Kubernates可以代替Spring Cloud么?
Spring Cloud 脱去Netflix公司的系列微服务组件的外衣,基本就是Spring Boot,那么,给Spring Boot 换装Kubernetes,又是一番怎样的景象?原创 2021-02-16 11:50:26 · 1015 阅读 · 0 评论 -
【架构选型】中小型软件公司微服务架构选型建议
笔者从事发大水我的精力,从微服务开发。微服务的优势在增量微服务的特性sping cloud alibaba huawei的一些看法原创 2020-12-18 22:33:48 · 1704 阅读 · 1 评论
分享