InfraPub 为您找到相关结果 566

kubelet 绑核与不绑核的性能差别

同一台主,同样的workload,kubelet 中配置CPU绑定后的性能变化: 绑核的配置放在 /etc/kubernetes/kubelet 中的这两行: ``` FEATURE_GATES="--feature-gates=CPUManager=true" CPU_MANAGER_POLICY="--cpu-manager-policy=static" ``` 绑核前: ``` procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in...阅读全文

TLS1.3 正式版发布 — 特性与开启方式科普

(SSL)的进化版本,SSL是由Netscape公司在1990年代研发的。国际互联网工程任务组(IETF)做为一个标准化组织,负责定义该协议,该协议已经历了多次修订。最新版本 TLS1.2 在 2008 年被确立为标准,目前被大多数浏览器和启用 HTTPS 的 web 服务所支持。 在配置正常的情况下,TLS 1.2 会很安全,但如今它却显得有些过时了。在过去几年中,几次引人注目的攻击暴露出该协议的一些漏洞。在计算安全领域,8年是一段很长的时间,因此 IETF 已经在着手开发该协议的新版本 TLS 1.3。TLS1.3 是一次全面升级,与此前版本相比,它有两个主要优势: 增强安全性 提升速度 增强安全性 过去几年来,大部分针对TLS的攻击都是以该协议90年代遗留下来的残余部分为目标的...阅读全文

博文 2018-08-14 14:40:05 debian.cn

改善 Debian Linux 软件包管理的七款工具

说,你可以用它来设定软件包安装时向你提出哪种类型的问题、重置问题的优先级,或者尽管软件包破损仍强行安装。 dpkg-reconfigure可用来配置基于Debian系统的几乎方方面面。由于出现了配置安装系统的其他工具,它的多用途性在丧失,不过dpkg- reconfigure仍可用于配置诸如此类的特性:时区、视频驱动程序、打印和扫描仪。Ubuntu弃用了dpkg- reconfigure,但是它在其他基于Debian的发行版中仍很有用。 4.netselect-apt 如今,互联网连接的速度已经非常快。然而,一些软件包代码库的速度仍比其他代码库要快;在使用高峰期间,流行的软件包代码库会降低速度。有时候,根本就缺少高速连接。 对于注重速度的那些人来说,netselect-apt为你的位置列出...阅读全文

博文 2021-01-28 17:50:21 debian.cn

三个技巧 大幅减少 Docker 镜像体积

个。 镜像的层就像 Git 的提交(commit)一样。Docker 的层用于保存镜像的上一版本和当前版本之间的差异。就像 Git 的提交一样,如果你与其他存储库或镜像共享它们,就会很方便。 实际上,当你向注册表请求镜像时,只是下载你尚未拥有的层。这是一种非常高效地共享镜像的方式。但额外的层并不是没有代价的。层仍然会占用空间,你拥有的层越多,最终的镜像就越大。Git 存储库在这方面也是类似的,存储库的大小随着层数的增加而增加,因为 Git 必须保存提交之间的所有变更。 过去,将多个 RUN 语句组合在一行命令中或许是一种很好的做法,就像上面的第一个例子那样,但在现在看来,这样做并不妥。 1. 通过 Docker 多阶段构建将多个层压缩为一个 当 Git 存储库变大时,你可以选择将历史提交记...阅读全文

博文 2018-09-06 10:50:29 debian.cn

Gitlab CI 配置文件 .gitlab

。CI_COMMIT_REG_NAME就是一个很好的例子,它的值表示用于构建项目的分支或tag名称。除了在.gitlab-ci.yml中设置变量外,还有可以通过GitLab的界面上设置私有变量。 更多关于variables。 cache Gitlab Runner v0.7.0 开始引入。 cache用来指定需要在job之间缓存的文件或目。只能使用该项目工作空间内的路径。 从GitLab 9.0开始,pipelines和job就默认开启了缓存 如果cache定义在jobs的作用域之外,那么它就是全局缓存,所有jobs都可以使用该缓存。 缓存binaries和.config中的所有文件: rspec: script: test cache: paths: - binaries/ - .config 缓存git中没有被跟踪的文件...阅读全文

博文 2018-12-12 21:01:19 ci.yaml 详解(上)

如何写好技术文档 — 来自十多年的文档经验总结

++规范,国内的阿里Java开发规范等…… 但对于文档 似乎相关的资料却很少。但实际上,不应该把文档和代码割裂开来,你可以简单粗暴地认为文档其实就是用一种特殊语言书写的代码,这种语言就是人类的语言。这么想的话,实际上我们很多在代码和工程中总结出来的经验,也可以直接用在文档中,比如: - 有统一的规范 - 有版本控制 - 有明确的责任人维护 - 有变更Review制 - 有问题的反馈和更新制 - 定期更新 - 有衡量的指标(比如准确性,时效性) ## 明确你的读者是谁 ## 写文档有一个很常见的错误,那就是很多人文档都是写给自己看的,这种情况下就会导致你的文档只有自己或者和你有相似知识背景的人才能看懂,团队较小时这种问题还好,你们都做着类似的工作,所以也都能看懂文档。但当团队逐渐壮大后,问题就...阅读全文

博文 2021-07-30 16:15:13 joseph

“Debian 章程有毒” - OSCHINA

,都可以向技术委员会寻求建议。 在 Russ Allbery 2014年的辞职信中,他说了许多“累觉不爱”的话: 技术委员会的工作和相关话题已经成为我在 Debian 工作的绝大部分。这并不有趣。我太低估这份工作所需要的情感和注意力了,这比时间投入更加糟糕。 几乎技术委员会的每一个决定都充斥着不愉快,在现有的框架下,技术委员会每做一个决定都需要更多的技巧、关心、注意力和小心翼翼,这些使我心理压力巨大。 同时,他还认为管理是必须的,他相信一个大团体的制中需要更多的管理,这个组织才不会因为分歧而陷入瘫痪。 而 Debian 现在最主要的问题,就是管理缺失。当初,Debian 开发者们通过章程最大程度上架空了 DPL 这一角色,但管理的需求仍在,于是技术委员会就不得不发挥一定的管理作用。 因此,职...阅读全文

博文 2021-12-06 13:55:33 中文开源技术交流社区

开源社区的运作模式:Debian Vs. Ubuntu

了这个身份后才可以参与Ubuntu社区委员会的选举,也才有会参与Planet Ubuntu计划(注:这是一个类似于集体博客的计划),此外,还可以获得一个@ubuntu.com邮件别名。 对于开发人员,情况更复杂:Wiki页面列出了不少于5种身份。最初,开发人员分为Ubuntu核心开发人员(UCD)和Ubuntu宇宙大师(MOTU),后者负责universe/multiverse部分的归档,而前者则有main/restricted部分的上传权限。不过,受到Debian维护人员角色的启发以及在归档方面面临的一些具体问题,Ubuntu修改了底层结构,以提供更细粒度的包上传控制。(注:Ubuntu主要分为四大组件:Main,Restricted,Universe,以及Multiverse。Main...阅读全文

博文 2021-01-28 17:50:09 debian.cn

Debian 10.8 发布:包括多项安全更新和错误修复

) | 修正cron脚本中的版本比较 | | [debian-edu-config](https://packages.debian.org/src:debian-edu-config) | 将主keytabs清理代码从gosa-modify-host中移出,变成一个独立的脚本,将LDAP调用减少为一个查询 | | [debian-installer](https://packages.debian.org/src:debian-installer) | 使用 4.19.0-14 Linux 内核 ABI;根据提议的更新进行重建 | | [debian-installer-netboot-images](https://packages.debian.org/src:debian...阅读全文

博文 2021-02-07 10:57:22 joseph

Golang 中的 channel 通道详解

,channel的零值也是nil。两个相同类型的channel可以使用==运算符比较。如果两个channel引用的是相同的对象,那么比较的结果为真。一个channel也可以和nil进行比较。通道的操作发送ch := make(chan int,0) // 创建一个无缓存区的int channel ch <- 998 // 向通道发送一个int类型的值10 接收receiver := <-ch //将通道ch的值取出,赋值给变量receiver <- ch //将通道ch的值取出,忽略结果 关闭close(ch) // 关闭通道 关于关闭通道需要注意的事情是,只有在通知接收方goroutine所有的数据都发送完毕的时候才需要关闭通道。通道是可以被垃圾回收制回收的,它和关闭文件是不一样的,在结束操作之后关闭...阅读全文

Golang Context 探究

server 来解释, Go 服务每次都是启动一个新的 goroutine 来处理每一个请求,在这个请求的操作往往会启动新 goroutine 访问数据库或其他服务,如果此时客户端断开了连接,后续的消耗资源的操作就完全没必要了。所以我们需要一个在 goroutine 之间同步取消信号,截止时间的制或者特定请求数据。而 Context 被设计出来就是帮我们实现这个目标。 1 2 3 |-----------| |-----------| |-----------| | goroutine |-------> | goroutine |-------> | goroutine | |-----------| |-----------| |-----------| 默认 Context context 包...阅读全文

博文 2021-02-25 09:27:27 lxkaka

字节跳动开源微服务中间件 CloudWeGo - OSCHINA

这样的场景。 因此 Netpoll 应运而生,它借鉴了 evio 和 Netty 的优秀设计,具有出色的性能,更适用于微服务架构。 Thriftgo Thriftgo 是 Go 语言实现的 Thrift IDL 解析和代码生成器,支持完善的 Thrift IDL 语法和语义检查,相较 Apache Thrift 官方的 Golang 生成代码,Thriftgo 做了一些问题修复且支持插件制,用户可根据需求自定义生成代码。 Kitex 的代码生成工具就是 Thriftgo 的插件,CloudWeGo 近期也会开源另一个 Thriftgo 的插件 thrift-gen-validator,支持 IDL Validator,用于字段值校验,解决开发者需要自行实现代码校验逻辑的负担,弥补...阅读全文

博文 2021-09-09 13:56:42 中文开源技术交流社区

Go 语言的大版本更新:Go 2.0 安排上了

月)。 而在为期3个月的开发周期中(2019年2月至5月),被选择的提案将会被实现,每位使用者都可以体验新功能并进行反馈(评估流程的第4步)。最后,在短暂的冻结期后(2019年5月1日),Go 开发团队会最终决定是否永久保留新功能(并保证这些功能与 Go 1 兼容),或是放弃这些功能(评估流程的最后一步)。 Go 开发团队表示这是首次采用这一流程,因此在冻结阶段将会是反思这个流程,并在必要时进行调整的好会。我们也不妨拭目以待吧!...阅读全文

成为Debian社区维护人需要做好的准备

)列表是一个不错的开始。打包前需要考虑:自己是否有足够的知识和能力来维护这个包?在可预见的一段日子里是否有充足的时间和精力来进行 更新和修复 Bug?如果答案都是肯定的,那么就动手把它打包好,期间遇到问题则找人咨询指导。 4. 当经过反复检查和测试,觉得软件包已经比较完善时,寻找一位 Debian Developer 帮你检查和上传软件包,这位 DD 此时便是你的 sponsor。 当找到一位愿意帮忙的 DD 后,他会对你的软件包进行彻底的检查,指出(可能)存在的问题并请你修改。这时要做的就是参考他的意见修改软件包,并把结果再发给他,这是一个极好的学习 会。如此反复若干次后软件包最终会符合 Debian 的标准,之后 sponsor 便会将其上传到 Debian 仓库。需要说明的是,经由...阅读全文

Debian 往事: 与已故创始人 Ian Murdock 的昔日访谈

Ian Murdock 走了,但 Debian 常在。今天就从与 Ian Murdock 的访谈来回顾一下 Ian 的 Debian 往事。 Debian 社区前几日宣布,Debian 的著名创始者 Ian Murdock 已经去世,死因至今不明。到官方公布具体死因之前,恐怕我们多猜测也无益。今天,不如让我们一起来回顾一下 Murdock 对免费软件的发展做出的贡献。 1999 年 11 月,我曾有幸与 Murdock 有过一次访谈。我为写《Rebel Code:Linux and the Open Source Revolution》这本书共做过 50 多次访谈,这就是其中一回。虽说在书中我只引用了 Murdock 所说的寥寥几句,不过如今,借着这个时,我想用 Murdock 自己的话...阅读全文

博文 2021-01-28 17:50:13 debian.cn

HTTP状态码详解

新的 URI 的超链接及简短说明。 注意:许多 HTTP/1.1 版以前的 浏览器不能正确理解303状态。如果需要考虑与这些浏览器之间的互动,302状态码应该可以胜任,因为大多数的浏览器处理302响应时的方式恰恰就是上述规范要求客户端处理303响应时应当做的。 304 如果客户端发送了一个带条件的 GET 请求且该请求已被允许,而文档的内容(自上次访问以来或者根据请求的条件)并没有改变,则服务器应当返回这个状态码。304响应禁止包含消息体,因此始终以消息头后的第一个空行结尾。 该响应必须包含以下的头信息: Date,除非这个服务器没有时钟。假如没有时钟的服务器也遵守这些规则,那么代理服务器以及客户端可以自行将 Date 字段添加到接收到的响应头中去(正如RFC 2068中规定的一样),缓存...阅读全文

博文 2021-01-28 17:50:11 debian.cn