- 博客(26)
- 收藏
- 关注
原创 芋道项目《yudao-boot-mini-master》docker-compose部署
【代码】芋道项目《yudao-boot-mini-master》docker-compose部署。
2024-12-31 13:42:37
249
原创 基于SpringBoot + Vue的预约购票出行服务系统
系统测试主要是为了避免用户在使用时发生问题,增强用户体验感,为了不影响用户的使用,我们需要从多角度、多思路去考虑系统可能遇到的问题,通过不同的模拟场景来发现缺陷并解决问题。登录功能测试方案:当需要登入该系统时,通过账户密码等功能点进行验证,用户在输入时需要输入与数据库内存储的数据匹配的内容,当其中某项输入错误时系统将提示输入错误。以确保系统流程的正确性。选中删除用户 系统询问是否删除用户,确认后用户被删除验证码信息错误 系统询问是否删除用户,确认后查找不到用户信息 和估算结果一样。
2024-10-28 17:05:05
718
1
原创 基于SpringBoot + Vue的新闻发布会管理系统
系统测试主要是为了避免用户在使用时发生问题,增强用户体验感,为了不影响用户的使用,我们需要从多角度、多思路去考虑系统可能遇到的问题,通过不同的模拟场景来发现缺陷并解决问题。登录功能测试方案:当需要登入该系统时,通过账户密码等功能点进行验证,用户在输入时需要输入与数据库内存储的数据匹配的内容,当其中某项输入错误时系统将提示输入错误。以确保系统流程的正确性。选中删除用户 系统询问是否删除用户,确认后用户被删除验证码信息错误 系统询问是否删除用户,确认后查找不到用户信息 和估算结果一样。
2024-10-28 16:58:33
931
原创 MySQL的主从复制 && SpringBoot整合Sharding-JDBC解决读写分离
mysql主从复制是一个异步复制的过程,底层是基于mysql数据自带的二进制日志功能。就是一台或者多台从库从另一台mysql数据库就是主库进行日志复制进行日志解析,并将解析出的sql在从库中页执行一遍。mysql主从复制是mysql数据库自带的功能,无需借助第三方工具。主库写,从库读。
2024-04-08 12:49:04
537
原创 Nginx安装与使用: Nginx之编译安装的nginx加入systemctl、Nginx命令
Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器。 特点:占内存少并发能力强官网:http://nginx.org/en/download.html。
2024-04-08 12:41:16
1774
原创 关于高并发下缓存失效的问题(本地锁 && 分布式锁 && Redission 详解)
但是这种方式存在问题是因为网络是有开销的,假如在拿到缓存中的uuid网络进行往返的时候,锁突然过期,其他进程拿到锁设置自己的uuid,那么之前的进程拿到的uuid和自己设置的uuid进行比对,发现相同进行删除缓存的锁,这时候删除的还是别人的锁。 假如拿到锁的进行业务时间大于锁的自动过期时间,这就会导致当业务还没执行结束锁已经删除,其他进程进来拿到了锁,当前面的进程业务执行完进行删锁的时候删的却是其他进程的锁,这时候又会有其他进程进来了,继续重复这个流程。 解决方法:设置具有过期时间的null数据。
2024-04-08 11:39:32
1112
原创 JAVA 压力测试 & 性能指标
压力测试是考察当前软硬件环境下系统所能承受的最大负荷并帮助找出当前系统的瓶颈,主要是找出内存泄漏和并发同步。压力测试工具官网:https://jmeter.apache.org/
2024-04-08 11:31:07
593
原创 SpringBoot 整合 RabbitMQ
保证消息不丢失,可靠抵达,可以使用事务机制,但是性能会下降250倍,为此可以引入确认机制。创建一个订单的延迟队列和普通队列并设置延迟队列的路由键,当消息过期以后路由到取消队列。外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传。外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传。向指定交换机和指定队列发送消息。创建监听器监听发来的消息。
2024-04-08 11:17:28
858
原创 分布式Session
服务器为了表示是哪个用户,在用户第一次登陆成功后将用户信息保存在session中,并且命令浏览器保存一个jsessionid = value的cookie,并且该浏览器每次访问想访问的服务的功能的时候都带着cookie,但是浏览器关闭后就会清楚cookie,下次访问的时候没有jsessionid就会再去重复步骤。统一存储,将所有Session都统一放在redis中,进行统一管理,缺点:增加了网络成本 优点:保证了数据安全。hash一致性:根据ip进行hash取余,将ip负载均衡到不同的服务器。
2024-04-08 11:14:36
446
原创 SpringBoot使用配置注解开启自动配置功能&整合spring-boot-configuration-processor
如果没有加入Component则需要在引入的地方加入@EnableConfigurationProperties(ThreadPoolConfigProperties.class),然后使用Auto注入使用。 因为自动配置类中使用了Componet注解所以可以直接在SpringBoot容器中的方法的参数中直接引入。
2024-04-08 11:12:30
271
原创 分布式事务解决方案
场景:当订单服务调用库存服务进行锁定库存的时候,如果锁库存的时候抛出了异常那么订单服务还是可以感知到,但如果库存服务锁定库存成功,但是因为网络的因素导致了调用库存服务失败了,这时候订单服务还是会抛出异常,那么订单服务进行了事务回滚但是库存已经锁了。又比如:订单服务调用库存服务成功,之后再调用用户服务保存用户积分信息,如果用户服务抛出了异常这时候虽然订单服务感知到了进行了事务回滚但是库存服务是不能做到事务回滚的,因为微服务自治。 C:一致性,在分布式系统中进行所有数据备份,在同一时刻是否是同样的值。
2024-04-08 11:09:22
370
原创 接口防刷 && 接口幂等性问题
解决方法:当用户访问该提交页面的时候就生成一个令牌给用户并且将这个令牌保存在redis或者mysql中,之后用户在这个页面提交的数据必须携带这个令牌,后端接收到用户的请求拿着令牌与redis中的令牌做对比,如果存在那么就开始执行相应的逻辑并且删除该令牌,之后再执行响应的逻辑,否则就快速响应结束请求。接口幂等性是指用户因为网络或者恶意多次请求接口导致数据的重复提交产生的问题,所以接口要保证幂等性,比如在用户在下订单的时候即使重复点击结算按钮也只能给服务器提交一次结算请求。
2024-04-08 11:06:34
244
原创 JAVA线程&线程池&异步编排
在实际的开发过程中要使用线程池进行异步任务的完成,因为用Thread Runnable Callable这些都不能做到对线程的管理,很容易就导致资源浪费和消耗。降低资源的消耗提高响应速度提高线程的可管理性。
2024-04-08 11:01:55
2167
原创 Another Redis Desktop Manager 连接Redis(哨兵模式)
【代码】Another Redis Desktop Manager 连接Redis(哨兵模式)
2024-04-07 16:24:10
1852
原创 如何去除Java dom生成的xml文件头的standalone=“no“ ,去掉后无换行
加入document.setXmlStandalone(true);以后standalone="no"是去掉了,但是第二行内容会移动到第一行。关于缩进,加入这一行即可。再加入这两行解决问题。
2024-02-23 17:14:51
1146
4
原创 谷粒学苑笔记整理
实际上是在表中增加了一个version字段作为版本控制,version初值为1,当进行update操作时候,会先根据id查询出这一条记录,然后再进行更新操作,更新的时候判断查询出的version和当前表的version是否相同,如果相同则进行更新并且version+1,不相同则回滚。他人同时进行更新的时候,会拿自己查询出的version和表中version进行比较。如果相同则进行更新并且version+1,不相同则回滚。配置自定义异常同时也要配置自定义异常处理类。2、创建一个工具类用于获取常量的值。
2023-05-12 16:25:15
2731
1
原创 SpringBoot整合单元测试&&关于SpringBoot单元测试找不到Mapper和Service报java.lang.NullPointerException的错误
/</</</
2023-05-09 21:22:04
822
1
原创 Vue项目创建
创建项目的过程,需要联网进行,这可能会耗时比较长的时间,请耐心等待。windows的命令行,容易卡顿,我们可以虽然敲击一下键盘。创建完毕后,就可以直接关闭页面和命令行了,到此工程创建完毕。用vs打开并配饰vue.config.js关闭强格式报警。这个过程中,会联网下载,可能会耗时几分钟,耐心等待。如果出现如下字样,就说明前端工程已经创建完毕了。此时vue的项目目录结构是。
2023-04-19 15:19:43
101
1
原创 Vue+SpringBoot+Axios的跨域问题
这里的 proxy对应的就是nginx中的proxy_pass。第一步在vue.config.js中编辑devServer。其实nginx配置对应的就是开发环境中的。或者给后端加一个config。第二步编辑main.js。
2023-04-19 10:11:40
225
1
保姆级Windows10中同时安装MySQL5和MySQL8(带资源带图文)
2024-04-08
Windows10中同时安装MySQL5和MySQL8,保姆级,文件教程都有,装不上不要钱
2024-04-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人