- 博客(118)
- 收藏
- 关注
原创 Redis缓存
使用redis作为mysql缓存时候,当redis刚刚启动动或者redis大批的key失效,这时候由于redis是空的,为了避免大量请求直接打入mysql中,因此会提前把一些热点数据准备好,放入redis中,这些热点数据不一定精准,但是可以后期慢慢调整,可以为mysql挡住大多数的请求。服务器每次处理一个请求,都要消耗硬件资源包括cup,宽带,内存,硬盘,本身的资源就是有限的,而关系型数据库这种复杂sql的查询消耗资源相对于redis的操错大很多,一旦高并发上来,就会把资源消耗完,从而导致宕机。
2025-08-16 22:40:47
551
原创 主从复制+哨兵
1.slaveof no one配置项断开,这时候从节点会自动晋升为主节点2.主节点挂掉,这时候从节点不会晋升为主节点。必须人为干预恢复问题:但是人为干预要考虑各自环境问题,而且人不是24小时都能监控的,可以因为人为干预造成更大问题,所有这时候引入哨兵模式。
2025-08-16 18:48:41
336
原创 Redis的主从复制
这种结构解决了从主节点读的压力,但是写的压力没有解决,我们可以把主节点的aof关掉,开启从节点的aof,每次主节点数据同步到从节点数据,从节点记录aof文件,这样减少了主节点持久化的压力。本质还是多部署几台redis,然后其中一台为主节点,其余为从节点,这里主节点主要负责写的过程,而从节点主要负责读的工作,从节点的数据保证和主节点的一致,其实在实际中,我们读的频率是要高于写的频率的,这样也减轻了服务器的压力,即使从节点一个挂掉,还有其他从节点顶上。Offset是-1 那就是全量复制,反之是部分复复制。
2025-08-10 12:01:55
871
原创 Redis的事务
比如夜市吃烤摊,我朋友让我先去点串,我点了一部分后,让服务员等一会再考,我朋友来了发现不够吃又点了一些,这时候再让服务员去考,这样保证了我和朋友点的串是同时考的,并不会出现先烤我的串,中间有烤别的人串,再考朋友的串的情况。就是把一整套命令整体打包,要么全部执行,要么全部不执行,而redis的事务相比较mysql事务要弱一点,redis这里不管其中打包的命令是否有执行失败的,即使执行失败,也不会回滚,而mysql的事务必须全部成功执行,如果某条操作出现失败,整体都会进行回滚操作。开启事务:MULTL。
2025-08-08 17:05:04
319
原创 校园幸运抽(抽奖系统)测试报告
"校园幸运抽"是一款基于SSM(Spring+SpringMVC+MyBatis)框架构建的智能抽奖平台,专为校园场景设计,集活动运营、数据安全和高并发处理于一体。系统采用Spring Boot3现代化架构,融合多种前沿技术,为师生提供趣味性强、公平透明的抽奖体验,同时为运营者提供高效的管理工具。该项目在功能方面表现良好,测试过程中发现的问题均已修复,但由于云服务器资源不足,链接不够稳定,以及项目逻辑中设置了多开限制,因此暂时未能进行完整的压力测试。
2025-07-12 23:23:17
551
原创 软件测试的分类
软件测试分类有助于根据不同开发阶段采用合适的测试方法,提高效率。主要分类包括:按测试目的(界面、功能、性能、可靠性、安全性、易用性测试);按执行方法(静态和动态测试);按测试方法(白盒、黑盒、灰盒测试);按测试阶段(单元、集成、系统、验收测试);以及按实施组织(α、β、第三方测试)等。每种测试方法各有侧重,如白盒测试关注代码逻辑,黑盒测试验证功能需求。合理运用多种测试方法可全面保障软件质量。
2025-05-30 17:45:26
958
原创 今天遇到的bug
get方法一般是用来获取数据的,一般是查询数据,所有可以用字符串查询这种方式去精准获取数据页面,传的参数一般也在URL中直接传递给服务器,而post这种方式更适合于登录验证这些场景,他把参数放在了Body中。我们这里用的RquestBody接收参数,所有请求的参数需要用在body体中接收,但是我们用postman,用的是字符串查询方式传参,参数传过去,body体是空的,所有我们要用body传参的方式就好了。传参成功,这里多亏我老师直接指出了我的问体所在,要不然还头疼着呢。后来我才发现,问题所在。
2025-05-29 18:10:10
858
原创 UDP和TCP特征的详解
无连接:UDP只要知道对方的IP地址和端口号,无需连接就可以发送信息。类似于发短信。不可靠传输:UDP没有确认机制也没有重传机制,发送出去的信息如果因为网络故障或者其他原因导致,消息没有成功传达,UDP不会给出任何错误的应答。面向数据报:UDP不会数据大小的控制,应用层给传输层多少数据(不超过64kb),UDP都会原封不动的一次性发送给接收方,比如有一百个字符,UDP只会一次性发送完,不会拆分为十个字符十个字符的形式循环发送。如果数据超过了64kb,发送就要手动分包,接收方就要手动的拼接的包。
2025-05-26 16:38:34
1441
1
原创 TCP和UDP
TCP与UDP协议的主要区别:TCP是面向连接的可靠传输协议,通过三次握手建立连接,保证数据顺序和完整性,适合重要数据传输(如文件传输);UDP是无连接的不可靠协议,传输效率高但可能丢包,适合实时性要求高但允许少量丢包的场景(如视频会议、共享单车定位)。网络编程中,UDP通过DatagramSocket和DatagramPacket实现数据传输,文中给出了UDP回显服务器和客户端的Java实现代码示例,并展示了如何扩展为字典查询功能。
2025-05-25 15:43:29
882
原创 OSI七层模型和TCP/IP的五层(四层模型)
分层是一种将复杂系统或过程分解为多个独立层次的方法,每一层专注于特定的功能或任务。例如,在餐厅中,客户、服务员、前台和后厨各自负责不同的环节,确保流程有序进行。在计算机科学中,分层同样重要,如Java中的代码层、编译层、JVM层和操作系统层,每一层通过接口与其他层交互,使得开发者只需关注自身任务,而无需深入了解底层细节。分层的主要作用是提高效率,简化复杂性,并保护系统免受恶意破坏。OSI七层模型和TCP/IP五层(四层)模型是网络通信中的典型分层架构,分别将通信过程划分为不同层次,如应用层、传输层、网络层等
2025-05-18 23:46:34
954
原创 关于软件测试开发的一些有趣的知识
测试是通过各种手段检测物品或软件的特性,以判断其是否满足预期需求。在生活中,如购买衣服时,我们会进行外观、尺码、材质和价格测试。在软件开发中,测试包括语法、逻辑和健壮性测试,以确保软件质量,避免用户流失。软件测试的目的是验证软件功能、性能等是否满足用户需求,从而提升用户体验和企业收益。测试岗位分为软件测试开发工程师和测试工程师,前者侧重于开发测试框架和脚本以提高效率。测试与开发的区别在于,开发关注软件功能的实现,而测试则关注软件特性的验证和缺陷的发现。优秀的测试人员需具备综合能力、自动化测试能力、编写测试用
2025-05-17 21:17:42
867
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