InfraPub 为您找到相关结果 311

如何在 Debian 下配置邮件服务器

本教程将讨论如何在Debian(或Ubuntu)配置一个可工作的邮件服务器。我们知道在邮件服务器使用的主要协议有SMTP、POP和IMAP。在本教程中,SMTP协议使用postfix,POP/IMAP协议使用dovecot。两者都是开源的、稳定的和高度可定制的。本教程中不会介绍邮件服务器的安全性,这超出了本文的范围。 1.先决条件 个域必须有一个DNS服务器。建议不要使用Live域用于测试目的。在本教程中,将在实验室环境中使用测试域example.tst。在这个假设域名的DNS服务器应该在至少以下记录。 example.tst的forward zone配置: IN MX 10 mail.example.tst. mail.example.tst. IN A 192.168.10.1...阅读全文

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

Jono Bacon: GPL 没落了吗?

开源项目的增多,以及商业社会对于 GPL 协议的担心导致的,我们细细掰扯。 GPL 协议与商业社会 我知道我要说的可能会激怒一些 GPL 粉,所以在你们开始喷之前,我想说明的是:我支持 GPL,我也是 GPL 粉丝。 我写过的所有软件都使用的是 GPL 协议,我也是一直是积极出资支持 自由软件基金会 以及 软件自由保护组织 以及他们的工作的,我支持使用 GPL 协议。我在这说的无关 GPL 的合法性或者 GPL 的巨大价值 —— 毫无疑问这是一个好协议 —— 我在这要说的是业内对于这个协议的看法。 大概四年之前,我参加了一个叫做开源智库(Open Source Think Tank)的峰会。这个峰会是一个私人小型峰会,年都会把各大开源企业的管理人员请到加利福尼亚的酒庄。这个峰会聚焦于建立关...阅读全文

博文 2017-08-04 08:03:43 debian.cn

成功运作一个开源项目的15个要点

少。 2、透明 这一点很容易理解:我们要使得社区可以观察和了解你正在做的事情:使用易于查找的可公开访问的源代码存储库,使用面向公众的问题跟踪软件,在社区可以找到的地方公布发布计划,以及在公共论坛捕获会议记录(例如归档邮件列表)。 3、开放 对于很多开源项目来说,“透明度”和“开放性”意味着同一件事,但其实这两个术语的含义截然不同。开放不仅仅指的是“一目了然”(这与透明本质上是一样的)。对于许多人来说,开源的“开放”意味着开放新思想,或开放参与。参与开源项目的规则对于个人应该是一样的(“公平的竞争环境”):仅仅接受几个补丁是不够的,你必须对新的思路点子开放。总之,你必须允许别人参与你的项目,放弃对项目的绝对控制。 4、保持“公平的竞争环境” 这并不一定意味着你必须让任何人加入项目,而是要确保...阅读全文

博文 2017-11-08 09:58:28 debian.cn

技术部门的 SEO 规范

robots 文件禁止搜索引擎抓取。未完成内容的网站、栏目不得上线。不存在页面必须返回 404 代码。个月使用线上工具确认不存在页面服务器头信息。服务器开启 gzip 压缩。4XX、5XX 类服务器头信息不正常增多,及时通知SEO部门进行进一步检查。新站一律使用 https。开通子域名,需与 SEO 部门提前沟通并获得同意。 网站结构和URL URL一经确定上线,不得在没有得到SEO部门同意和提供对应机制的情况下,对URL做任何改动。除了已规划禁止搜索引擎抓取和收录的内容外,网站所有URL一律静态化。站内搜索结果页面使用robots文件禁止搜索引擎抓取。网站栏目与URL目录需一一对应,一级分类对应一级目录,二级分类对应二级目录。最多分级至二级目录,如果产品/页面数需要三级以上分类,请先与SEO部门沟...阅读全文

博文 2019-03-28 13:58:51 debian.cn

Golang 中的 channel 通道详解

channel通道golang的并发模型是序列通信处理CSP(communicating sequential process)——使用通信来共享内存 ,避免goroutine因竞争共享内存频繁加锁产生的性能问题。基本数据结构golang中提供了一个特殊的类型channel实现goroutine之间的通信。channel类似于队列,先进先出。channel数据结构源码在src/runtime/chan.go下。chan 使用 hchan 表示,它的传参与赋值始终都是指针形式,个 hchan 对象代表着一个 chan。hchan 中包含一个缓冲区 buf,它表示已经发送但是还未被接收的数据缓存。buf 的大小由创建 chan 时的参数来决定。qcount 表示当前缓冲区中有效数据的总量...阅读全文

Golang Context 探究

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

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

基于thanos搭建分布式prometheus

: path: /data/thanos-receive-data type: DirectoryOrCreate - name: thanos-receive-config configMap: name: thanos-receive-config 细节大家可以自己慢慢看,我讲一下关键: 用statefulset部署集群,因为这是一个有状态的存储集群,不能随便漂移。 因为是分布式存储集群,要通过POD亲和性避免2个POD跑到1个Node上。 核心配置是声明receive集群的地址列表,这里利用headless service可以直接拿到个POD的dns name,是有规则的。 个thanos receive实例的启动参数中指定replica标签唯一标识它。 thanos-receive集群的...阅读全文

博文 2021-03-01 13:02:46 鱼儿的博客

