我的代码背叛了我?为什么 a=1, b=2,最后x和y都等于0?

博主头像 随着多核架构的普及,并发编程已成为开发者不可或缺的核心技能。在学习过程中,开发者常会遇到这样的困惑:正确编写的单线程代码,为何在并发环境下可能瞬间失效?看似有序的语句执行后,为何结果却混乱不堪?这些问题,都指向了编程领域的一个关键课题——内存模型。 本文以Java语言为例,剖析共享数据在并发环境中的 ...

复杂业务系统线上问题排查过程

博主头像 背景 5月份,我接手了一个业务比较复杂的系统,原来负责这块的是我的同事,离职了,这期间有问题或者开发任务,都是一个合作方同事在负责,我由于手里事情太多了,暂时没时间管这套系统。 这套系统的客户是股票投资者,股票投资者可以将一部分持仓的股票和资金授权交给我们代为操作,我们这边也不是人工操作,而是由量化 ...

在SqlSugar的开发框架的Vue3+ElementPlus前端中增加对报表模块的封装处理,实现常规报表的快速处理

博主头像 在我们开发业务系统的时候,往往都需要一些数据报表进行统计查看,本篇内容介绍如何在实际的前端中对报表内容进行的一些封装操作,以便提高报表模块开发的效率,报表模块的展示主要是结合Vue3中比较广泛使用的echarts图表组件进行展示。 在前端界面开发中,良好的组件封装和使用,可以给我们提供更好的开发效率... ...

K8s Pod 多种数据存储方式

博主头像 由于容器的生命周期可能很短,会被频繁地创建和销毁。那么容器在销毁时,保存在容器中的数据也会被清除。这种结果对用户来说,在某些情况下是不乐意看到的。为了持久化保存容器的数据,kubernetes引入了Volume的概念。 Volume是Pod中能够被多个容器访问的共享目录,它被定义在Pod上,然后被一 ...

【机器人】—— 3. ROS 架构 & 文件系统

博主头像 1. ROS 架构 到目前为止,我们已经安装了 ROS,运行了 ROS 中内置的小乌龟案例,并且也编写了 ROS 小程序,对 ROS 也有了一个大概的认知,当然这个认知可能还是比较模糊并不清晰的,接下来,我们要从宏观上来介绍一下 ROS 的架构设计。 立足不同的角度,对 ROS 架构的描述也是不同的 ...

【缓存与数据库双写一致性的终极指南】旁路缓存下,我们如何避免“脏数据”灾难?

博主头像 在旁路缓存策略(Cache-Aside Pattern)下保证缓存与数据库的双写一致性是一个经典的分布式系统挑战。核心难点在于 操作的时序、失败处理以及并发竞争。没有绝对完美的方案,需要根据业务场景(对一致性的要求级别、性能容忍度)选择合适的策略。 以下是几种常见的方案,按一致性强度从弱到强排列: ...

AI 应用开发的陷阱:MCP 的致命问题

博主头像 将大语言模型(LLM)与外部工具连接,是扩展其能力的主流方法。通过给模型提供工具,它就能查询数据、调用 API,完成更复杂的任务。 提供工具时,可以使用 MCP 模式,简单来说:由一个外部的、集中的工具服务来提供所有工具,开发者写的应用直接调用这个服务,让它去和模型沟通。 这样做表面上简化了开发,开 ...

故障处理:Oracle 19.20未知BUG导致oraagent进程内存泄漏的案例处理

我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢! 由于博客中有大量代码,通过页面浏览效果更佳。 今天朋友在做数据库巡检过程中发现一个19.20的备库环境中oraagent进程存在内存的异 ...

面试时该如何做好自我介绍呢?附带介绍样板示例!!!

博主头像 前言 最近帮公司面试了不少 .NET 开发者,发现很多候选人在让他在面试前做一个简单的自我介绍的时候,介绍的内容都很多,然后有些就是直接复述一遍简历上已经有的内容(比如说:对接简历上的项目一个一个的念,有三四个项目念完十分钟都过去了),遇到这种自我介绍冗长且直接复述简历上项目的候选人我会直接打断,这 ...

MySQL 21 为什么我只改一行的语句,锁这么多?

博主头像 上篇文章中,介绍了间隙锁和临键锁,但并未说明加锁规则。本文首先介绍加锁规则,由于间隙锁在可重复读隔离级别下才有效,因此接下来的内容默认在可重复读隔离级别下。 加锁规则(限5.x系列<=5.7.24, 8.0系列<=8.0.13): 原则1:加锁的基本单位是临键锁,是一个前开后闭区间; 原则2:查找过 ...

【机器人】—— 2. ROS 集成开发环境配置

博主头像 和大多数开发环境一样,理论上,在 ROS 中,只需要记事本就可以编写基本的 ROS 程序,但是工欲善其事必先利其器,为了提高开发效率,可以先安装集成开发工具和使用方便的工具:终端、IDE.... 1.安装终端:Terminator 在 ROS 中,需要频繁的使用到终端,且可能需要同时开启多个窗口,推 ...

学习笔记/DP:wqs 二分概述

博主头像 1. 概述 1.0. 概述 wqs 二分,即王钦石二分,是一种通过降维来优化 dp 的处理手段。在 OI 中,wqs 二分最常用于处理一类 2D/1D dp,常搭配斜率优化、决策单调性等其他 dp 优化方式使用,较为套路。 1.1. 适用题型 wqs 二分处理的题型: 选取若干个(组)物品,数量有限 ...

面试官:聊聊RAG的执行流程?

博主头像 RAG、MCP 和 FunctionCall 等都是 AI 的核心技术,同时也是面试中最长问的知识点,那么今天就来看下:RAG 技术及其执行流程。 概述 RAG(Retrieval-Augmented Generation,检索增强生成)是指在将原始问题发送给大语言模型之前,先通过外部知识库将数据进 ...

底层的告警,上层业务应该收吗?

博主头像 有朋友问:我是业务应用的 DEV 或 SRE,我的应用依赖了底层服务和基础设施,比如依赖基础网络、Kubernetes、MySQL、收银台服务,那这些基础服务如果出问题,我应该收告警吗?夜莺里有个订阅规则,是不是就是为此设计的? 本文讲讲笔者的个人理解,欢迎大家留言一起探讨实践经验。 首先,请大家看 ...

Kubernetes禁用Swap的深度解析:资源控制、性能与稳定性的基石

博主头像 1.Swap介绍 Swap Space 是开辟在操作系统磁盘上的一块区域,此块区域可以是一个分区,也可以是一个文件,或者是他们的组合。基于其场景特性,也就是说:当操作系统物理内存不够用时,Linux 系统会将内存中不常访问的数据同步至 Swap 上,这样系统就有更多的物理内存为各个进程服务;反之,当 ...

<1···626364···100>