自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Transformer神经网络模型

Transformer是一种基于自注意力机制的序列转换模型,通过并行处理解决RNN的顺序计算瓶颈。其核心架构包含编码器和解码器:编码器通过多头自注意力层捕获全局上下文,解码器结合编码输出逐步生成目标序列。位置编码保留序列顺序信息,残差连接稳定训练过程。该模型突破性地实现了长距离依赖建模和动态上下文表征,如"苹果"在不同语句中获得差异化表示。其并行计算特性显著提升训练效率,注意力权重矩阵还提供模型决策的可解释性。Transformer已成为NLP等领域的基础架构,推动机器翻译、跨模态理解等

2025-10-20 17:00:00 1240

原创 Spring依赖注入②

本文介绍了Spring框架中的两种依赖注入方式:自动装配和集合注入。自动装配包括四种方式:按类型(常用)、按名称、按构造方法和不启用自动装配,分别通过类型匹配、名称匹配、构造函数参数匹配或手动配置实现。集合注入则针对不同类型的集合属性(Set、Array、List、Map、Properties)提供了对应的XML配置方式,将多个对象或值注入到目标对象的集合属性中。两种方式各有特点:自动装配简化配置但需注意类型唯一性,集合注入则适合批量注入场景。

2025-06-05 09:30:00 601

原创 Spring依赖注入

本文介绍了依赖注入的两种主要方式:setter注入和构造器注入。setter注入分为引用类型和简单类型两种,通过<property>标签的ref/value属性实现;构造器注入也支持这两种类型,使用<constructor-arg>标签配置。文章还说明了参数适配的三种方法(type、index及混合使用),并建议优先选择setter注入方式,第三方技术则根据具体情况选择。两种方式都需要提供相应的方法(set方法或构造方法)来接收注入的值。

2025-06-04 09:30:00 541

原创 Spring核心概念

Spring框架采用模块化设计,包含核心容器(Core Container)、AOP、数据访问(DataAccess)等六大模块。其核心思想是控制反转(IOC)和依赖注入(DI),通过IOC容器管理Bean的生命周期。Bean有三种实例化方式:构造方法、静态工厂和实例工厂。FactoryBean接口可实现复杂对象的定制创建。Bean生命周期包括实例化、属性赋值、初始化、使用和销毁五个阶段,可通过XML配置或接口实现生命周期控制。框架通过将对象创建权转交容器和自动依赖绑定,实现了组件间的充分解耦。

2025-06-03 09:30:00 1272

原创 Jmeter逻辑控制器、定时器

JMeter逻辑控制器与定时器使用指南 逻辑控制器部分介绍了IF控制器(条件执行)、循环控制器(重复请求)和ForEach控制器(遍历变量)的使用方法,包括参数配置和应用场景。定时器部分重点讲解同步定时器(模拟并发)和常数吞吐量定时器(控制请求速率)的功能实现。文档详细说明了各种控制器的添加位置、参数设置和操作步骤,并比较了线程组循环与控制器循环的区别,为性能测试提供完整的配置方案。

2025-06-02 10:00:00 1167

原创 Jmeter属性、自动录制脚本、直连数据库

本文介绍了JMeter的两大核心功能:跨线程数据传递和脚本录制。在数据传递方面,通过_setProperty函数和property函数实现跨线程组调用,并针对不同响应数据格式(JSON/HTML)提供提取器选择建议。在脚本录制部分,详细说明了通过HTTP代理服务器自动录制Web请求的步骤,包括代理配置、浏览器设置和常见问题排查。最后简要提及JMeter直连数据库的四大应用场景(参数化、断言、数据准备和清理)以及配置流程,包括驱动加载、连接池设置和SQL执行方法。

2025-05-29 09:30:00 885

原创 Jmeter断言、关联