深入理解Golang之context

?其实可以想象一颗树,树的个节点可能携带一组键值对,如果当前节点上无法找到key所对应的值,就会向上去父节点里找,直到根节点,具体后面会说到。再来看看context包中的其他关键内容。emptyCtxemptyCtx是一个int类型的变量,但实现了context的接口。emptyCtx没有超时时间,不能取消,也不能存储任何额外信息,所以emptyCtx用来作为context树的根节点。// An emptyCtx is never canceled, has no values, and has no deadline. It is not // struct{}, since vars of this type must have distinct addresses. type...阅读全文

博文 2021-01-27 09:05:27 知乎

Debian 9 使用kubeadm创建 k8s 集群(下)

在前一篇文章中,我们介绍了 Debian Stretch 环境下,Kubernetes 集群安装的准备工作。本文我们将继续介绍 k8s集群 的安装配置工作。 第4步 - 设置主节点 在本节中,您将设置主节点。 但是,在创建任何Playbooks之前,值得介绍一些概念,例如Pod和Pod网络插件 ,因为您的群集将同时包含这两个概念。 pod是运行一个或多个容器的原子单元。 这些容器共享资源,例如文件卷和网络接口。 Pod是Kubernetes中的基本调度单元:pod中的所有容器都保证在调度pod的同一节点上运行。 个pod都有自己的IP地址,一个节点上的pod应该能够使用pod的IP访问另一个节点上的pod。 单个节点上的容器可以通过本地接口轻松进行通信。 然而,pod之间的通信更复杂,并...阅读全文

博文 2019-05-13 22:57:41 debian.cn

中国开源人访谈系列之:清风博主

+ openSUSE42.1,对了,还有一个 Windows10 Insider Preview。不过,日常使用的是Gentoo+kde5,其他系统很少用,只是偶而开机体验一下。 工作电脑(Gentoo+kde5,wineQQ) 我觉得这也不算是折腾技术,只是装个系统罢了。许多技术只是了解一些皮毛,没有基础,也没有精力深入学习。 现在天必做的事就是更新系统,Gentoo几乎天emerge –sync若干次,强迫症,没办法。。。至于其他发行版,基本上都是在Gentoo下chroot进去更新。也深刻体会到更新linux比更新windows方便太多了,在不影响正常使用的情况下,就能把笔记本上的所有发行版更新了,而更新windows时,啥也干不了,干等着吧。。。 现在Linux能满足我的绝大多数需求:上网不用说...阅读全文

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

说透IO多路复用模型_京东云开发者的博客

); struct sockaddr_in client; socklen_t addr_len = sizeof(client); //接收客户端连接 int connfd = accept(listenfd,(struct sockaddr*)&client,&addr_len); //读缓冲区 char buff[1024]; //读文件操作符 fd_set read_fds; while(1) { memset(buff,0,sizeof(buff)); //注意:次调用select之前都要重新设置文件描述符connfd,因为文件描述符表会在内核中被修改 FD_ZERO(&read_fds); FD_SET(connfd,&read_fds); //注意:select会将用户态中的文件描述符表放到...阅读全文

博文 2023-01-01 15:13:50 CSDN博客

提问的智慧 – 全文

提问在学习中占据着重要的位置,很多人对知识好奇,却收效甚少,原因他们是尚未掌握正确提问的方法,因此,我尝试修改《提问的智慧》,发布出来。原作者是Eric S. Raymond,这篇文章在黑客界拥有很高的地位,指引无数黑客前进,希望对你有用。 为何要做一个修改注释版? 试图做出一个容易阅读,方便理解,与时俱进,可以执行的提问执行方案。 原翻译为2010年,新版2013年,时2年有余,原作有变; 尊重原作的复制及引用协议[1]; 原翻译很好,检查中发现有些语句不顺,语意不准,或者已不符合现在语言规范,参照王刚老师的版本进行修改; 附上自己的看法和注解,更加适合现在阅读使用。 当有人来向我提问,我可以将他指引到这篇文章,可以减少很多的不必要的麻烦。 【本章注释】 [1]复制协议中注明了应用该...阅读全文

博文 2009-10-01 13:18:00 debian.cn

Linux:为什么那么多人讨厌 Systemd

,你几乎不能更改init系统。然而对大多数不深入sysadmining的用户来说,使用哪个init系统并不重要。 当然,个经验丰富的Linux用户都有自己的看法。这里就不一一列举出来了,Linux社区充满了很多精通技术的开发人员,他们对Linux应该如何发展和成长有着自己的意见。这些观点大多数是不相关的,取决于具体的工作需求。即便很多人投诉systemd,但却没有更完美的替代品出现,这也是systemd迅速扩张的原因。 我发现systemd单元和服务文件很容易维护,更重要的是,它可以很容易地转让给别人。systemd的拥护者给出了支持其的原因,比如很稳定,有一个容易的可配置的方式管理服务,也有一些中立人士不强烈反对systemd,但它的扩展速度实在令人担忧。它接管了很多不需要任何修复的功能...阅读全文

Kubernetes 1.7 发布,安全强化、StatefulSet 更新及可扩展特性

