- 博客(112)
- 收藏
- 关注
原创 如何追踪ping连接中的所有路由器的数量和IP
ping命令会返回一个TTL,TTL(Time To Live)存活时间,一般初始值为64,每经过一个路由器就减一,当TTL为0时丢弃网络包,是IP协议一个状态位,用来防止请求在网络中一直流转的方式。tracert模拟请求进行发送,一个请求的TTL为1,经过一个路由器后被丢弃,并将最后一个路由器的IP进行反馈,随后发送TTL为2的请求,并返回最后一个路由器的IP,直到到达目的IP。通过tracert命令,可以看到经过的每个路由器的IP,一共经过了15个路由器,与ping命令的估算接近。
2024-07-09 10:53:55
423
原创 登录验证码高扩展性设计方案
在进行登录时,无论是账号密码登录,还是第三方登录,总是需要输入验证码。使用验证码可以进行人机判断,提高安全性,过滤恶性攻击。验证码一般由一串随机字符组成,当然也存在多种生成方式。验证码的展现方式有很多种,例如图片,语音,手机验证码。验证码的存储方式有很多种,例如数据库、缓存、JVM本地内存。验证码的存储又涉及到另一个问题,验证码唯一id如何生成,在分布式项目中,一般可以通过数据库自增序列、缓存自增序列、UUID、雪花算法等方式生成唯一id。
2024-07-01 21:58:48
376
原创 高可用电商支付架构设计方案
传统意义上的支付过程是A向B下单商品C,通过渠道D支付成功后,B将商品交给A。在电商背景下依旧大致沿用这一套流程,只是会进行责任细化,例如上述中的B,会根据业务功能拆分成多个微服务。每个微服务具有单一的功能,不同微服务之间相互独立运行,呈现一种高内聚、低耦合的状态。电商支付大致可以划分成如下几个部分。前端:用户通过电脑或手机下订单。订单服务:处理订单并进行库存锁定。支付服务:处理支付请求,和第三方支付平台进行交互。通知服务:支付完成后通知用户和相关系统。
2024-06-23 20:56:21
780
原创 二分查找总结:算法原理,适用题型,经典题单
在刷完题单后依然感觉面对较难的题目无从下手,我的猜测是两方面原因一方面,算法题是需要积累的,这是一个过程,可能是长时间的苦练,也可能是一时的开窍另一方面,解题是多方面的,而非单个二分查找可以以偏概全,需要积累技巧和解题思路。总之,还得努力。
2024-06-14 20:11:51
734
原创 分布式事务AP控制方案(下)
本文在上一篇文章的基础上,对四个任务进行了实现。四个任务在之前时都需要进行数据库状态的校验,确保任务执行的幂等性数据库MySQL,插入课程发布表,删除课程预发布表缓存Redis,插入kv值,建立缓存分布式文件系统MinIO,将课程页面静态化处理,并上传到文件系统分布式搜索系统ES,建立课程发布的索引,并插入文档,建立约束Mapping,实现关键字全文检索、目录和难度匹配。
2024-06-10 23:12:33
843
原创 分布式事务AP控制方案(上)
本文在实际开发业务场景的基础上,给出了一种遵循AP思想的分布式事务控制方案,通过本地消息表+任务调度的方式实现。项目亮点有:本地消息表通过任务123代替具体的任务,结合流程控制抽象类,只给出流程控制的代码,具体的业务实现由具体的实现类完成,从而实现解耦合,提高代码复用。任务流程控制中开启多实例和多线程,并行高效的执行任务。使用任务调度XXL-JOB进行任务执行,采用分片广播的方式,保证了任务执行的幂等性。
2024-06-10 22:42:16
961
原创 算法100例(1)
合并的函数中,比较s的后缀和t的前缀,在调用时需要使用全排列,即turn二维数组,最终结果比较长度,如果一样长比较字典序,注意go中两个字符串比较字典序可以直接比较。记忆化搜索,dfs(i) 是 s 前 i 个字符的答案,最少剩余字符数,每次递归判断选还是不选,不选很简单,直接dfs下一个,剩余字符数加一,选的话需要枚举选哪个。这道题的难点在于,如何将一个数字分割成所有可能的情况,从中选出符合条件的情况,并且不超时。然后求石头多的全排列,分别和缺石头的对应,计算距离,如此难点就成了计算全排列。
2023-10-09 18:56:21
523
原创 GoLand导入redis的github包失败
如果mod文件创建失败或者提示冲突,就在settings中删除GOPATH。如果爆红,可能是GOPROXY的问题,需要在settings中进行如下配置。网上有下载guryburd和gomodel的,这里按照官网文档安装依赖。启动连接redis,并打印redis.Client类型变量。可能是这两条命令哪一条没有成功执行,我们一条条分析。第二条命令执行完成后检查go.mod文件。随后在程序中测试redis依赖是否可用。首先检查项目根路径下的mod是否存在。以下命令在项目的根目录执行。如果成功显示就没有问题。
2023-07-12 22:49:43
984
原创 Redmi Book Pro 15 2022 笔记本电脑更换硬盘总结
笔记本电脑更换硬盘总结:Redmi Book Pro 15 2022 锐龙版
2023-06-21 23:32:04
3933
原创 安装python以及编辑器pycharm
python是重要的程序语言之一本文介绍如何安装python,以及如何安装python编辑器----Pycharm本文介绍了python以及编辑器Pycharm的安装,安装过程中有问题的同学可以及时尝试其他安装方法。
2023-04-30 10:27:10
1101
原创 解决使用rz命令上传文件失败,速度慢的问题
使用rz指令往虚拟机的Linux系统中上传文件,前两次可以选中文件,但是上传失败。至此确认是用户权限的问题,使用。第三次上传速度一直显示为0。上传到根目录下文件夹。
2023-04-21 22:44:22
2314
原创 爱奇艺播放器老板键试玩
再次双击运行程序后程序窗口才会打开,继续之前的进程。意思是,正在播放的视频和音乐暂停,程序窗口关闭。这个快捷键默认不启用,需要我们自己绑定快捷键。但是打开任务管理器发现并没有结束进程。效果就是按下快捷键,程序暂停并隐藏。爱奇艺播放器有一个热键:老板键。
2023-04-20 13:51:57
258
原创 LeetCode第2616题-最小化数对的最大差值-python实现-图解思路与手撕代码
LeetCode第2616题-最小化数对的最大差值-python实现-图解思路与手撕代码
2023-04-16 22:10:04
94
原创 如何在js中添加debugger断点进行调试,解决网页中debugger没反应的问题
可以看到上面有debugger的调试按键,后面js代码停在我们第一个debugger处,接着点击测试按键即可继续调试。**如果先打开网页,再打开检查,那浏览器会一次性加载全部内容,就无法进行调试,此时debugger失效!首先在js代码中想要调试的位置添加断点,如示例所示。在网页中先打开检查,然后再打开网页。
2023-04-15 10:58:03
5308
原创 更改MySQL安装路径后无法启动服务的问题
win+R输入cmd打开终端,输入regedit,回车,打开注册表。问题:移动MySQL安装文件夹之后无法启动MySQL服务。Ctrl+F搜索MySQL,修改ImagePath。第二步,更改更目录下my.ini文件。再次开启MySQL服务就能正常运行了。第一步,更改环境变量。
2023-04-11 19:54:16
723
原创 VMware安装程序打不开的问题及解决方法
将安装程序放到D盘目录下再双击就能打开了。看了网上的方法右键管理员运行也打不开。怀疑是安装程序存放目录不能有中文。双击VMware安装程序打不开。
2023-04-11 12:30:15
2405
3
原创 LeetCode第2588题-统计美丽子数组数目-python实现-图解思路与手撕代码
这道题的难点在于理解,如何把问题转化成前缀异或和的个数的求解。
2023-03-14 19:52:53
147
原创 LeetCode第6310题-获得分数的方法数-python实现-图解思路与手撕代码
LeetCode第6310题-获得分数的方法数-python实现-图解思路与手撕代码
2023-03-05 17:08:58
90
原创 LeetCode第6313题-统计将重叠区间合并成组的方案数-python实现-图解思路与手撕代码
LeetCode第6313题-统计将重叠区间合并成组的方案数-python实现-图解思路与手撕代码
2023-03-05 14:49:44
110
原创 LeetCode第153题-寻找旋转排序数组中的最小值-python实现-图解思路与手撕代码
LeetCode第153题-寻找旋转排序数组中的最小值-python实现-图解思路与手撕代码
2023-03-02 19:54:39
94
原创 LeetCode第2577题-在网格图中访问一个格子的最少时间-python实现-图解思路与手撕代码
LeetCode第2577题-在网格图中访问一个格子的最少时间-python实现-图解思路与手撕代码
2023-03-01 20:34:50
278
原创 LeetCode第494题-目标和-python实现-图解思路与手撕代码
LeetCode第494题-目标和-python实现-图解思路与手撕代码
2023-02-21 21:49:10
475
原创 LeetCode第6365题-将整数减少到零需要的最少操作数-python实现-图解思路与手撕代码
LeetCode第6365题-将整数减少到零需要的最少操作数-python实现-图解思路与手撕代码
2023-02-20 10:05:21
225
原创 LeetCode第6356题-子字符串异或查询-python实现-图解思路与手撕代码
LeetCode第6356题-子字符串异或查询-python实现-图解思路与手撕代码
2023-02-12 17:51:53
124
原创 LeetCode第69题-x的平方根-python实现-图解思路与手撕代码
LeetCode第69题-x的平方根-python实现-图解思路与手撕代码
2023-02-10 20:41:29
242
原创 LeetCode第6346题-打家劫舍IV-python实现-图解思路与手撕代码
LeetCode第6346题-打家劫舍IV-python实现-图解思路与手撕代码
2023-02-05 21:30:30
292
原创 LeetCode第2552题-统计上升四元组-java实现-图解思路与手撕代码
LeetCode第2552题-统计上升四元组-java实现-图解思路与手撕代码
2023-01-30 23:35:15
545
原创 LeetCode第2546题-执行逐位运算使字符串相等-python实现-图解思路与手撕代码
LeetCode第2546题-执行逐位运算使字符串相等-python实现-图解思路与手撕代码
2023-01-23 11:43:32
343
1
原创 LeetCode第6293题-统计好子数组的数目-python实现-图解思路与手撕代码
LeetCode第6293题-统计好子数组的数目-python实现-图解思路与手撕代码
2023-01-15 22:11:13
198
原创 LeetCode第6292题-子矩阵元素加1-python实现-图解思路与手撕代码
LeetCode第6292题-子矩阵元素加1-python实现-图解思路与手撕代码
2023-01-15 20:51:12
89
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人