Loading

摘要: 前言 docker用了这么久了, 有没有想过, 在执行docker push 和 docker pull命令的时候, 数据是如何传递的呢? 换句话说, 如果要实现一个镜像仓库, 针对推拉的服务, 如何实现接口呢? 根据OCI 分发规范文档 的描述, 已经对整个推拉过程中要调用的接口有描述了. 但是, 阅读全文
posted @ 2024-03-24 16:19 烟草的香味 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 前言 在这篇文章中碰巧看到了Go边界检查消除相关的讨论. 我也借此简单聊聊. 有这样一段代码, 非常简单, 就是一段求向量点积的程序: func sum(a, b []int) int { if len(a) != len(b) { panic("must be same len") } ret : 阅读全文
posted @ 2024-02-25 14:01 烟草的香味 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 前言 常见的一个问题: 给定一个整形数组, 统计其中有多少唯一的元素. 常见的思路有哪些呢? 元素去重并统计, 利用哈希表进行去重计数. 数组排序后统计 以上空间复杂度均与元素数量关联, 如果允许损失精度, 是否可以使用较低的空间占用来统计呢? 利用布隆过滤器是一种的一种 但是, 我在这篇文章看到了 阅读全文
posted @ 2024-01-21 16:40 烟草的香味 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 前段时间, redis作者不是整了个c语言版本的聊天服务器嘛, 地址, 代码量拢共不过百行. 于是, 心血来潮下, 我也整了个Go语言版本. 简单来说就是实现了一个聊天室的功能. 将所有注释空行都去掉, 刚好100行实现. 废话不多说, 先上代码: package main import ( "fm 阅读全文
posted @ 2023-12-16 22:12 烟草的香味 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 前言 md5算法是我们经常会用到的一个hash函数, 虽然已经被证明是不安全的了, 但其应用依然十分广泛. 哈希函数具有如下特点: 将任意长度的字符串映射为固定长度 源数据微小的改动会导致结果差异巨大 不可逆 暴力破解困难 你有没有好奇过, 哈希函数是如何做到这些的呢? 本文就拿md5举例, 看一看 阅读全文
posted @ 2023-10-23 23:33 烟草的香味 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 通过网站 https://regex101.com/ 可以测试正则表达式的匹配结果及匹配过程. 本文章抛开各个编程语言实现差异, 仅做正则本身的介绍, 会尽量将正则这玩意说明白, 使得你看完这边文章后对正则基本可以运用自如. 温馨提示, 这篇文章会比较长, 大致浏览即可. 正确的方式是收藏起来, 等 阅读全文
posted @ 2023-09-12 10:19 烟草的香味 阅读(15) 评论(0) 推荐(0) 编辑
摘要: # 前言 相信对于软件工程师来说, CPU并不陌生. 人工智能以及机器学习带火了GPU. 经常听到的就是, GPU计算比CPU快, 但具体是怎么快的却从未刨根问底. 之前在听到GPU的时候, 我有过这样的疑问: 1. GPU是什么? 2. 为什么比CPU快? 快在哪里? 如果各方面碾压那CPU不就淘 阅读全文
posted @ 2023-07-08 16:51 烟草的香味 阅读(32) 评论(0) 推荐(0) 编辑
摘要: # 前言 有这样一个工具, 可以对镜像进行扫描, 拿出其中包含的软件包、lib库(pip包等)、危险文件等, 并能够识别出哪些包是存在漏洞的. 比如`trivy`工具. 那么他们是如何做到这件事情的呢? 正好最近在研究这块, 索性就简单谈一谈(其实原理很简单). # 获取包含内容 对于镜像的存储, 阅读全文
posted @ 2023-06-11 18:34 烟草的香味 阅读(61) 评论(0) 推荐(0) 编辑
摘要: # 前言 在[之前的文章](https://hujingnb.com/archives/899)中有说过容器目录的隔离机制. 今天来分析一下镜像的文件系统. Docker 已经用了很久了, 也知道镜像存储的时候是分层存储的(从`docker pull`时分层下载就能看出), 但是具体是如何将多层进行 阅读全文
posted @ 2023-06-04 11:13 烟草的香味 阅读(319) 评论(0) 推荐(0) 编辑
摘要: # 前言 在k8s中, pod是编排的最小单位, 在同一个pod中, 容器之间能够共享`hostname` `network` 等内容. 共享`network`, 简单说就是同一个pod中的容器, 可以通过访问`localhost`互相访问, 且端口占用会冲突. 在之前的介绍中提到过, 容器的隔离是 阅读全文
posted @ 2023-05-23 15:12 烟草的香味 阅读(87) 评论(0) 推荐(0) 编辑