(canary)和分阶段(phased)推出部署(rollout);本地持久卷(Local Persistent Volume)。当前以Alpha版发布,允许用户通过标准的PersistentVolumeClaims/PersistentVolume接口及StatefulSets中的StorageClasses访问本地存储卷;DaemonSets。该特性用于确保给定的Pod对个节点准确地执行和运行一次,现已添加了rollback和history功能;新提供的StorageOS Volume插件,它可在本地的或附加的节点存储上提供在整个集群范围内高可用的持久卷。 在可扩展性方面,1.7中以Beta版的形式添加了API聚合层,允许用户在他们的集群中添加Kubernetes风格的预先构建的、用户定义的或是第...阅读全文

博文 2017-07-19 12:23:15 debian.cn

使用 tmate 分享你的终端会话

ssh 命令之类的共享信息。 tmate 是怎么工作的? 运行 tmate 时,会通过 libssh 在后台创建一个连接到 tmate.io (由 tmate 开发者维护的后台服务器)的 ssh 连接。 tmate.io 服务器的 ssh 密钥通过 DH 交换进行校验。 客户端通过本地 ssh 密钥进行认证。 连接创建后,本地 tmux 服务器会生成一个 150 位(不可猜测的随机字符)会话令牌。 队友能通过用户提供的 SSH 会话 ID 连接到 tmate.io。 使用 tmate 的必备条件 由于 tmate.io 服务器需要通过本地 ssh 密钥来认证客户机,因此其中一个必备条件就是生成 SSH 密钥 key。 记住,个系统都要有自己的 SSH 密钥。 $ ssh-keygen -t...阅读全文

博文 2017-12-06 10:33:33 debian.cn

JDK 11 版本时间表公布

最近有一些关于新版本发布周期的讨论。 Thymeleaf 的创始人兼首席开发人员 Daniel Fernández 最近发推文: 2016 年:“Java 命中注定!它发展得如此之慢!一个好想法都需要很长时间才能实现!” 2018 年:“Java 命中注定!它发展得太快了!没有人能跟得上!” 对 Fernández 的推文有一些有趣的回应,包括: “Kotlin?” “2020 年将会发生什么?Java 命中注定!没有它,我就无法过好我的生活!Java 在我家里随处可见,这个小咖啡杯究竟有什么威力,为什么它可以控制我的家,包括我的身体。” “Java 命中注定,因为他们专注于完整性而不是简单性。” “我们从中得到的教训是,变化不如过渡本身那么重要……事实上,这似乎是人生和计算机科学中一再出...阅读全文

博文 2018-04-27 08:33:08 debian.cn

AWS省钱攻略:预留实例怎么玩

实例的合并,必须在相同的时间过期,换句话说,也就是该批实例必须是同期采购的相同期限的RI。 可转换RI(CRI) CRI在灵活匹配与合并拆分的基础上增加了更多维度可转换属性:实例类型、操作系统、租期、付款选项,当然价格可能可能上浮10个点左右。可以说CRI提供了最高的灵活可变性,几乎可满足所有的更变需求。唯一的限制: 新可转换预留实例的总价值(预付价格 + 小时价格 * 剩余小时数)必须大于等于当前总价值! 换句话说客户只能在现有基础上加价,这种也是有道理,AWS 总不能因为您换了小规格实例给你退钱吧。 AWS RI使用的一些建议 如果没有容量预留的需求不要选择可用区RI,否则将失去灵活匹配优势针对业务计算需求增加需要调整实例类型机型(非license ) ,无需调整已购买的RI,只需要考...阅读全文

博文 2019-08-18 18:26:19 debian.cn

Debian目前面临的问题:钱足够但很缺人!

眉之急。 当前很多人承担了过多的责任。 最大的问题在于参与者,而非具体的过程。Carter 认为项目本身非常具有挑战。“问题永无止境,潜藏于项目的方方面面。计算机科学领域的任何问题,都同样存在于我们的工作中”。这将吸引那些勇于面对挑战的志愿开发人员参与其中,“Debian 是一个值得投入毕生精力关注的项目”。 “在不增加现有开发人员工作强度前提下,我估算达成我们期望项目目标所需增加的志愿开发人员规模,大约是目前人员规模的三倍。当前的项目人员承担了过多的责任,因为大家感觉到个人都是不可替代的。” 一种考虑是增加人员的多样性。Carter 本人来自南非,更倾向于增加非洲籍和女性代码开发人员。他还提议增加小规模会议、用户组活动等本地 Debian 活动,进而“降低进入项目的门槛”。 Carter...阅读全文

博文 2020-10-09 10:24:04 debian.cn

Golang 应用集成 Prometheus 统计数据支持

