- 博客(2375)
- 资源 (1)
- 收藏
- 关注

原创 2022-03-13:golang项目代码push到gogs上,如何自动编译、打镜像、k8s上运行?
2022-03-13:golang项目代码push到gogs上,如何自动编译、打镜像、k8s上运行?答案2022-03-13:2022-02-23:如何搭建k8s单机环境(用k3s),并且搭建dashboard?2022-03-12:k8s如何搭建gogs+drone实现自动化部署cicd,yaml如何写?上面的环境,都需要搭建。测试demo见 git地址主要是test1/.drone.yml的编写。from_secret: kube_token,这个kube_token需要在drone页面中
2022-03-13 06:30:00
9802
3

原创 2022-03-12:k8s如何搭建gogs+drone实现自动化部署cicd,yaml如何写?
2022-03-12:k8s如何搭建gogs+drone实现自动化部署cicd,yaml如何写?答案2022-03-12:需要安装docker和k3s,见 docker和k3s,k3s不需要依赖docker,但是drone-run-docker依赖docker,所以一定要安装docker。第一种方法:yaml如下,需要把192.168.204.13替换成自己电脑的ip:apiVersion: v1kind: ConfigMapmetadata: labels: app: mysql
2022-03-12 11:40:22
11716

原创 2022-02-23:如何搭建k8s单机环境(用k3s),并且搭建dashboard?
2022-02-23:如何搭建k8s单机环境(用k3s),并且搭建dashboard?答案2022-02-03:1.安装docker查看是否安装dockeryum list installed | grep docker#删除dockeryum remove –y docker.x86_64 yum remove –y docker-client.x86_64yum remove –y docker-common.x86_64安装dockercurl -sSL https://g
2022-02-23 23:29:57
10675
原创 Elasticsearch 8.17.4 发布:修复解析异常、资源泄漏等关键Bug!
此前,某些ES|QL查询可能因解析异常导致失败(#119025),8.17.4 版本优化了异常捕获机制,确保查询稳定执行。“升级后 rollover 操作的内存占用明显下降,终于不用半夜起来重启集群了!”——某电商平台运维。时,极端情况下可能出现线程饥饿(#124667),8.17.4 版本优化了调度逻辑,提升稳定性。操作时,旧版本可能因未及时释放集群状态引用导致内存泄漏,新版本彻底修复了这一问题。时的兼容性问题,确保模型ID迁移无误(#124675)。,虽然是小版本迭代,但修复了多个关键问题,涉及。
2025-03-27 07:56:05
315
原创 Docker 28.0.4重磅更新:私有仓库拉取/推送失败问题终解决!
——@某运维工程师。此前,不少用户反馈在与私有仓库(如 Docker Hub 私有库、自建Registry等)交互时,“小版本号大作用,建议所有用到私有仓库的团队立即升级!”——@K8s架构师。除了核心Bug修复,28.0.4版本还包含多项稳定性改进和边缘场景优化。,这次更新虽是小版本号,但修复了一个让众多开发者头疼的。如果你最近被这个问题困扰,赶紧升级吧!,现在你可以放心使用私有仓库了!如果你或团队依赖私有仓库,
2025-03-27 07:55:44
30
原创 独家解析Chroma 0.6.3:异步限流、Go并发支持,你的AI应用该升级了!
从HNSW内存泄漏修复到分布式多租户支持,Chroma 0.6.3 版本堪称「Bug杀手」!” 作为AI领域最热门的向量数据库之一,Chroma此次更新虽是小版本迭代,却暗藏多项性能炸弹——无论是开发者痛点的。这次更新堪称Chroma的“性能分水岭”,无论是AI应用开发者还是企业运维团队,升级后都能感受“飞一般”的体验!兼容性问题,还是Cohere嵌入函数的API适配,甚至Go语言的并发支持,全被一一攻克!“Go并发支持太香了,批量处理速度直接起飞!若使用Cohere嵌入函数,需检查API兼容性。
2025-03-27 07:55:17
293
原创 Transformers重大更新!v4.50.1修复多Bug,模型训练更稳了
这次v4.50.1版本虽然是小版本迭代,但修复的每一个问题都直戳开发者痛点——从Causal映射问题到PyTorch变形注意力的路径错误,甚至Chameleon模型的图像token检查漏洞,统统被一举歼灭!“更新后训练速度直接起飞,PyTorch变形注意力再也不报错了!修复了deformable attention的路径错误,训练效率UP!“Chameleon模型终于能正常处理多模态了,感动!,代码更统一,避免混淆!
2025-03-27 07:54:52
443
原创 2025-03-27:统计满足 K 约束的子字符串数量Ⅰ。用go语言,给定一个二进制字符串 s 和一个整数 k,定义满足 k 约束的条件为: 字符串中 0 的数量不超过 k; 字符串中 1 的数量不超
2025-03-27:统计满足 K 约束的子字符串数量Ⅰ。用go语言,给定一个二进制字符串 s 和一个整数 k,定义满足 k 约束的条件为:字符串中 0 的数量不超过 k;字符串中 1 的数量不超过 k。求 s 中满足 k 约束的子字符串数量。s[i] 是 ‘0’ 或 ‘1’。输入:s = “1010101”, k = 2。输出:25。解释:s 的所有子字符串中,除了长度大于 5 的子字符串外,其余子字符串都满足 k 约束。题目来自leetcode3258。
2025-03-27 07:54:13
225
原创 2025-03-26:放三个车的价值之和最大Ⅰ。用go语言,给定一个 m x n 的二维整数数组 board,表示一个国际象棋棋盘,其中每个元素 board[i][j] 代表格子 (i, j) 的价值
2025-03-26:放三个车的价值之和最大Ⅰ。用go语言,给定一个 m x n 的二维整数数组 board,表示一个国际象棋棋盘,其中每个元素 board[i][j] 代表格子 (i, j) 的价值。在这个棋盘上,我们需要放置三辆车,确保它们之间无法互相攻击,这意味着它们不能位于同一行或同一列。你需要找出一种放置方式,使得这三辆车所在格子的价值总和最大。请返回这个最大总和。输入:board = [[-3,1,1,1],[-3,1,-3,1],[-3,2,1,1]]。输出:4。
2025-03-26 07:56:55
342
原创 [特殊字符] Dify v1.1.3 震撼更新!效率翻倍、安全升级,这些新功能太香了!
Dify 又双叒叕更新了!” 这次 v1.1.3 版本不仅修复了多个关键问题,还带来了多项效率优化和安全升级。无论你是开发者还是普通用户,这些改进都将让你的体验更流畅、更安全!就能享受这些新特性!如果还没用过Dify,这次更新正是入坑的最佳时机!“iOS输入修复太及时了!终于不用切设备调试了!“ESLint缓存节省了我每天30%的等待时间!停止 API 服务、Worker 进程及 Web 前端服务。获取 release 分支的最新代码。如果你是Dify用户,
2025-03-26 07:56:12
452
原创 2025-03-25:长度为 K 的子数组的能量值Ⅱ。用go语言,给定一个长度为 n 的整数数组 nums 和一个正整数 k,你需要计算每个长度为 k 的子数组的能量值。 能量值的定义如下: 1.如果
2025-03-25:长度为 K 的子数组的能量值Ⅱ。用go语言,给定一个长度为 n 的整数数组 nums 和一个正整数 k,你需要计算每个长度为 k 的子数组的能量值。能量值的定义如下:1.如果子数组中的元素是连续递增的(即 nums[i] + 1 = nums[i + 1] 对于所有有效的 i),那么能量值为该子数组中的最大元素。2.如果不是连续递增,则能量值为 -1。
2025-03-25 06:53:48
400
原创 OpenAI疯狂撒钱!每天1100万免费Tokens,GPT-4.5重磅来袭!
数据被视为 AI 模型训练的基础资源,但互联网上的数据是有限的,数量越少对新模型的训练越不利,特别是按照传统技术架构时,更需要大量的训练数据。与之前相比,最新的数据共享计划在每天的100万高级模型Token中新增了GPT-4.5-preview,同时在每天的1000万标准模型Token中也加入了o3-mini。更重要的是,在最新的活动说明中,OpenAI明确列出了参与此次活动的模型,包括最新的“非思考”模型GPT-4.5以及最新的推理模型o3-mini。在弹出的确认窗口中,点击“同意”,再进行确认。
2025-03-25 06:53:16
372
原创 2025-03-24:长度为 K 的子数组的能量值Ⅰ。用go语言,给定一个长度为 n 的整数数组 nums 和一个正整数 k,我们需要定义数组的能量值: 1.如果数组中的所有元素都连续且严格递增,则能
2025-03-24:长度为 K 的子数组的能量值Ⅰ。用go语言,给定一个长度为 n 的整数数组 nums 和一个正整数 k,我们需要定义数组的能量值:1.如果数组中的所有元素都连续且严格递增,则能量值等于该子数组中的最大元素。2.如果不满足上述条件,则能量值为 -1。我们的任务是计算 nums 中每个长度为 k 的子数组的能量值。最后,我们需要返回一个长度为 n - k + 1 的结果数组,其中 results[i] 表示子数组 nums[i] 到 nums[i + k - 1] 的能量值。
2025-03-24 07:49:34
390
原创 13.2 kubelet containerRuntime接口定义和初始化
containerRuntime 需要实现3类接口管理容器的接口管理镜像的接口Streaming API 用于客户端与容器进行交互containerRuntime 的初始化。
2025-03-24 07:47:49
635
原创 13.1 containerRuntime 原理简介
kubelet架构图两种容器运行时的实现一个是内置的 dockershim,实现了 docker 容器引擎的支持一个就是外部的容器运行时,用来支持 runc、containerd、gvisor 等外部容器运行时CRI接口分类管理镜像的 ImageService 提供了 5 个接口管理容器的RuntimeService 则提供了更多的接口Streaming API 用于客户端与容器进行交互第一个是 Kubelet 中容器运行时的管理,它通过 CRI 管理容器和镜像。
2025-03-23 12:32:26
825
原创 2025-03-23:单调数组对的数目Ⅱ。用go语言,给定一个长度为 n 的正整数数组 nums,我们需要找出所有的单调数组对。 单调数组对的定义是:两个非负整数数组 (arr1, arr2) 同时满
2025-03-23:单调数组对的数目Ⅱ。用go语言,给定一个长度为 n 的正整数数组 nums,我们需要找出所有的单调数组对。单调数组对的定义是:两个非负整数数组 (arr1, arr2) 同时满足以下条件:1.两个数组均为长度 n。2.arr1 是单调非递减的,即 arr1[0] <= arr1[1] <= … <= arr1[n - 1]。3.arr2 是单调非递增的,即 arr2[0] >= arr2[1] >= … >= arr2[n - 1]。
2025-03-23 12:27:58
499
原创 12.2 kubelet containerManager源码解读
containerManager 管理容器的各种资源,比如 CGroups、QoS、cpuset、device 等内置了很多资源管理器,总结起来就是其他manager的管家为什么要限制本地临时存储呢早期kubernetes版本并没有限制container的rootfs的容量由于默认容器使用的log存储空间是在 /var/lib/kubelet/ 下rootfs在/var/lib/docker下,而这两个目录默认就在宿主机node的根分区。
2025-03-22 08:20:44
963
原创 2025-03-22:单调数组对的数目Ⅰ。用go语言,给定一个长度为n的正整数数组nums,求满足以下条件的非负整数数组(arr1, arr2)构成的单调数组对的数量: 1.arr1为非递减数组,即a
2025-03-22:单调数组对的数目Ⅰ。用go语言,给定一个长度为n的正整数数组nums,求满足以下条件的非负整数数组(arr1, arr2)构成的单调数组对的数量:1.arr1为非递减数组,即arr1[0] <= arr1[1] <= … <= arr1[n - 1]。2.arr2为非递增数组,即arr2[0] >= arr2[1] >= … >= arr2[n - 1]。3.对于所有的i (0 <= i <= n - 1),有arr1[i] + arr2[i] = nums[i]。
2025-03-22 08:18:06
414
原创 2025-03-21:统计好节点的数目。用go语言,给定一棵无向树,树中有 n 个节点,节点的标号从 0 到 n - 1,根节点为 0。我们有一个长度为 n - 1 的二维数组 edges,其中 ed
2025-03-21:统计好节点的数目。用go语言,给定一棵无向树,树中有 n 个节点,节点的标号从 0 到 n - 1,根节点为 0。我们有一个长度为 n - 1 的二维数组 edges,其中 edges[i] = [ai, bi] 表示节点 ai 和节点 bi 之间有一条边。如果一个节点的所有子节点所构成的子树中,包含的节点数都相同,则该节点被称为“好节点”。你的任务是计算出在这棵树中有多少个“好节点”。输入确保 edges 总表示一棵有效的树。
2025-03-21 08:15:25
461
原创 12.1 kubelet pleg对象介绍和源码解读
PLEG 全称叫 Pod Lifecycle Event Generator,即 Pod 生命周期事件生成器实际上它只是 Kubelet 中的一个模块主要职责就是通过每个匹配的 Pod 级别事件来调整容器运行时的状态,并将调整的结果写入缓存,使 Pod 的缓存保持最新状态PLEG 全称叫 Pod Lifecycle Event Generator,即 Pod 生命周期事件生成器pleg通过定时的执行relist方法调用容器运行时获取pod信息。
2025-03-21 08:14:01
611
原创 11.8 deviceManager源码解读
deviceManager创建kubelet.sock并启动gRPC Server对外提供gRPC服务,目前只注册了Register服务,用于Device plugin调用进行插件注册。register将收到设备注册请求调用callback回调更新在podAdmitHandler的Admit方法中调用deviceManager中会遍历pod 的init容器和业务容器,调用deviceManager.Allocate分配。
2025-03-20 10:01:36
816
原创 2025-03-20:矩阵中的蛇。用go语言,给定一个大小为 n x n 的矩阵 grid,其中有一条蛇。蛇可以向四个方向移动:上、右、下和左。矩阵的每个单元格由其位置标识,公式为 grid[i][j
2025-03-20:矩阵中的蛇。用go语言,给定一个大小为 n x n 的矩阵 grid,其中有一条蛇。蛇可以向四个方向移动:上、右、下和左。矩阵的每个单元格由其位置标识,公式为 grid[i][j] = (i * n) + j。蛇从单元格 0 开始,并根据给定的一系列命令进行移动。您将获得一个整数 n,表示矩阵的大小,以及一个字符串数组 commands,其中包含指令如 “UP”、“RIGHT”、“DOWN” 和 “LEFT”。题目保证在整个移动过程中蛇始终留在矩阵边界内。
2025-03-20 09:59:20
375
原创 2025-03-19:标记所有节点需要的时间。用go语言,给定一棵无向树,树中的节点编号从 0 到 n-1。同时给出一个长度为 n-1 的二维整数数组 edges,其中 edges[i] = [ui,
时间复杂度O(n)。额外空间复杂度O(n)。该算法通过两次深度优先搜索(DFS)和动态调整根节点的方式,高效地计算了每个节点作为起点时的标记时间。
2025-03-19 08:12:07
1152
原创 11.7 device-plugins设备插件机制介绍
Kubernetes 提供了一个 设备插件框架,你可以用它来将系统硬件资源发布到 Kubelet。这样供应商可以实现设备插件,由你手动部署或作为 DaemonSet 来部署,而不必定制 Kubernetes 本身的代码扩展资源仅可作为整数资源使用,并且不能被过量使用设备不能在容器之间共享。
2025-03-19 08:10:40
1002
原创 k3s coredns crashloopbackoff如何解决?
修改coredns的configmap里的NodeHost。内容是本机电脑ip 电脑名称,如果有多余的,去掉。
2025-03-18 11:22:33
109
原创 11.6 memoryManager源码阅读
位置 F:\go_path\src\github.com\kubernetes\kubernetes\pkg\kubelet\cm\memorymanager\memory_manager.go// 在kubelet初始化的时候回调用 start启动memoryManager作为 containerManager的一部分// AddContainer 将请求的requestmemory保存下来// Allocate是在pod 准入控制的时候做内存的预分配的。
2025-03-18 07:43:04
869
原创 2025-03-18:最少翻转次数使二进制矩阵回文Ⅱ。用go语言,给定一个大小为 m x n 的二进制矩阵 grid。如果矩阵中的某一行或某一列从前往后读和从后往前读是一样的,那么这一行或这一列被称为
2025-03-18:最少翻转次数使二进制矩阵回文Ⅱ。用go语言,给定一个大小为 m x n 的二进制矩阵 grid。如果矩阵中的某一行或某一列从前往后读和从后往前读是一样的,那么这一行或这一列被称为回文的。你可以翻转矩阵中任意格子的值,即将 0 变成 1,或将 1 变成 0。你的任务是找到最少的翻转次数,使得矩阵中所有行和列都是回文的,并且矩阵中 1 的数目能够被 4 整除。请返回满足条件的最少翻转次数。输入:grid = [[1,0,0],[0,1,0],[0,0,1]]。输出:3。
2025-03-18 01:00:00
580
原创 11.5 memoryManager原理简介
memoryManager简单说来就是为了给对内存性能要求极高的容器提供服务避免跨numa 节点使用内存,尽量使用本地内存,这样性能会更好内存管理器主要做两件事:向拓扑管理器提供拓扑提示为容器分配内存并更新状态memoryManager 当前3个限制01 在单个和跨越多个numa节点上分配的问题02 memoryManager只能为Guaranteed pods 服务03 可能会带来内存碎片。
2025-03-17 09:41:19
841
原创 11.4 kubelet中的cpuManager解读
位置 D:\go_path\src\github.com\kubernetes\kubernetes\pkg\kubelet\cm\cpumanager\cpu_manager.go位置。
2025-03-17 01:00:00
951
原创 2025-03-17:最少翻转次数使二进制矩阵回文Ⅰ。用go语言,给定一个大小为 m x n 的二进制矩阵 grid。如果矩阵中的某一行或某一列从前往后读和从后往前读是一样的,那么我们称这一行或这一列
2025-03-17:最少翻转次数使二进制矩阵回文Ⅰ。用go语言,给定一个大小为 m x n 的二进制矩阵 grid。如果矩阵中的某一行或某一列从前往后读和从后往前读是一样的,那么我们称这一行或这一列是的。你可以翻转矩阵中的任意一个格子的值,即将 0 变为 1,或将 1 变为 0。请返回使得矩阵或成为回文所需的最少翻转次数。输入:grid = [[1,0,0],[0,0,0],[0,0,1]]。输出:2。解释:将高亮的格子翻转,得到所有行都是回文的。题目来自leetcode3239。
2025-03-17 01:00:00
550
原创 2025-03-16:求出胜利玩家的数目。用go语言,给定一个整数 n,表示游戏中的玩家数量,以及一个二维整数数组 pick,其中每个元素 pick[i] = [xi, yi] 表示玩家 xi 获得了
1.时间复杂度统计玩家拥有的球的数量需要遍历 pick 数组,所以是 O(N) 的复杂度。判断胜利玩家也需要遍历 cnt 二维数组,总共是 n * 11 个元素,时间复杂度为 O(N)。因此总体时间复杂度为 O(N)。2.额外空间复杂度创建了一个二维数组 cnt 用于统计球数量,大小为 n * 11,额外空间复杂度为 O(N)。
2025-03-16 02:30:00
315
原创 11.3 写goland代码体会cpuset原理
numa和cpu计算密集型任务的关系cgroup的cpuset绑核技术编写go代码体会cpuset,go中 GOMAXPROCS和绑核的关系。
2025-03-16 02:00:00
869
原创 11.2 TopologyManager源码解读
best-effort: 结合上图来说,如果没有找到最优的TopologyHint(即图中的TH6),k8s节点也会接纳这个Pod。restricted:结合上图来说,如果没有找到最优的TopologyHint(即图中的TH6),那么节点会拒绝接纳这个Pod,如果Pod遭到节点拒绝,其状态将变为Terminated。
2025-03-15 09:13:40
679
原创 2025-03-15:判断矩形的两个角落是否可达。用go语言,给定两个正整数 xCorner 和 yCorner,以及一个二维整数数组 circles,表示若干个圆的信息。判断是否存在一条从矩形的左下
2025-03-15:判断矩形的两个角落是否可达。用go语言,给定两个正整数 xCorner 和 yCorner,以及一个二维整数数组 circles,表示若干个圆的信息。判断是否存在一条从矩形的左下角到右上角的路径,这条路径完全在矩形内部,不会触碰或经过任何圆的内部和边界,只在起点和终点与矩形接触。如果存在这样的路径返回true,否则返回false。输入:X = 3, Y = 4, circles = [[2,1,1]]。输出:true。
2025-03-14 09:31:50
480
原创 10.4 containerManager应用之创建容器cgroup目录
创建容器调用cgroupManager 创建cgroups,传入的就是容器配置的资源request分布创建3种qos的pod 验证他们的cgroup目录针对三种qos的pod cgroup目录有所区别,以cpu为例/sys/fs/cgroup/cpu/kubepods.slice 代表 pod qos顶级目录/sys/fs/cgroup/cpu/kubepods-besteffort.slice 代表 besteffort类型的pod。
2025-03-14 01:00:00
660
原创 2025-03-14:统计 1 显著的字符串的数量。用go语言,给定一个二进制字符串 s,请你计算其中被称为“1 显著”的子字符串的数量。 一个子字符串被视为“1 显著”,当它包含的 1 的数量大于或
2025-03-14:统计 1 显著的字符串的数量。用go语言,给定一个二进制字符串 s,请你计算其中被称为“1 显著”的子字符串的数量。一个子字符串被视为“1 显著”,当它包含的 1 的数量大于或等于 0 的数量的平方。s 仅包含字符 ‘0’ 和 ‘1’。输入:s = “101101”。输出:16。解释:1 不显著的子字符串如下表所示。总共有 21 个子字符串,其中 5 个是 1 不显著字符串,因此有 16 个 1 显著子字符串。
2025-03-14 01:00:00
349
原创 2025-03-13:统计不是特殊数字的数字数量。用go语言,给定两个正整数 l 和 r。对于一个数字 x,除了 x 自身以外的所有正因数称为 x 的真因数。 如果一个数字恰好有两个真因数,它被称为特
2025-03-13:统计不是特殊数字的数字数量。用go语言,给定两个正整数 l 和 r。对于一个数字 x,除了 x 自身以外的所有正因数称为 x 的真因数。如果一个数字恰好有两个真因数,它被称为特殊数字。例如:1.数字 4 是特殊数字,因为它的真因数是 1 和 2。2.数字 6 不是特殊数字,因为它的真因数有 1、2 和 3。你的任务是计算区间 [l, r] 内,非特殊数字的数量。输入: l = 4, r = 16。输出: 11。解释:区间 [4, 16] 内的特殊数字为 4 和 9。
2025-03-13 07:36:39
733
原创 10.3 kubelet 中的cgroupManager解析和节点qos顶级目录创建
CgroupManager负责cgroup相关操作,支持cgroup的创建、删除和更新CgroupManager应用之一就是创建节点的顶级qos cgroup目录driver类型有 cgroupsfs 和systemd 两者都是对cgroup的封装systemd 提供了 cgroups 的使用和管理接口。
2025-03-13 07:30:43
700
原创 2025-03-12:使数组等于目标数组所需的最少操作次数。用go语言,给定一个正整数数组 nums,Alice 和 Bob 正在进行一场游戏。游戏规则是,Alice 可以选择数组中所有的个位数或者所
2025-03-12:使数组等于目标数组所需的最少操作次数。用go语言,给定一个正整数数组 nums,Alice 和 Bob 正在进行一场游戏。游戏规则是,Alice 可以选择数组中所有的个位数或者所有的两位数,剩下的数字则由 Bob 得到。如果 Alice 选择的数字总和大于 Bob 的数字总和,则她获胜。请问,如果 Alice 有可能赢得这场游戏,返回 true;否则返回 false。输入:nums = [1,2,3,4,5,14]。输出:true。
2025-03-12 09:39:53
943
sokobanai1.0.1.zip
2020-06-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人