JMeter测试工具中的断言与关联功能详解:断言用于自动验证请求响应结果,包括响应断言(支持文本/正则匹配)、JSON断言(验证JSON结构)和持续时间断言(检查响应时间)。关联功能则处理请求间的数据依赖,提供三种提取器:正则表达式提取器(通用文本提取)、XPath提取器(HTML/XML数据提取)和JSON提取器(JSON数据提取)。这些功能通过配置引用名称、匹配规则等参数,实现自动化测试中的结果验证和数据传递,提升测试效率和准确性。

2025-05-28 09:30:00 1021

原创 JMeter参数化

JMeter性能测试摘要:JMeter通过线程组模拟用户并发操作,支持三种线程组类型(SetUp/普通/TearDown)。HTTP请求支持GET(URL传参)和POST(请求体传参)两种方式。参数化方法包括:1)用户定义变量(全局固定值);2)用户参数(不同用户不同值);3)CSV文件(多用户多循环不同值);4)函数生成器(自动生成序列值)。其中CSV文件设置最灵活但需手动准备数据,而_counter函数适合简单序列场景。各方法通过${变量名}格式引用参数,监听器可查看测试结果。(149字)

2025-05-27 09:30:00 1245

原创 性能测试②

性能测试流程包括六个关键阶段:需求分析(明确指标和场景)、测试计划(环境及工具准备)、用例设计(选择测试类型并开发脚本)、测试执行(逐步加压并监控)、性能分析与调优(定位瓶颈并优化)、报告总结(输出测试结果和建议)。JMeter工具使用涉及多种元件,如取样器发送请求,前后置处理器处理参数和响应,断言验证结果等。元件按作用域和执行顺序工作,配置元件优先,取样器为核心,其他元件服务于父节点或后代节点。该流程系统地验证系统性能并指导优化。

2025-05-26 09:30:00 834

原创 自动化测试②

3.4 关闭窗口4.等待1)强制等待:2)隐式等待:3)显示等待:补充:自动化出现NoSuchElement错误5.浏览器导航1)打开网站2)浏览器的前进、后退、刷新6.弹窗7.文件上传8.无头模式(默认为有头模式)9.页面加载策略

2025-05-25 17:12:32 1028

原创 性能测试相关概念

一、性能测试概念:二、性能测试和功能测试1.不同:2.关系:三、性能测试分类1.基准测试2.负载测试3.稳定性测试4.压力测试5.并发测试四、性能测试的关键指一、基础性能指标二、资源利用率指标三、稳定性指标四、数据库专项指标

2025-04-17 09:30:00 987

原创 自动化测试

一、概念:通过自动化测试有效的减少人力的消耗的同时也提高了测试的质量和效率。(人工测试结果是不可控的,机器测试结果是可控的)。测试人员编写自动化测试脚本。增加新的功能:测试人员需要同步增加对应的自动化脚本。自动化测试报错:测试人员需要维护并解决自动化脚本问题。自动化的主要目的是用来回归测试。

2025-04-16 09:30:00 1611

原创 软件测试用例

软件中涉及到特性很多,通过编写测试用例,可以想到测试哪些内容。通过一次又一次的更新修改将测试用例完成,功能覆盖更高即可。1)常规思考+逆向思维+发散性思维2)万能公式:功能测试+界面测试+性能测试+易用性测试+兼容性测试+安全测试

2025-04-15 09:30:00 1197

原创 软件测试Bug相关

一、概念:1)当且仅当规格说明是存在的并且正确,程序与规格说明之间的不匹配才是错误。2)当需求规格说明书没有提到的功能,判断标准以最终用户为准:当程序没有实现其最终用户的功能要求时,就是软件错误。

2025-04-14 09:30:00 1925

原创 软件测试分类

在受控环境下由开发团队或内部用户(如QA、产品经理)进行的早期测试,通常在开发末期或预发布阶段执行。

2025-04-13 09:30:00 898

原创 测试用例设计方法

测试用例设计方法,一、基于需求的设计方法二、具体的设计方法1、等价类2.边界值3.场景法4.正交法5.判定表法6.错误猜测法