基本概念 Prometheus 所有采集的监控数据均以指标(metric)的形式保存在内置的时间序列数据库当中(TSDB):属于同一指标名称,同一标签集合的、有时间戳标记的数据流。除了存储的时间序列,Prometheus 还可以根据查询请求产生临时的、衍生的时间序列作为返回结果。 样本在时间序列中的一个点称为一个样本(sample),样本由以下三部分组成: 指标(metric):指标名称和描述当前样本特征的 labelsets; 时间戳(timestamp):一个精确到毫秒的时间戳; 样本值(value): 一个 folat64 的浮点型数据表示当前样本的值。 {

博文 2022-11-24 10:33:09 CSDN博客

C++ 夺冠!成为 TIOBE 2022 年度编程语言

, OpenEdge ABL, PL/I, Pony, Processing, Programming Without Coding Technology, Q, Racket, Raku, Ring, S, Solidity, SPARK, Tcl, VBScript, VHDL, X++, Zig Top 10 编程语言 TIOBE 指数走势(2002-2023) 历史排名(1987-2023) 注:以下排名位次取决于 12 个月的平均值。 编程语言“名人榜”(2003-2022) 【说明】: TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,月更新,这份排行榜排名基于全球技术工程师、课程和第三方供应商的数量,其中包括了流行的搜索引擎以及技术社区,如 Google、百度、维基百科、CSDN、必...阅读全文

博文 2023-01-10 06:42:12 CSDN博客

如何在 Linux 上安装 Intel 微代码固件

微代码就是由 Intel/AMD 提供的 CPU 固件。Linux 的内核可以在引导时更新 CPU 固件,而无需 BIOS 更新。处理器的微码保存在内存中,在次启动系统时,内核可以更新这个微码。这些来自 Intel/AMD 的微码的更新可以去修复 bug 或者使用补丁来防范 bug。 如果你是一个 Linux 系统管理方面的新手,如何在 Linux 上使用命令行方式去安装或者更新 Intel/AMD CPU 的微码固件呢? 如何查看当前的微码状态 以 root 用户运行下列命令: # dmesg | grep microcode 输出如下: 注意,你的 CPU 有可能出现没有可用的微码更新的情况。这时它的输出可能是如下这样的: [ 0.952699] microcode: sig...阅读全文

博文 2018-03-07 19:37:47 debian.cn

三个简单而优秀的 Linux 网络监视器

wlan0 这不是真的吗?我很惊讶地发现,我珍贵的带宽对于 Pandora 很宽裕,小时使用大约使用 500Kb。而且,像大多数流媒体服务一样,Pandora 的流量也有峰值,其依赖于缓存来缓解阻塞。 你可以使用 -G 选项对 IPv6 地址执行相同操作。请参阅手册页了解 iftop 的其他功能,包括使用自定义配置文件定制默认选项,并应用自定义过滤器(请参阅 PCAP-FILTER 作为过滤器参考)。 Nethogs 当你想要快速了解谁占用了你的带宽时,Nethogs 是快速和容易的。以 root 身份运行,并指定要监听的接口。它显示了空闲的应用程序和进程号,以便如果你愿意的话,你可以杀死它: $ sudo nethogs wlan0 NetHogs version 0.8.1 PID USER...阅读全文

博文 2017-11-07 00:07:38 debian.cn

Proxy-Go v6.6 发布啦

Proxy-Go v6.6 发布啦。Proxy 是 golang 实现的高性能 http,https,websocket,tcp,udp,socks5 代理服务器, 支持正向代理、反向代理、透明代理、内网穿透、TCP/UDP 端口映射、SSH 中转、TLS 加密传输、协议转换、DNS 防污染代理。 优化了 limitconn 的关闭逻辑, 释放更多资源. http(s)\socks 代理增加了–intelligent, 智能模式设置, 可以是 intelligent|direct|parent 三者之一, 默认是:intelligent. 个值的含义如下. --intelligent=direct, 不在 blocked 里面的目标都直连. --intelligent=parent, 不...阅读全文

博文 2018-12-01 09:52:14 Go v6.6 发布 新增智能模式

Python的闭包和装饰器

的。除此之外,闭包还有很多其他功能,比如用于封装等,另外,闭包有效的减少了函数参数的数目,这对并行计算非常有价值,比如可以让台电脑负责一个函数,然后串起来,实现流水化的作业等。 简而言之:@a 就是将 b 传递给 a(),并返回新的 b = a(b) 目录...阅读全文

博文 2014-07-23 17:06:38 debian.cn

Debian 成为主流 Linux 操作系统的七个原因

;几个对应工具(比如dnf和urpmi)有一两个选项是dpkg和apt-get所没有的。然而,它们仍是一大批用来查看和处理软件包的实用工具的核心。没有对应工具提供那么多的选项来解决安装冲突。这么多年后,dpkg和apt-get仍然独具一格。 6.风险的选择 Debian的三个主要软件库是Stable(稳定)、Testing(测试)和Unstable(不稳定)。这些名称体现了一个软件库中的软件包在测试这条道路上走得有多远,让用户可以根据自己的情况来兼顾最新软件包和稳定性程度。 如果你主要关注的是稳定性,那可以坚持使用Stable。相比之下,如果你想要最新的软件,可以使用Unstable,不过面临这种风险:有更多的软件错误,不相兼容。Testing通常介于这两个极端之间。 当然了,风险程度是相对...阅读全文

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

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

了十个速度最快的镜像,然后把它们写入到你的软件包源列表。apt-spy执行类似的功能。 3. apt-transport-tor 你可能也知道了,Tor是一款匿名浏览工具。然而,即便你注重安全,下载软件包有可能让别人跟踪你的活动,进而一路跟踪你的系统。 apt-transport-tor让你可以堵住这个安全漏洞,它通过Tor来传输软件包管理指令。 2. cron-apt 如果你注重安全,或者只想要最新软件包,cron-apt可以帮助你确保版本最新。顾名思义,cron-apt可以为你的系统调度定期下载,并通知可用更新版。用户往往天更新一次。 然而要注意:cron-apt下载但不安装更新的软件包。这个限制是有意设置的,因为在无人照看的情况下安装一切会导致系统问题。检查什么更新版可用后,你可以手...阅读全文

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

十条关于 WordPress 安全性的小贴士

: 可以编写和管理自己的帖子但不能发布的人 这些角色都不能授权配置 WordPress 或安装插件的权限。 7. 限制 IP 地址访问 如果你有几个具有静态 IP 地址的编辑器,则可以通过向 wp-admin 文件夹添加另一个 .htaccess 文件来限制访问: order deny, allow allow from 1.2.3.4 # user 1 IP allow from 5.6.7.8 # user 2 IP, etc deny from all 8. 隐藏 WordPress 版本号 某些版本的 WordPress 存在已知的漏洞。任何人也都可以轻松发现你正在使用的版本,因为它显示在个页面的 HTML 标签里面。通过在主题的 functions.php 文件中添加下...阅读全文

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

Tmux 快速教程:快捷键和配置

Tmux 简单来说就是终端里的『窗口管理器』,如果我使用终端登录到远程主机并运行前台程序,那么这个窗口等于就被占用了,想要看一下 CPU 的使用率,就得再连接一次。但是如果在远程主机上运行 tmux,那么就可以开启多个控制台(类似于窗口),相当高效,比方说可以像下面这样: 需要注意的是,这里是在我本地使用 tmux,最好在远程主机也安装 tmux,这样就只需要连接一次。 Hello World 前面提到的窗口管理只是 tmux 功能的一小部分,另一个很有用的功能就是,连接到远程主机之后,一旦断开,那么当前账户登录的任务就被取消了,但是使用 tmux 可以在断开之后继续工作,下次登录可以查看。其他的功能还有: 窗口切换,个窗口里还可以分割面板 配置方便,可以使用脚本 类似 vim 的双层操...阅读全文

博文 2017-11-07 15:17:49 debian.cn

Kubernetes 1.9发布:Apps Workloads通用版本与生态系统扩展

Kubernetes代码库的前提下开发自己的解决方案。 由于1.9版本中提供的功能尚处于alpha测试阶段,因此用户必须额外加以启用,且我们不建议您将其应用于实际生产。但该版本的出现,意味着Kubernetes存储生态系统正朝着更加可扩展且基于标准的方向迈进。 其它功能 定制化资源定义(简称CRD)验证版目前已经开始beta测试,其默认启用,可帮助CRD作者们针对无效对象得出清晰且即时的反馈。 SIG Node硬件加速器目前进入alpha测试阶段,可利用GPU资源实现机器学习以及其它高性能工作负载。 CoreDNS alpha版本允许用户利用标准工具安装CoreDNS。 IPVS mode for kube-proxy进入beta版本,可为大型集群提供更出色的可扩展性与性能表现。 社区中的个特别兴趣小组(简...阅读全文

博文 2017-12-17 01:00:00 debian.cn

DevOps 越来越流行,2019 年这八大趋势值得关注

生的变化以及转向 Kubernetes 的趋势。 安全性将成焦点——DevSecOps CI/CD 管道让通过快速变更来满足客户的日常需求成为可能。CI/CD 管道也可以进行自动化,而安全性现在已经成为了一个设计约束。从一开始就要考虑安全性,将安全性构建到软件中,而不是作为插件,因为安全性不再是附加功能。 最近,我们看到了 DevSecOps 的上升趋势,DevSecOps 是指先在应用程序开发生命周期中注入安全性,从而减少漏洞,并让安全性更接近 IT 和业务目标。这个模型假设个人都需要对安全性负责,因此减少了职责归咎方面的噪音和困境。 DevOps 和 DevSecOps 之间的区别 AI 和 ML 将促进 DevOps 增长 AI 和 ML 非常适用于 DevOps。它们可以处理大量信...阅读全文

博文 2018-12-10 22:49:57 debian.cn

谷歌开源了代码评审规范:好坏代码应这样来判断

评审者不需要的特性,那么即使代码做了不错的设计,评审者也应该不予通过。 没有所谓的“完美”代码,只有更好的代码。评审人员不应要求作者在批准前对 CL 的一小部分过分完美。相反,评审者应该权衡向前继续开发的需求和修改建议的重要性。评审者要求的是持续性地改进,而不是追求完美的代码。CL 作为一个整体,如果它能提升系统的可维护性、可读性和可理解性,那么就不要因为它还不完美而推迟数天或数周更新。 评审者应该经常留下一些评论,以表达能导致更好性能的做法。如果这些做法并不是非常重要的,那么需要加上前缀「Nit:」,从而令代码作者知道这些内容是可以忽略的。 评审指导 代码评审有一个很重要的功能,即教开发者一些开发经验,不论是语言、框架还是一般软件设计准则。留一些评论总会帮助开发者学习一些新的知识,共享知...阅读全文

博文 2019-09-10 17:19:13 debian.cn

APISIX Ingress 如何使用 Cert Manager 管理证书

对象,并且包含新的证书。 总结 本文主要讲解了如何利用 Cert Manager 在 Apache APISIX Ingress Controller 中进行证书的创建和管理。想了解更多关于 Apache APISIX Ingress 的介绍与内容,可参考本篇文章 或者参与 Apache APISIX Ingress 项目两周举行的线上讨论,分享当下项目进度、最佳实践及设计思路等多个话题,可查看具体 issue 了解更多。...阅读全文

博文 2023-02-09 07:38:06 中文开源技术交流社区

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

产生影响的可能性。这种精简使网络管理员可以更简便地进行配置。此外,这次更新提高了协议的速度,也给用户带来更好的浏览体验。 提升速度 网页加载速度的提高对web服务的成功是至关重要的。亚马逊公司曾有一个著名的发现:网页加载时间增加100毫秒,销售额就会下降1%。网页加载时间的一个主要组成部分就是浏览器和web服务器之间发送数据耗费的“延迟时间”。 “延迟时间”特别会显著影响到: 移动设备用户 服务器在地理上相距很远的用户 一条消息从悉尼往返纽约会花费超过200毫秒,而在移动设备上浏览还会增加这一延迟时间。通过现代4G移动网络发送一条消息通常会额外增加100毫秒的延迟。在欧洲仍普遍使用的3G网络下,这一延迟则会增加200毫秒。就连家用 WiFi 和 ISP 也会再增加几十毫秒的延迟。这些额外的...阅读全文

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

在树莓派上搭建 Raspbian 系统下的 Kubernetes 集群

网线即可交换机或路由器,以便将所有树莓派连接到一个内网中 安装的大部分工作都依赖网络,因此还需要能访问公网网络。 集群概览 在这个集群里,我们会使用三个树莓派。其中一个树莓派作为主节点,我们将它命名为 kmaster,并为其分配一个静态 IP 192.168.0.50(注:假设使用的私有网段是 192.168.0.0/24),而另外两个树莓派作为工作节点,分别命名为 knode1 和 knode2,也分别分配 192.168.0.51 和 192.168.0.52 两个 IP 地址。 当然,如果你的内网网段和我的不一样,注意 IP 与集群个节点角色的对应关系。 为了能通过主机名直接访问节点,我们会更新个节点的 /etc/hosts 文件,记录IP到主机名的对应关系: echo -e...阅读全文

博文 2020-04-12 16:30:23 debian.cn

图解 Debian 系统通用安装教程

登录,进入后输入一下命令即可完成桌面环境的启动。 startx 这下就能看见桌面环境了,剩下的就不用多说了。 如果出现中文乱码,以root权限进入xfce终端或在命令行界面输入以下命令: dpkg-reconfigure locales 方向键上下选择,Page Up/Down可以翻页,空格键选中。 将开头为zh_CN的几个全部选中,按回车键保存,选择zh_CN.UTF-8为默认locale,等待完成后重新启动系统即可解决乱码问题。 最后,在你晚上睡觉前还有个事情,那就是执行下面的命令。 apt-get update apt-get upgrade 之后关闭显示器电源,让系统自动更新去吧,所谓的快速安装就是把安装过程中的系统更新放到了最后,仅此而已。 这种安装方法有个不足之处,就是次启动后...阅读全文

博文 2017-07-13 12:52:56 debian.cn

Debian 10使用 Wine 安装配置微信、QQ与TIM

Debian10安装wine及用wine安装微信、QQ与TIM 作者:幻影剑客 概览 本文适用于Linux发行版Debian 10,主要参考winehq官方文档Debian部分,Debian wiki的wine,还有其他网上文章。总结起来,就是Debian 10的情况,要先安装faudio依赖,再安装wine官方版。安装完后要做启动配置、字体配置、输入框配置。如果想要更多功能还得做更多配置,这里没介绍了。 注意wine的个版本甚至在不同发行版的安装都有差别,需要先看winehq官方介绍、你的Linux发行版关于wine的wiki,然后是网上其他资料。下面部分是正式安装介绍。 搞定FAudio部分依赖 winehq的Debian安装页面指出,要先安装依赖FAudio,见 官方链接。这是因为...阅读全文

你应该选择Cinnamon作为Linux桌面环境的十个理由

。 我们还可以在其中找到“Create New Document”选项,借此在~/Templates目录中创建一个文档模板并列出现有模板选项。它使用的是用户默认的办公应用,我个人选择了LibreOffice。 8. 多工作区。Cinnamon与其他桌面环境一样提供多桌面功能,并将其称为“工作区”。工作区选择器位于Cinnamon面板中,且会显示个工作区的窗口缩略图。不过,我发现工作区选择器有时候无法及时跟上窗口的显示位置,所以我通过调整让选择器仅显示工作区数量,而非工作区内的具体窗口。 9. Nemo。大多数桌面都会使用自己的默认应用,Cinnamon也是如此。我个人最喜爱的桌面文件管理器是Krusader,但Cinnamon默认使用Nemo,所以我对它进行了测试。Nemo确实相当出色,界面干...阅读全文

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

处理器架构消亡史

架构也都是由RISC体系中发展出来的处理器架构。包括IBM所推出的Power架构也都是RISC体系中的一员。他们的到来,构建了出了璀璨的处理器架构时代,也对当时的英特尔造成了一定的压力。各领风骚数十载SPARC(可扩展处理器体系结构)是最初由Sun Microsystems开发的精简指令集计算(RISC)指令集体系结构(ISA)。它的设计在很大程度上受到早期RISC设计的影响,包括来自加利福尼亚大学伯克利分校和IBM 801的RISC I和II 。这些原始的RISC设计极简,包括尽可能少的功能或操作码,旨在以个时钟周期几乎一条指令的速率执行指令。SPARC于1986年首次开发,并于1987年发布,是最成功的早期商业RISC系统之一。在其推出首款SPARC处理器产品后,SPARC就很快地占领...阅读全文

粘合万种芯片的“万能胶” 是摩尔定律的续命丹吗? - 硬件

将芯片连接起来而形成的模型,在业内被称Chiplet(可译为芯粒、小芯片)模型。多年以来,AMD、英特尔、台积电、Marvell等芯片公司已经推出了一些类似于小芯片的设计,例如,英特尔采用了称之为Foveros的小芯片方法,推出了3D封装的CPU平台,该封装方式将1个10nm的处理器内核和4个22nm的处理器内核封装集成在一起;台积电也正在开发一种被称为集成芯片系统(SoIC)的技术。在这些技术中,裸片对裸片的互连至关重要,即需要将一个裸片与另一个裸片"黏合"在一起,个裸片都包含一个带有物理接口的IP模块,公共接口能够让两个裸片形成互连。在Chiplet初期的探索中,许多公司开发了具有专有接口的互连,实现自家芯片模型间的互连。由于Chiplet的最终目标是在内部或多个芯片供应商中获得优质且...阅读全文

博文 2022-04-08 07:35:46 cnBeta.COM

译:Kubernetes 最佳实践

如,一组开发人员可能只能访问名为 dev 的命名空间,并且无法访问 production 命名空间。 将不同团队限制在不同命名空间的能力对于避免重复工作或资源冲突可能很有价值。还可以针对命名空间配置 LimitRange 对象,以定义部署在命名空间中的容器的标准大小。ResourceQuotas 还可用于限制命名空间内所有容器的总资源消耗。可以对命名空间使用网络策略来限制 pod 之间的流量。使用就绪和存活探针Readiness(就绪)和 Liveness(存活)探针本质上都是健康检查的类型。这些是在 K8s 中使用的另一个非常重要的概念。就绪探针确保仅当 pod 准备好为请求提供服务时,才会将对 pod 的请求定向到它。如果它还没有准备好,那么请求将被定向到其他地方。为个容器定义就绪探针...阅读全文

博文 2022-09-13 19:32:21 atbug.com

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

> /bin/sh -c #(nop) CMD ["bash"] 0B /bin/sh -c #(nop) ADD file:1dd78a123212328bd… 123MB 但实际上,生成的镜像多了五个新层:一个层对应 Dockerfile 里的一个语句。 现在,让我们来试试 Docker 的多阶段构建。你可以继续使用与上面相同的 Dockerfile,只是现在要调用两次: FROM node:8 as build WORKDIR /app COPY package.json index.js ./ RUN npm install FROM node:8 COPY --from=build /app / EXPOSE 3000 CMD ["index.js...阅读全文

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

HTTP状态码详解

,而且有一个新的资源已经依据请求的需要而建立,且其 URI 已经随Location 头信息返回。假如需要的资源无法及时建立的话,应当返回 ‘202 Accepted’。 202 服务器已接受请求,但尚未处理。正如它可能被拒绝一样,最终该请求可能会也可能不会被执行。在异步操作的场合下,没有比发送这个状态码更方便的做法了。 返回202状态码的响应的目的是允许服务器接受其他过程的请求(例如某个天只执行一次的基于批处理的操作),而不必让客户端一直保持与服务器的连接直到批处理操作全部完成。在接受请求处理并返回202状态码的响应应当在返回的实体中包含一些指示处理当前状态的信息,以及指向处理状态监视器或状态预测的指针,以便用户能够估计操作是否已经完成。 203 服务器已成功处理了请求,但返回的实体头部元信...阅读全文

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

最全的 DevOps 工具集合

Jira Jira 是 Atlassian 开发的专用问题跟踪产品,提供了错误跟踪和敏捷项目管理功能。 JetBrains YouTrack YouTrack 是由 JetBrains 开发的,基于浏览器的专用商业软件,融合了错误跟踪器、问题跟踪系统以及项目管理软件。它的卖点是基于查询的问题搜索,拥有自动完成、分批处理问题、自定义问题属性集,以及创建自定义工作流的特性。 Zendesk Zendesk 可以轻松地从所有渠道跟踪一个客户问题。目前 Uber 和 Airbnb 等许多公司都在使用 Zendesk Support 作为他们的问题跟踪软件。 源代码控制 源代码控制主要是为了控制资产,减少沟通障碍,赋能团队。目前业内比较常用的 SCM 工具包括 Git、GitHub、GitLab...阅读全文

博文 2021-05-26 14:35:21 博客园

OpenAI掌门人Sam Altman:AI的下一个发展阶段_OneFlow

型的UBI实验。(Universal Basic Income,无条件基本收入;Sam Altman认为,十年后AI的生产力可以创造巨大财富,足够给个美国公民年无条件发放13,500美元。)有一个为期五年的项目已经进行到三年半了。UBI不会是唯一的解决方案,但它是一个不错的做法。 OpenAI从受AI冲击最大的行业中汲取意见,以便制定应对方案;对于那些最先被AI取代的劳动者,我们也尝试利用AI帮助他们学习新技能。我们还会不断地做类似的事情。 Audience Member:你如何定义AGI(通用人工智能)?怎么才算实现了AGI? Sam Altman:我理解的AGI相当于一个可以共事的普通人,任何远程同事可以通过电脑帮你完成的工作,AGI也可以做,包括让AGI学习医疗知识和写代码等等...阅读全文

博文 2023-02-04 15:55:11 CSDN博客

Kubernetes 使用 PodPreset 注入信息到 Pods_哎_小羊的博客

文章目录 1、PodPreset 介绍2、环境、软件准备3、K8s 启用 PodPreset 配置4、PodPreset 注入信息示例4.1、匹配指定 Pod 加载配置4.2、匹配某个 Namespace 下所有 Pod 加载配置 1、PodPreset 介绍 PodPreset 是一种 K8s API 资源,用于在创建 Pod 时注入其他运行时需要的信息,这些信息包括 secrets、volume mounts、environment variables 等,我们可以使用标签选择器来指定某个或某些 Pod,来将 PodPreset 预设信息应用上去。使用 PodPreset 的好处就是我们可以将一些常用 Pod 预设信息配置为模板,这样就不需要显式为个 Pod 提供所有信息,简化...阅读全文

博文 2021-01-27 18:47:00 CSDN博客

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

Bug、回应用户请求),来使你的 sponsor 相信你已经有能力来处理好某个特定软件包,这样他们才会在接下来的申请流程中推荐你。 一些 sponsor 会在他们觉得合适时向你提议申请 DM,另外一些不会,作为新维护人员要在自己觉得差不多合适的情况下和 sponsor 进行沟通,听取他的意见看是否可以申请。 6. 申请 DM 前要让至少一位你 sponsor 之外的 DD 对你的 GPG 密钥进行数字签名,且密钥本身至少要 2048 RSA 或更强。签署密钥不需要对技能的考察,其目的是确认个密钥的控制者确实是他本人,从而构建 Web of Trust,因而任何人都可以参与到密钥签名活动当中。签名时一般需要双方在现实生活中见面,互相检查身份证或护照确认无误后,交换事先打印好的 GPG key...阅读全文

Debian Live 项目的剧变

Williams 却坚持认为取代 live-build 很有必要。Learmonth 给 live-build-ng 换了一个争议性也许小一些的名字: live-wrapper 。他说他的目标是为 Debian Live 项目加入新的工具(并且「把 Debian Live 项目引入 Debian 里面」),但是完成这件事还需要很大的努力。 我向已经被 ITP 问题所困扰的个人道歉。我们已经告知大家 live-wrapper 还不足以完全替代 live-build 且开发工作仍在进行以收集反馈。尽管有了这部分的工作,我们收到的反馈缺并不是我们所需要的。 这种对于取代 live-build 的强烈反对或许已经被预知到了。自由软件社区的沟通和交流很关键,所以,计划去替换一个项目的核心很容易引起争议——更何况是...阅读全文

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

百度运维工程师挖矿实录:四个月用155台服务器挖矿赚10万判3年

和对生产系统的访问控制就变成了一个现实可控的问题。明略科技曾经在接受采访时表示: 对于运维人员的审核,最好对个运维线上的操作都能“操作前有审批”、“操作中有记录”、“操作后有核对”,在数据备份方面要做到权责分离。 当然,这不失为一个好办法,但对于运维员工自身来说,保持基本的职业操守或许更为重要。...阅读全文

博文 2020-03-17 20:42:41 debian.cn

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

!版权声明:本博客内容均均为原创,篇博文作为知识积累,写博不易,转载请注明出处。 目录[-] 参考地址: Nacos 官方文档 系统环境: Nacos 版本:1.4.1 Mysql 版本:8.0.19 Kubernetes 版本:1.20.1 项目示例地址: Kubernetes 中部署 Nacos 的部署文件 Kubernetes 中部署 Mysql 数据库部署文件 如果该文章对你有帮助,别忘了 Github 帮忙点颗星哦~ 一、什么是 Nacos Nacos 是阿里开源的服务注册中心与配置中心组件,能够帮助开发人员快速实现动态服务发现、服务配置、服务元数据及流量管理。同时能够与 SpringCloud、Kubernetes、Dubbo 等开源生态无缝集成。 Nacos 支持如下核心特...阅读全文

博文 2021-02-24 10:10:29 www.mydlq.club

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

。 Netpoll Netpoll 是字节跳动内部的 Golang 高性能、I/O 非阻塞的网络库,专注于 RPC 场景。 RPC 通常有较重的处理逻辑(业务逻辑、编解码),耗时长,不能像 Redis 一样采用串行处理(必须异步)。而 Go 的标准库 net 设计了 BIO(Blocking I/O) 模式的 API,为了保证异步处理,RPC 框架设计上需要为个连接都分配一个 goroutine,这在空闲连接较多时,产生大量的空闲 goroutine,增加调度开销。此外,net.Conn 没有提供检查连接活性的 API,很难设计出高效的连接池,池中的失效连接无法及时清理,复用低效。开源社区目前缺少专注于 RPC 方案的 Go 网络库。类似的项目如:evio、gnet 等,均面向 Redis、Haproxy...阅读全文

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