力扣刷题: 142.环形链表II
[力扣刷题] 142.环形链表II给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。
如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。
不允许修改 链表。
示例 1:
123输入:head = [3,2,0,-4], pos = 1输出:返回索引为 1 的链表节点解释:链表中有一个环,其尾部连接到第二个节点。
示例 2:
123输入:head = [1,2], pos = 0输出:返回索引为 0 的链表节点解释:链表中有一个环,其尾部连接到第一个节点。
示例 3:
123输入:head = [1], pos = -1输出:返回 null解释:链表中没有环。
提示:
链表中节点的数目范围在范围 [0, 104] 内
-105 <= Node.val <= 105
pos 的 ...
在短链接前后端联调时遇见由Feign引发的“奇怪”问题(Feign使用中对于Get请求自动变成Push引发的 Sharding value null must implements Comparable 报错的解决方法)
在短链接前后端联调时遇见由Feign引发的“奇怪”问题(Feign使用中对于Get请求自动变成Push引发的 Sharding value null must implements Comparable 报错的解决方法)今天在做短链接系统的前后端联调,在前端查询短链接数据的时候发现了问题;
在拉取短链接回收站和短链接分组中短链接数据时出现了异常,拉不到数据。回到后台日志中查看,发现是不支持Post方法
对于短链接回收站的拉取异常,很快地就定位到了问题
在哪显然这里是打错了,在用Feigin访问后管的时候,用错了方式
既然两个基本一致的问题解决了一个,那另一个不是也差不多了?这里就顺着之前的思路Debug,最后同样定位到了向后管发请求的地方,但是怎么都找不到是从哪里发的Post请求。
这时就觉得邪门了,哪里来的Post???
于是就试着把请求从@GetMapping改成了@DeleteMapping,居然又用Delete发了请求,这下邪门了。
这里正好前一天晚上调试nacos的时候也遇见了玄学问题
我在配置聚合服务注册到Nacos的服务名时怎么改都没有用,然后半夜折腾了一个多小时就 ...
Docker笔记(三)
Docker入门笔记(3)容器资源管理容器控制操作查看容器中输出的日志信息
1docker logs 容器名
上面的打印操作还可以添加-f来持续打印日志信息
之前已经用过的重新进入容器
1docker attatch 容器名/id
如果要回到主机上,需要ctrl + p再ctrl + q来退出,这时容器会保持运行,而使用ctrl + c会终止容器中正在运行的容器
我们还可以使用exec命令将指令传入终端并执行
1docker exec -it 容器名 指令
我们之前试过使用stop来停止容器,但他是会等待容器处理完结束程序后才会停止,我们可以使用kill来强制停止容器
1docker kill 容器名
如果想让容器暂时挂起,就可以使用pause
1docker pause 容器名
恢复则使用unpause
1docker unpause 容器名
容器物理资源管理我们可以限制容器使用的如内存等物理资源上限
1docker rum -m 内存上限 --memory-swap=内存和交换分区一共的内存限制 镜像名
默认内存和内存与交换分区无上限,默认都为-1;
我们把内存给小一点,再 ...
Docker笔记(二)
Docker入门笔记(2)容器网络管理容器网络类型Docker安装以后,会在我们的主机上创建三个网络
1docker network ls
可以看到有bridge、host和none三种网络类型
我们先把ubuntu的网络环境配置一下
123docker run -it ubuntuapt updateapt install net-tools iputils-ping curl
这样环境就配置好了,接下来就退出容器,打包成为新的镜像
1docker commit <容器name> <新镜像名>
现在我们来研究一下刚才上面的显示的三种网络类型
none网络:既然是none网络了,基本就是“没网络”,它只有一个本地的环回网络
我们在创建容器时可以指定none网络来看看
1docker run -it --network=none ubuntu-net
进入容器后可以ifconfig来查看一下网络
他是无法连接到外界的互联网的,是一个真单机运行,没有人能从外部访问它
bridge网络:容器默认会使用bridge网络,即桥接网络,它被广泛应用
我们进入桥接模 ...
Docker笔记(一)
Docker入门笔记(1)容器技术入门之前我的WIT问卷管理系统在阿里云上部署需要好多配置,各个环境耦合的比较紧密,花了不少时间去做部署和调配。
现在有了Docker以后,我们可以把各种组件配置好,然后打包成镜像使用Docker直接一键部署,实现开箱即用。
Docker部署这里使用阿里云ECS作为Linux终端进行部署,系统为Ubuntu22.04。
安装工具
1sudo apt-get install ca-certificates curl gnupg lsb-release
安装GPG Key
12sudo mkdir -p /etc/apt/keyringscurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
将Docker的库添加到apt资源列表
1echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/doc ...
记一次痛苦的项目部署经历(Git&VITE&VUE&NPM&NODE部署踩坑指北)
记一次痛苦的项目部署经历(VITE&VUE&NPM&NODE部署踩坑指北)最近自己的轻薄本16G的内存做项目时完全不够用了,所以又配了一台64G的主机来写项目。
既然是用了双主机,当然要涉及到项目间的同步问题,之前还没有做过多设备的协同开发,所以在摸索的过程中今天踩了非常多非常多非常多的坑。
创建项目时git仓库的选择这里是想同步之前开发的问卷管理系统的代码;
这是之前预期的项目结构
结果成了这样
我记得之前创建的时候,是直接用的Idea做的commit,当时是直接在外层的Project里面点的提交,然后又因为前端和后端,还有最外层的文件夹都是各算一个项目,这里的版本控制可以说是一团乱麻,这就导致我直接将我认为的项目的git本地仓库push到github时发现哥们我后端文件呢???
非常酸爽,我做了各种尝试
试图将后端仓库的.git文件夹删掉; -> 无果,push之后虽然显示文件夹,但是点一下就404
试图删除全部的.git,然后重新创建本地git再push,前端跑不起来寄了
试图将整个项目先做一个git仓库,然后后端部分引用另一个git仓库(其实 ...