2025-04-12 09:30:00 839

原创 TCP流套接字编程②

客户端发送的数据确实发了,服务器也收到了,只不过数据在服务器的接收缓冲区。一旦第一个客户端退出了,回到第一层循环,继续执行第二次accept,继续执行next就能把之前缓冲区的内容给读出来。如果第一个客户端退出了,第二个客户端之前发的请求啥的就立即被处理,没被丢掉。但是存在问题,如果发送的数据很少,由于缓冲区还没满,数据就呆在缓冲区里。,服务器这边的代码能感知到,对应的Scanner能够在hasNext中返回false。针对这个连接再进行一次循环,客户端请求到了之后,scanner.hasNext返回,

2025-04-11 09:30:00 1040

原创 TCP流套接字编程

1.Server Socket 该类是创建TCP服务器Socket的API => 这是Socket类,对应到网卡,但是只给服务器使用2.Socket 该类是客户端Socket,或服务器接收到客户端建立连接(accept方法)的请求后,返回的服务器Socket。 => 对应到网卡,既可以给服务器使用,又可以给客户端使用。

2025-04-10 09:30:00 1048

原创 UDP socket②

UDP总结:1.api的使用 DatagramSocket send、receive DatagramPacket 构造方法2.服务器、客户端基本流程服务器:主循环(处理若干个请求)客户端:主循环:从用户这里读取多组输入,通过send把请求发给服务器。服务器:读取请求并解析,receive读取数据,把读到的数据构造成String。根据请求构造响应,具体业务逻辑的体现。把响应返回给客户端,send要给发送的数据报中设置ip和端口客户端:通过receive把服务器返回的响应读取出来,把数据显示到界面上

2025-04-09 09:15:00 1098

原创 UDP socket

上述代码中,可以看到UDP是无连接的通信。UDP socket自身不保存对端的IP和端口,而是在每个数据报中有一个。另外代码也没有“建立连接”“接受连接”操作。面向数据报:send和receive都是通过Datagram Packet为单位全双工:一个socket既可以发送也可以接收。

2025-04-08 09:30:00 2776

原创 HTTP请求-请求行

请求行(方法,URL,版本号)

2025-04-07 09:22:23 917

原创 HTTP请求-请求头

浏览器的容错能力很强的程序,即使返回的数据有问题,也能尽可能正确的显示出来。,HTTP底层也是基于TCP,连续传输多个HTTP数据报,此时接收方这边的接收缓冲区里就会积累多个包的数据,应用程序在读取这些数据的时候就需要明确包之间的边界。如果有body,空行就不是结束标记了,从空行开始读body,body要读多长就取决于Content-Length,读完之后,这个包就结束了。URL上已经有HOST了,这里的Host和URL中的ip地址和端口,绝大多数情况下是一样的,少数情况可能不同。

2025-04-06 09:30:00 870

原创 网络编程(跨主机通信)

传输层主要涉及的协议是TCP/UDPTCP:有连接,可靠传输,面向字节流,全双工UDP:无连接,不可靠传输,面向数据报,全双工

2025-04-05 09:30:00 815

原创 HTTP协议

HTTP 3.0基于UDP实现了一系列的更复杂的机制,可以确保可靠性,也不怕大数据包。TCP/UDP这样的协议,具体是那个模式,取决于代码实现,完全可以实现出其他的效果。HTML还会依赖其他的css和js,图片等,HTML被浏览器加载后,有会触发一些其。用来fq的代理,本质上是通过一个可以被访问的境外服务器,部署代理服务器的。,往往是访问一个网站的入口请求,选中这个请求并双击,此时就能看到明细。(一般是压缩响应,请求不太需要)压缩和解压过程是消耗时间和cpu的,网络传输中,带宽是一个比较贵的硬件资源,

2025-04-04 09:30:00 1428

原创 软件测试基础概念2

