自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(536)
  • 收藏
  • 关注

原创 基于华为开发者空间,体验鲲鹏DevKit之Python字符串拼接系统性能分析

鲲鹏DevKit系统性能分析是针对基于鲲鹏的服务器的性能分析工具,能收集服务器的处理器硬件、操作系统、进程/线程、函数等各层次的性能数据,分析出系统性能指标,定位到系统瓶颈点及热点函数,给出优化建议。该工具可以辅助用户快速定位和处理软件性能问题。本实验选择Python进行字符串拼接性能分析作为示例,并借助开发者空间云主机提供的鲲鹏沙箱资源进行安装、配置,直观地展示Devkit中系统性能分析能力在实际应用开发中为开发者带来的便利。

2025-06-06 17:05:45 343

原创 Windows 下编译 OpenCV 和 OpenCV-contrib

本文介绍了如何在 Windows 系统下编译 OpenCV 和 OpenCV-contrib。希望本文能够帮助大家编译 OpenCV 和 OpenCV-contrib,更好地完成 OpenCV 的学习。

2025-06-06 13:48:05 731

原创 全网最通俗!Spring 事务传播行为用故事讲明白了!

好啦,先正经解释一下:在Spring中,事务传播行为(Propagation)定义了一个有事务的方法调用另一个有事务的方法时,应该如何处理事务上下文。也就是说:假如你现在在方法A里用了@Transactional,然后它调用了方法B,方法B也用了@Transactional,那——请问B要用A的事务吗?还是重新开一个新的?这就是传播行为来决定的。希望大家看完今天的文章,对传播行为不再只是“记得几个名字”,而是:能讲出行为的意图和场景能在项目中做出正确选择。

2025-06-06 10:17:30 446

原创 Spring事务失效的8个经典大坑

这是因为事务通知是基于Spring AOP实现的,而Spring AOP默认只拦截public方法调用。在同一个类中,非事务方法调用事务方法,或者事务方法调用另一个具有不同事务属性的方法,事务会失效。如果配置了错误的事务管理器,或者在多数据源环境中未指定正确的事务管理器,会导致事务失效。开发者在事务方法中捕获了异常但没有重新抛出,导致事务无法回滚。Spring提供了不同的事务传播行为,用于控制事务的边界。在嵌套事务场景中,内部事务的回滚没有按照预期工作。使用了正确的事务注解,但事务不生效或者出现异常。

2025-06-05 22:49:48 231

原创 vivo Pulsar万亿级消息处理实践(1)-数据发送原理解析和性能调优

Pulsar是新一代的云原生消息中间件,由Apache软件基金会孵化和开源。它的设计目的是为了满足现代数据处理和计算应用程序对可扩展性、可靠性和高性能的需求,具备存储与计算分离、节点对等、独立扩展、实时均衡、节点故障快速恢复等特性。Pulsar由四个核心模块组成:broker、bookKeeper和client(Producer和Consumer)、zk(元数据管理和节点协调)。broker接受来自Producer的消息,将消息路由到对应的topic;bookKeeper用于数据持久化存储和数据复制;

2025-06-05 15:02:02 545

原创 RabbitMQ 4.1集群部署与访问测试

为了让3个节点处于同一个集群,我们告诉其中2个节点,如rabbit@gw15、rabbit@gw16,加入到第3个节点的集群,如rabbit@gw14。重置节点会移除节点上的所有数据。消费者程序先前经haproxy连到了gw15节点,当gw15节点上的RabbitMQ实例停掉后,消费者程序自动重连到了其它节点。在gw16节点上,操作与上面是一样的,除了这次我们让节点加入rabbit@gw15节点所在的集群。如上验证所示,使用HaProxy+RabbitMQ集群这种架构,可以保证仲裁队列的高可用,验证通过。

2025-06-04 16:59:36 650

原创 【面试必问】Spring支持注入null和空字符串吗?不懂别去面试了!

如果你遇到这个问题,建议你这样答:在 Spring 中,如果使用 @Value 注入属性时,直接配置为 null 是无法得到真正的 null 的,反而会变成字符串 "null"。如果想注入真正的 null,应该使用 SpEL 表达式 @Value("#{null}")。而空字符串是可以通过配置文件正常注入的,比如 key= 或 key="" 都可以。此外,如果使用 @Autowired 注入 Bean,默认是 required 的,容器中找不到 Bean 会报错。

