后端

剑指offer(第2版)

4/75 03.找出数组中重复的数字 03 try1: 遍历 超时 class Solution: def findRepeatNumber(self, nums: List[int]) -> int: for i in range(len(nums)-1): for j in range(i+1,len(nums)): # 第一

RAG 架构地基工程-Retrieval 模块的系统设计分享

目录一、知识注入的关键前奏——RAG 系统中的检索综述(一)模块定位:连接语言模型与知识世界的桥梁(二)核心任务:四大关键问题的协调解法(三)系统特征:性能、精度与可扩展性的三角权衡(四)应用视角:从技术模块走向业务场景&#xff0

神秘的volatile关键字

前言 volatile关键字是面试中常问的知识点,包括三点:可见性、有序性、非原子性。接下来就说一下这三点。 JMM(Java Memory Model - Java内存模型) 每个 Java 线程都有⾃⼰的⼯作内存。操作数据,⾸先从主内存中读,得到⼀份拷⻉,操作完毕后再写回主内存 JMM可能带来可⻅性、原⼦性和有序性问题 可⻅性:是指某个线程对主内存内容的修改,应该⽴刻通知其它线程 有

第二章 性能瓶颈的分析和定位(8)

剖析工具(Profiler Tools)         至于工具,看起来是没有问题,Qt Creator已经在Analyze菜单中集成了——QML profiler,CPU, 函数(Function) Profiler,以及Memory Analyzer(内存分析器)。但遗憾的是,这些工具大多数只能在Linux上使用,因为Qt Creator使用的工具是valgrind, 其在Windows下是

使用Wireshark解密HTTPS数据包

1、Linux操作系统 解密https数据包需要设置SSLKEYLOGFILE变量,推荐写入配置文件中。 echo "export SSLKEYLOGFILE=~/.ssl.key" >> ~/.bashrc source ~/.bashrc 使用tcpdump命令抓取https的数据包。 tcpdump -i eth0 tcp and port 443 -s0 -nn -w fir

刷题小记

今天在刷牛客网华为机试的题目。 有个素数伴侣的算法,就是在给定一组数字中,例如2,3,5,6,11,13,找出能够配对最多的素数对数(素数:不能被除了1和本身之外的数整除)。比如2+3就是一个素数,这俩就是一对素数伴侣,剩下四个数以此类推找出最大配对数。 题目很好懂,如果给一个例子自己算也很好算,但就是自己的计算也没有规律可言,都是肉眼找。 思来想去找不到计算规律,查看题解才知道,原来有一个匈牙利

CPU使用率高问题排查方案

引言 Java程序在实际生产过程中经常遇到CPU使用率高的问题,那么应该如何排查问题的原因呢,本文大概描述一下排查方法。 一、排查占用CPU的进程 使用top命令,在大写打开的情况下按P键或者在大写没有打开的情况下按 shift+P键,会按照CPU使用率的高低进行排序,查找使用率最高的进程获取进程PID。 二、查找实际占用最高CPU的线程 使用命令top -H -p PID,此处PID就是上一步获