软件测试的流程:1. 需求分析2. 测试计划3. 测试设计4. 测试环境搭建5. 测试执行6. 测试报告与总结7.上线8. 运行与维护,实际工作中,上线也分为多个步骤:沙盒,小流量,全流量,全线上。

2025-04-03 09:15:00 987

原创 软件测试基础概念

3)迭代计划会议:项目团队对每一个story进行任务分解,标准为完成该story的所有任务,每个任务都有明确的负责人,并完成工时的初估计。5)演示会议:迭代结束之后,召开演示会议,相关人员都受邀参加,团队负责向大家展示本次迭代取得的成果,po整理反馈,形成新的story。项目组(产品经理,前端开发,后端开发,测试,交互,设计)均为产品质量负责。输出测试用例,测试设计与计划,测试报告等文档。6)回顾会议:项目团队对本期迭代进行总结,发现不足,制定改进计划,下一次迭代继续改进,以达到持续改进的结果。

2025-04-02 09:15:00 1207

原创 HTTPS

上述讨论的过程,所谓的安全也不是绝对的安全,上述的安全本质是基于非对称加密体系。但是非对称加密体系也不是无懈可击的,只不过破解这样的加密体系,需要的计算量是很大的,超出了现有计算机的算力上限。后续的通信,服务器和客户端之间,仍然会使用key作为加密的密钥,此时后续传输的各种数据就都可以被黑客解密了。返回证书时,证书数据也经过了黑客设备,但是黑客不能修改证书的公钥为自己的公钥,客户端拿到证书后,会针对。的,黑客申请的证书的域名和服务器的域名肯定不一样,客户端拿到证书后,发现域名不同,直接就知道证书时假的了。

2025-04-01 09:15:00 1584

原创 Java虚拟机③

3.垃圾回收机制(GC)C语言中动态内存管理,malloc申请内存,free释放内存。此处申请到的内存,,这点对于服务器程序不太友好。服务器每个申请去malloc一块内存,。=>实际开发中,很容易出现free不小心忘记调用,或因为一些情况没有执行到。例如:函数中间if return /抛出异常了。Java就属于早期就引入了这样的语言。引入这样的机制之后,就不需要手动来释放了,,某个内存是否会继续使用;。

2025-03-31 09:15:00 805

原创 Java虚拟机②

​​​​JVM的类加载机制:1.加载2.验证3.准备4.解析5.初始化。双亲委派模型(加载环节)描述了如何查找.class文件的策略。   上述设定的最主要的目标就是为了确保这几个类加载器之间的优先级按照上述的顺序,假定在代码中自己定义一个java.lang.String这样的类,最终程度的执行结果,自定义的类不会被JVM加载。

2025-03-30 09:15:00 926

原创 Java虚拟机

JDK包含JRE和开发工具。JRE包含JVM和运行 Java 程序所需的库。JVM是运行 Java 字节码的虚拟机。

2025-03-29 09:15:00 1098

原创 TCP的特性⑤