2025-06-04 16:13:32 522

原创 LangChain4J 教我做人:RAG API 增强原来这么香!

在正式进入主线剧情前,简单给没接触过 RAG 的小伙伴复习一下。RAG 的全称是 Retrieval-Augmented Generation,翻译过来就是“检索增强生成”。本质就是——把用户问题丢给大模型之前,先从你的知识库里找到相关资料,再让大模型结合上下文来回答问题。用户提问 → 检索相关文档 → 组合上下文 → 大模型生成回答这种方式好处多多:更准确、更私有、更可控、更高效。LangChain4J 把整个流程组件化,你可以随意组合。

2025-06-03 22:10:53 693

原创 tomcat 调优-生产环境必备

如果是多核的建议调大 startStopThreads 的值,但不超过内核数。注意一下,为什么我们这里使用的路径是"/dev/./urandom",而不是 "/dev/urandom",是因为在java 8之前的版本设置了/dev/urandom ,但是实际还是使用/dev/random,设置为"/dev/./urandom"才能正常使用 "/dev/urandom" , 这个bug在java8版本已经修复了,如果你是java7版本的话,需要按照上面设置,java8的话可以不用加 "./"。

2025-06-03 12:10:05 505

原创 全网最详细!手把手教你用 LangChain4j 打造 RAG 智能问答系统

一切皆可组合!每个组件都是小而美的 Lego 块,可以按你需求灵活组装,不论是做 Q&A、Agent、还是 PDF 阅读器,都能搞定。你可以简单用 3 行代码喂 PDF,也可以细粒度控制每一步处理逻辑,真的非常适合构建企业级 Java 应用。

2025-06-02 19:17:43 719

原创 HAProxy保持源IP

本篇文章是前一篇《Linux源进源出》的后续,有些场景在那里有更详细的介绍,为能更方便的读懂本文,建议先阅读《Linux源进源出》。负载均衡英文名称为Load Balance,其含义就是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行,例如FTP服务器、Web服务器。常用的负载均衡软件有Nginx,HAProxy,他们功能不在这里复述。负载均衡部署时一般使用反射代理方式,即由负载均衡代理真实的服务器,用户需要访问业务时,首先访问的是负载均衡,再由负载代理用户去访问服务器。

2025-06-02 11:32:10 614

原创 Linux源进源出

源进源出,也叫记录上一跳,即请求报文从某条路径进入,回应报文依然沿着同样的路径返回,而不是通过查找路由表来确定接口,保证了报文从一个接口进出。在我们正常的网络环境下,如果要保证业务正常,就是对整网的路由进行规划,确保回应报文能够回到请求发送者,这也是源进源出的效果。但是有两个场景通过路由规划来实现源进源出不现实:Linux作为互联网接入设备、应用负载均衡记录源。下面以互联网接入设备为场景介绍Linux的源进源出,应用负载均衡记录源将在后面的文章中介绍。Linux的源进源出,主要有几个动作:1。

2025-06-01 11:08:54 828

原创 网络协议相关

包含物理层、数据链路层、网络层、传输层、会话层、表示层和应用层;将其简化为网络接口层、网络层、传输层和应用层;例如OSI的物理层和数据链路层对应TCP/IP的网络接口层,主要处理MAC地址寻址和物理介质传输。

2025-05-31 22:44:45 329

原创 秒杀系统—5.第二版升级优化的技术文档三

大纲8.秒杀系统的秒杀库存服务实现9.秒杀系统的秒杀抢购服务实现10.秒杀系统的秒杀下单服务实现11.秒杀系统的页面渲染服务实现12.秒杀系统的页面发布服务实现8.秒杀系统的秒杀库存服务实现(1)秒杀商品的库存在Redis中的结构(2)库存分片并同步到Redis的实现(3)查询秒杀商品的实时库存的实现(4)消费支付成功的消息时增减库存(5)消费订单取消的消息时增减库存(1)秒杀商品的库存在Redis中的结构1.2.3.4.5.6.7.8.9.10.11.12.(2)库存分片并同步到Redis的实现首先构建库

2025-05-31 22:39:42 820

原创 Java社招面试题:Spring数据访问?我在面试官眼里差点翻车了……