粘包问题” => 包指的是“tcp传输的数据到了接收方之后,接收方要根据socket api来read出来,read出来的结果就是应用层数据包(由于整个read过程非常灵活,可能会使代码中无法区分出来当前的数据是此处假定,这三个tcp数据报都是(其实一个tcp数据报也可以接收缓冲区应用程序调用read读取数据,由于此处是字节流的,非常灵活。。读出数据之后,就需要把这里的数据转成应用层数据包(应用层要做的事情),然后这个数据才能被正确的使用。解决方法的关键 =>1.通过。

2025-03-28 09:15:00 1924

原创 TCP的特性④

刚开始传输的数据,速率是比较小的,采用的拥塞窗口也就比较小,此时,网络的拥堵情况未知,如果一上来就采用很大的拥塞窗口,可能让本就不富裕的网络带宽更难。这里引入了一个“阈值”,当拥塞窗口达到了阈值之后,指数增长就成了线性增长。如果上述传输的数据没有出现丢包,说明网络还是畅通的,要增大窗口大小,此时,增大方式就是按照指数来增长(*2)如果立即返回ack,此时接收缓冲区的大小相对较小的(典型场景:发送发不停的发,接收方不停的取)。线性增长也是一直在增长的,积累一段时间后,传输的速率可能太快了,此时就会引起丢包。

2025-03-27 09:15:00 2018

原创 TCP的特性③

确认应答机制下,每次发送方收到一个ack才会发下一个,导致大量的时间浪费在等待ack上了。此处等待消耗的时间成本是非常多了。希望保证可靠传输的前提下,能够让效率尽量高点,让消耗的时间成本尽可能少点。滑动窗口可以在保证可靠传输的基础上,提高效率(降低损失,不是增加速度)

2025-03-26 09:15:00 1607

原创 TCP的特性②

(建立连接,断开连接)

2025-03-25 09:15:00 824

原创 TCP的特性①

TCP的确认应答是确保TCP可靠性的最核心机制。超时重传是确认应答的补充。超时是会重传的,重传也不是无限的重传(有一定的策略)1.重传次数是有上限的,重传到一定程度,还有ack,就尝试重置连接,如失败,则放弃连接。2.重传的超时时间阈值也不是固定不变的,随着重传次数的增多而增大(重传频率越来越低)随着重传的次数的增加,包到达对方的概率也会大大增加。

2025-03-24 09:15:00 899

原创 封装和分用

A给B发消息。   应用程序从文本输入框获取到用户输入的hello,把这个字符串构造成一个应用层的数据包。传输层涉及到的协议:最重要的是TCP和UDP。网络层涉及到最核心的协议:IP协议。数据链路层涉及到最核心的协议:以太网(“以太”:表现网络数据传输的介质)

2025-03-23 09:15:00 455

原创 网络原理①

每个程序在进行网络通信过程中,都需要有一个端口(可能是用户手动指定的,也可能是系统自动分配的)用于在局域网(LAN)内连接多台设备(如计算机、打印机、服务器等)。用于连接不同的网络(如LAN和WAN),并在网络之间转发数据包。根据MAC地址(硬件地址)转发数据帧,实现设备之间的高效通信。根据IP地址(逻辑地址)决定数据包的传输路径,实现跨网络通信。同一个主机上,程序使用的端口不能冲突(端口号也是一个整数)注:进行一次通信的过程中,涉及到IP和端口各有两个。网络通信过程中,需要涉及到的细节是非常多的。

2025-03-22 09:15:00 962

原创 数据库中的锁机制

     数据库中的 锁机制 是用于管理并发访问的重要工具,确保多个事务同时操作数据时,数据的一致性和完整性得以维护。锁机制通过限制对数据的访问,防止并发事务之间的冲突。

2025-03-21 09:00:00 1192

原创 数据库中的事务相关概念

在数据库中,(Transaction)是指一系列操作组成的逻辑单元,这些操作要么全部成功执行,要么全部不执行,以确保。事务是数据库管理系统(DBMS)中非常重要的概念,主要用于,保证数据的正确性。

2025-03-20 09:00:00 1273

原创 文件 IO

文件”是一个广义的概念。①硬盘上的②硬盘上的(文件夹)很多的硬件设备,也是被操作系统抽象成文件,如:键盘,显示器,网卡。fprintf fscanf -> 针对文件来输入输出。fprintf(STDOUT,"hello")=> 这个代码也可以在屏幕上显示,效果等同于printf顺序读写:有一个很大的文件,要把文件整体复制一下 =>随机读写:某个目录中,有很多(每个文件都很小,文件数目特别多)要把整个目录都拷贝一下。=>=> 软件的特性受限于硬件设备,硬件设备的特征受限于物理学原理。

2025-03-19 09:00:00 1069

空空如也

空空如也

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

TA关注的人

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