朋友们,我想说:面试中问“Spring数据访问有哪些方式”,不是想考你记得几个框架,而是想看:你用过哪几个?各自适合什么场景?如果让我选,我怎么选?回头看那场面试,我其实挺感激那个面试官的。他没有直接“否掉我”,而是带着我,一步一步把我知识体系中最松散的一块补起来。所以今天这篇文章,就送给准备面试的你、或者像我一样正在“补课”的你。

2025-05-31 22:17:32 906

原创 WorkManager常见的使用说明 在包androidx.work:work-runtime-ktx

以下是。

2025-05-31 13:22:22 630

原创 来看看现在go开发岗10k的面试强度

今天继续分享热乎乎的面经,来自一家。

2025-05-31 10:44:46 914

原创 Linux策略路由

默认优先级为0的ip rule不能删除及修改,它对应的路由表为local,由系统自动产生并更新,local表中有四种目的地址,本机接口的IP,本机接口的IP所属的网段,本机接口的IP所属的网段广播地址,环回地址(127.0.0.0/8)。报文进入Linux时,首先通过prerouting链,在该链中为报文设置meta mark,报文在Linux内部的整个转发过程都会携带这个标识,后续的Rouing模块,或者forward等其它链都可以看到这个标识并把他作为一个匹配条件。

2025-05-31 09:51:01 854

原创 二叉树及建堆的详细介绍

1.调整方向- 向上调整建堆:从最上的叶子节点开始,将每个节点与其父节点比较交换,直到根节点或满足堆的性质。- 向下调整建堆:从最下的根节点开始,与它的左右子节点比较交换,不断向下调整,直到叶子节点或满足堆的性质。2.时间复杂度(向下调整建堆更优)-向上:O(N*logN)-向下:O(N)原因:二叉树最后一层占了几乎一半节点,从下向上调整节点数少,次数少,而从上向下,最后每个节点都要处理,调整次数多(不具体证明了)3.适用场景。

2025-05-30 23:19:57 677

原创 从 RNN 到 GRU、LSTM 再到 Transformer (万字详解)

transformer模型本体的编码器数量一般小于Bert中编码器的数量,导致词汇对上下文的融合能力较弱,此外,由于transformer模型本体一般都以具体的下游任务为导向,数据总量与多样性均不足,并且有明确标注的数据可能在一词多义的情况下导致过拟合(例如模型在测试时遇到低频语义时,可能错误应用高频语义),所以该方法对多义词的处理效果差,即词向量的动态性差。:单维离散,每一个维度采用二进制作为周期函数,非0即1,没有中间量,这种不连续的跳变不符合真实情况(真实的位置信息往往是连续的),不利于模型学习。

2025-05-30 21:31:32 659

原创 「Java教案」Java程序的构成

在Java中,注释用于对代码进行解释说明,提高代码的可读性,或者临时禁用某些代码。变量名 - num1,num2,product,a,b,args。①文档注释 - /** ... */(用于生成API文档);/* 注释1 /* 注释2 */ */ → 错误原因:避免嵌套多行注释。判断以下标识符是否合法:_name、$price、1user、class。编写一个Java类,包含合法标识符的变量、方法,并添加注释。1.列出代码中的所有用户自定义标识符(类名、方法名、变量名)。合法、合法、非法、非法。

2025-05-30 20:25:42 644

原创 Mooncake论文阅读笔记

最近昇腾提供的大EP PD分离推理解决方案非常火,很多开发者都开始使用了。正好这两天也看了一篇PD分离的经典论文,就是Kimi采用的PD分离架构:Mooncake。

2025-05-30 17:35:18 755

原创 尼尔森用户交互设计原则

系统应该让用户时刻清楚当前发生了什么事情,快速的让用户了解自己处于何种状态、对过去发生、当前目标、以及对未来去向有所了解,一般的方法是在合适的时间给用户适当的反馈,防止用户使用出现错误。例如:而当用户输入错误的时候,输入框会变为红色并且在下方出现红色字的错误提示,这样让用户很清楚的知道用户输入错误以及错误的原因,这样用户就知道怎么修改了,这也是容错原则的一种体现。设计的一切表现和表述,尽可能贴近用户所在的环境,将现实环境的操作功能巧妙的转化为线上功能,使其贴近用户。设置防错的机制,减少用户犯错。

2025-05-30 17:04:41 581

原创 Fusion引擎赋能:流利说如何用阿里云Serverless Spark实现数仓计算加速

行业流利说是领先的科技驱动的教育公司,公司自主研发了领先的英语口语评测、写作打分引擎和深度自适应学习系统,致力于为用户提供一整套系统性的英语学习解决方案,从听、说、读、写多个维度提升用户的英语水平。业务特征AI 打分:利用大数据和人工智能算法对用户英语口语评测、写作打分。个性化推荐:根据用户学习目标及评级,自动推荐专项和强化课程内容。数据驱动:通过分析用户画像和学习效果,优化推荐策略,提升用户满意度。数据运营:基于大数据及用户特征,提高运行效率,提升用户黏度及用户满意度。原有架构痛点。

2025-05-30 16:24:28 922

原创 AI编程在BOSS项目的实践经验分享

前言在人工智能技术革新浪潮的推动下,智能编程助手正以前所未有的速度重塑开发领域。这些基于AI的代码辅助工具通过智能提示生成、实时错误检测和自动化重构等功能,显著提升了软件工程的全流程效率。无论是初入行业的开发者还是资深程序员,都能借助这些工具快速突破技术瓶颈——新手可借此规避基础语法错误并学习最佳实践,而资深工程师则能通过智能优化建议将重复性编码工作转化为创造性技术探索,有效缩短从构思到实现的开发周期。一、AI编程的主流方式和选型。

2025-05-30 15:28:15 938

原创 OpenTelemetry × Elastic Observability 系列(一):整体架构介绍

本文介绍了 OpenTelemetry Demo 的整体架构,并演示了如何借助 Elastic Observability 实现链路追踪、日志与指标的统一观测。这是 OpenTelemetry × Elastic Observability 实践系列的第一篇文章,在后续的文章中,我们将深入探讨不同编程语言(如 Java、Go、Node.js 和 Python)的 OpenTelemetry 集成实践。

2025-05-30 13:38:22 1009

原创 如何启动Windows平台轻量级RTSP服务生成RTSP拉流URL

为满足内网无纸化/电子教室等内网超低延迟需求,避免让用户配置单独的服务器,我们在推送端发布了轻量级RTSP服务模块:简单来说,之前推送端SDK支持的功能,内置轻量级RTSP服务模块后,功能继续支持。

2025-05-30 11:56:59 583

原创 ​​Android平台GB28181历史视音频文件回放规范解读及技术实现

Android平台GB28181历史视音频文件回放,除了上述信令交互外,还需要处理RTP打包发送等,相对其他功能实现更复杂,感兴趣的开发者,可以尝试看看。

2025-05-30 11:55:12 754

原创 DistilQwen-ThoughtX:变长思维链推理模型,超越DeepSeek蒸馏模型

近年来,自然语言处理(NLP)领域以大语言模型(LLM)的出现为标志,发生了深刻变革,引领了语言理解、生成和推理任务的进步。其中,进步尤其显著的是深度推理模型的发展,如 OpenAI 的 o1、DeepSeek-R1 和 QwQ-32B 等,它们在数学问题、代码生成等复杂推理任务中表现突出。这些模型的成功很大程度上得益于使用思维链(Chain-of-Thought, CoT)的推理方式,能够模拟人类的渐进思考过程,将复杂问题化繁为简。

2025-05-30 11:50:05 965

原创 【HarmonyOS 5开发入门】DevEco Studio安装配置完全指南

随着华为鸿蒙OS的快速发展,越来越多的开发者开始关注并投入到这个新兴的生态系统中。作为开发鸿蒙OS应用的第一步,安装并配置好DevEco Studio开发环境至关重要。本文将详细介绍如何下载、安装和初步配置DevEco Studio,帮助你快速进入鸿蒙应用开发的世界。创建项目后,IDE会自动生成项目的基本结构。存放页面代码,每个.ets文件代表一个页面。存放资源文件,包括图片、字符串等。配置文件,用于配置应用的权限、组件等信息。重点关注entry,这是项目的入口模块(Ability)。src。

2025-05-30 11:13:29 639

原创 [建议收藏]RTSP|RTMP直播流录制下来的MP4文件起播慢怎么办?

以上是针对直播流录制起播慢的处理,如果录制下来的文件,需要做在线点播,这块非常必要,有问题或感兴趣的开发者,可以单独跟我沟通探讨。

2025-05-30 11:01:15 328

原创 跨平台浏览器集成库JxBrowser 支持 Chrome 扩展程序,高效赋能 Java 桌面应用

JxBrowser是 TeamDev 开发的跨平台库,用于在 Java 应用程序中集成 Chromium 浏览器。它支持 HTML5、CSS3、JavaScript 等,具备硬件加速渲染、双向 Java 与 JavaScript 连接、丰富的事件监听等功能,能处理网页保存、打印等操作,助力 Java 应用高效展示和交互网页内容。JxBrowser 现在支持 Chrome 扩展程序啦!您可以从 Chrome 应用商店或 CRX 文件中安装、更新并与几乎任何 Chrome 扩展程序进行交互。

2025-05-30 11:00:33 860

原创 k8s1.28版本开启临时容器功能及创建临时容器

临时容器特别适合包含主容器剥离出来的一些调试工具,在需要的时候临时注入到目标pod中。目前在pod中添加临时容器之后,还无法删除,同时如果这时候临时容器已经退出,会导致无法再次attach,也不会被拉起(临时容器不支持probe什么的),

2025-05-30 10:45:35 925

原创 k8s部署 | 5月征文21

Swap环境配置(所有主机操作)网络参数调整(所有主机操作)部署docker软件源。docker加速器配置。master节点初始化。harbor仓库定制。harbor仓库测试。node节点加入集群。

2025-05-30 10:26:16 1017

原创 用trae完全自动化开发一款网页版的俄罗斯方块游戏

我使用的是自定义的大模型,因为我本来以为通过api调用是可以用上最新版本的deepseek R1的。

2025-05-29 17:20:10 722

原创 详解 BCGSoft Professional Editor:MFC 应用开发全流程的得力助手

示例功能演示内容即通过此功能生成,充分展示了其在实际应用中的便捷性。1.IntelliSense® 高级支持:提供了类似 Microsoft Visual Studio 的代码补全和提示功能,在开发过程中,能智能地预测开发者的意图,自动提示可能的代码选项,大大提升了开发效率,减少了代码输入错误。1.CBCGPEditView 类:继承自 MFC 的 CView 类,能够轻松集成到 MFC 文档 - 视图架构中,与现有的 MFC 开发框架良好兼容,降低了开发者的集成难度,节省了开发时间和成本。

2025-05-29 16:09:58 374

原创 一文掌握 Java 垃圾回收器的选择与调优实战

GC(Garbage Collection)是 JVM 的核心机制之一,负责自动回收不再使用的对象。GC 暂停会影响系统响应时间频繁 GC 会降低吞吐性能堆内存配置不合理会引发 OOM💡 优秀的 GC 策略 = 稳定的系统表现 + 更少的内存浪费。

2025-05-29 15:45:46 373

原创 Java与Python优劣分析及两者联姻收奇功

Python 和 Java 作为两种广泛使用的编程语言,在大多数场景下都能实现相似的功能。但由于语言设计初衷、生态系统以及社区偏好的不同,Python 在某些特定领域确实具有 Java 难以比拟的天然优势。

2025-05-29 15:41:37 323

原创 vue中使用wangeditor富文本编辑器

需要知道富文本编辑器是所见即所得的文本编辑器,简单来说就是文本上面写的行内样式,那我们该怎样保存这些行内样式呢,在这里我是写成了组件的形式。return中写上如下代码,需要注意的时上传图片后,后端必须返回url图片的链接,否则编辑器中不会显示图片。研究一番发现弱国想要怎加或者修改编辑器的功能首先要获取这个功能的key。到这里其实基本功能已经实现了,那我们怎么保存,编辑器中的内容呢。这个时候编辑器的功能已经实现了 如下图。这个时候就可以看到每个功能的key了。就可以实现你想要的功能了,如下图。

2025-05-29 11:33:52 291

原创 秒杀系统—3.第二版升级优化的技术文档一

中:BossEventBus负责把事件分发给不同的WorkEventBus,每个WorkEventBus就是⼀个事件的通道Channel,每个Channel会关联不同的自定义的Listener。如果要扛1w的秒杀请求,那么至少用15台4核8G的机器部署秒杀系统。即使一个请求发出后刚好遇到JVM正在进行Young GC需要消耗50ms,那么在这50ms内请求会被STW,而在这50ms后请求会开始正常工作,基本一次请求还是可以控制在200ms内,所以Young GC多一点没关系。来实现高效使⽤CPU缓存。

2025-05-29 11:06:40 704

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除