InfraPub 为您找到相关结果 266

Gitlab CI 配置文件 .gitlab

types 已废除,将会在10.0中移除。用stages替代。 与stages同义 variables GitLab Runner V0.5.0. 开始引入 GItLab CI 允许在.gitlab-ci.yml文件中添加变量,并在job环境中起作用。因为这些配置是存储在git仓库中,所以最好是存储项目的非敏感配置,例如: variables: DATABASE_URL:"postgres://postgres@postgres/my_database" 这些变量可以被后的命令和脚本使用。服务容器也可以使用YAML中定义的变量,因此我们可以很好的调控服务容器。变量也可以定义成job level。 除了用户自定义的变量外,Runner也可以定义它自己的变量...阅读全文

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

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

(Kubernetes中的节点指服务器)负责管理集群的状态。 它运行Etcd ,它在将工作负载调度到工作节点的组件之间存储集群数据。 两个工人节点 工作节点是运行工作负载 (即容器化应用程序和服务)的服务器。 一旦工作人员分配了工作负载,工作人员将继运行您的工作负载,即使主计划在调度完成后停止工作也是如此。 通过添加工作人员可以增加群集的容量。 完成本指南后,如果群集中的服务器具有足够的CPU和RAM资源供应用程序使用,您将拥有一个可以运行容器化应用程序的集群。 几乎任何传统的Unix应用程序(包括Web应用程序,数据库,守护程序和命令行工具)都可以进行容器化,并在集群上运行。 群集本身将在每个节点上消耗大约300-500MB的内存和10%的CPU。 设置群集后,您将向其部署Web服务器Nginx ,以确保它...阅读全文

博文 2019-05-13 22:47:39 debian.cn

阿里巴巴版 JDK 首发 GA 版 生产环境可用

今年3月份,Dragonwell JDK正式开源,发布预览(Preview)版本。近日,阿里巴巴重磅宣布 Dragonwell JDK 8.0.0-GA 正式版发布,这意味着 Dragonwell JDK 已经完全具备在生产环境运行的能力。 在过去三个月时间内,Dragonwell 收到了很多来自社区成员的反馈。那么,本次正式发布的 GA 版本加入了哪些新特性?对开发者而言意味着什么? Dragonwell JDK 8.0.0-GA 在很大程度上,Java 由 Oracle 长期主导。自 2017 年底,Oracle 就开始陆转变 Java 策略,逐渐将 Oracle JDK 中的商业功能开源给社区,并宣布不再提供免费商业版本更新,不提供安全更新和漏洞修复支持。 这对开发者而言意味着什么...阅读全文

博文 2019-07-11 10:24:52 debian.cn

如何读懂火焰图?+ 实例讲解程序性能优化 - xuxh120

火焰图(flame graph)是性能分析的利器。本文介绍它的基本用法。 一、perf 命令 让我们从 perf 命令(performance 的缩写)讲起,它是 Linux 系统原生提供的性能分析工具,会返回 CPU 正在执行的函数名以及调用栈(stack)。 通常,它的执行频率是 99Hz(每秒99次),如果99次都返回同一个函数名,那就说明 CPU 这一秒钟都在执行同一个函数,可能存在性能问题。 $ sudo perf record -F 99 -p 13204 -g -- sleep 30 上面的代码中,perf record表示记录,-F 99表示每秒99次,-p 13204是进程号,即对哪个进程进行分析,-g表示记录调用栈,sleep 30则是持30秒。 运行后会产生一个庞大...阅读全文

博文 2022-03-11 10:05:09 博客园

Golang 操作 Kafka 样例

)、consumer(消息消费者)都可以是分布式的。 在消息的生产时可以使用一个标识topic来区分,且可以进行分区;每一个分区都是一个顺序的、不可变的消息队列, 并且可以持的添加。 同时为发布和订阅提供高吞吐量。据了解,Kafka每秒可以生产约25万消息(50 MB),每秒处理55万消息(110 MB)。 消息被处理的状态是在consumer端维护,而不是由server端维护。当失败时能自动平衡 1.1.3. 常用的场景 监控:主机通过Kafka发送与系统和应用程序健康相关的指标,然后这些信息会被收集和处理从而创建监控仪表盘并发送警告。 消息队列: 应用程度使用Kafka作为传统的消息系统实现标准的队列和消息的发布—订阅,例如搜索和内容提要(Content Feed)。比起大多数的消息系统来说,Kafka...阅读全文

博文 2023-01-10 13:46:09 掘金

最全的 DevOps 工具集合

本文最初发布于 Better Programming 博客,经原作者授权由 InfoQ 中文站翻译并分享。 随着 DevOps 的出现频率越来越高,很多企业都在蠢蠢欲动,想要设计和开发 DevOps 平台。工欲善其事必先利其器,本文为大家总结了 DevOps 各个阶段可以选择的工具,也许 DevOps 平台的技术选型在这一篇文章中就可以完成。 DevOps 的目标是持改进,因此技术选型也是分阶段的。 DevOps 技术类别 规划工具 在规划阶段最重要的是要制定共同的目标、保证透明度和赋权。目前业内比较常用的规划工具主要包括 GitLab、TaskTop、CollabNet VersionOne、Pivotal Tracker、Trello 和 Azure Boards。 GitLab...阅读全文

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

Debian Linux下LNMP环境配置

-mysql php5-memcache php5-curl 如上命令安装了php5-memcache的扩展,因此继安装Memcached: apt-get install memcached 安装完成之后,可以使用“php5-fpm -v”查看PHP的版本。 4.安装Nginx 我在安装的时候直接安装了Nginx的全部扩展功能(nginx-full),后边可能会有功能性的增强,所以在安装的时候直接全部安装了: apt-get install -y nginx-full 然后启动Nginx: service nginx start 放问地址http://ip,如果看到如下所示,就说明你的Nginx安装正常。 接下来配置Nginx,Nginx的配置文件在“/etc/nginx/sites...阅读全文

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

Ubuntu 17.04(Zesty Zapus)正式版发布

本开始,不再支持 32 位 PowerPC(PPC)架构,以后的发行版也不再会支持。但是 PPC64el(PowerPC 64 位 Little Endian)会持支持。现在,已经可以从我们网站上下载 Ubuntu 17.04的 64 位(amd64)和 32 位 ISO(i386)镜像。 其他的 Ubuntu 风味版本也在今天开始发行,包括 Ubuntu GNOME 17.04、Ubuntu MATE 17.04、Kubuntu 17.04、Xubuntu 17.04、Lubuntu 17.04、Ubuntu Kylin 17.04、Ubuntu Studio 17.04 以及 Ubuntu Budgie 17.04,这也是 Budgie 桌面作为官方的 Ubuntu 风味版本的首次亮相...阅读全文

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

Google 关于 Go 2 的讨论

Go 1规范还存在,他们的程序将可以继编译并正确运行。现在,要设计的Go 2规范,存在破坏与1.x兼容的可能性。Cox认为需要谨慎选择新特性。 Go 2必须带动所有开发者[包括使用Go 1.x的开发者]。只有回报足够丰富,我们才能要求他们放弃旧有习惯,来学习Go 2的新特性。 Go 2还必须兼顾所有现有的Go 1源代码。 我们不能分裂Go生态系统。在混合型的项目中,用Go 2 写的包中导入了用Go 1写的包,或者相反的情况,这种情况必须要在多年的过渡期中正常运行。我们必须弄清楚如何做到这一点,自动化工具像go fix一定会发挥作用。 为了避免引起混乱,Google将新功能的数量限制为“两到三个”,一定不超过五个“,”每一个变化都需要仔细的思考,规划和工具化“。 这些功能不包括“允许使用更加口...阅读全文

博文 2017-07-20 10:03:13 debian.cn

Facebook 正式发布 JavaScript 包管理器 Yarn 1.0

Facebook 已于上周正式发布 JavaScript 包管理器 Yarn 1.0。 Facebook 表示 GitHub 上有 175,000 个项目在使用 Yarn,许多大大小小的公司和广大开源社区也在使用 Yarn,每个月通过 Yarn 下载的包数量接近 30 亿个。此外,Yarn 现在也已预安装在诸如 CircleCI、Travis CI 和 AppVeyor 这些主流的持集成平台上。 Yarn 具有极佳的伸缩性,可以支持成千上万个直接或间接的包依赖。Yarn 的设计初衷是保证稳定性、弹性和高性能。基于这些原则,Yarn 1.0 带来了更多的新特性,希望能够帮助 Yarn 社区更快地发展,构建更好的项目。 Yarn 1.0 中值得关注的新特性 Yarn 工作区 (Yarn...阅读全文

博文 2017-09-19 14:43:15 debian.cn

如何在一个U盘上安装多个Linux发行版

单击“安装发行版”选项并继安装。在显示成功的安装消息之前,需要一些时间才能完成。 你现在可以在已安装部分中看到发行版了。对于另外的操作系统,重复该过程。这是我安装 Ubuntu 16.10 和 Fedora 24 后的样子。 MultiBootSystem with Ubuntu and Fedora 步骤 6 下次通过 USB 启动时,我可以选择任何一个发行版。 Boot Menu 只要你的 U 盘允许,你可以添加任意数量的发行版。要删除发行版,请从列表中选择它,然后单击卸载发行版。 最后的话 MultiBootUSB 真的很便于在 U 盘上安装多个 Linux 发行版。只需点击几下,我就有两个我最喜欢的操作系统的工作盘了,我可以在任何系统上启动它们。 如果你在安装或使用...阅读全文

博文 2017-10-18 13:42:20 debian.cn

历数2017年五大Linux痛点

统的消失 许多用户都在哀叹他们最喜爱的发行版和软件项目中不再支持32位操作系统。越来越少的产品继支持32位平台,这将会带来市场份额的降低和用户的流失。幸运的是,我们谈论的是开源,所以只要有人还在关心32位平台,你至少会有几个32位系统可选择。 5.不支持X-forwarding 很多长期用户经常使用X-forwarding,并将其看作一个关键功能。但随着Linux有越来越多的人使用,其对于X-forwarding的测试和支持有所减少,尤其是新应用程序。随着网络的透明度不断发展,情况可能会在好转之前变得更糟。 与去年相比有哪些变化 ·视频(特别是加速器加速;最新的视频卡;专用驱动程序;高效的电源管理) ·蓝牙支持,特定的wifi芯片和打印机,电源管理以及暂停/恢复,对许多用户来说仍然是麻烦的...阅读全文

博文 2017-11-25 12:27:56 debian.cn

2018 GitHub 最火技术趋势

。Warner强调说,安全性必须是代码不可分割的一部分,不能简单地在生产过程中才添加至系统。Warner看到了由于对机器学习的关注,对目前的安全领域产生了巨大影响,这种趋势最终会导致构建的系统会受一个自动的保护机制所保护。 云服务基础设施方面将会有工具和服务的增长,这些工具和服务将减少开发人员对基础设施的关注,开发人员能够更自由地专注于构建他们的产品和项目。这一过程将会与Warner所谓的“工作流战争(workflow war)”相关联: 随着大型科技公司开始收购那些专注于提升开发人员体验、解决基础设施问题以及构建更好的工作流工具的小型企业,企业的并购活动将会升温。 开源软件将在2018年继发展,并将成为许多开发封闭源代码系统公司的重要竞争对手。据Warner所说,这一趋势在过去的10年中一直都很强劲...阅读全文

博文 2017-12-14 22:50:29 debian.cn

当 Atom 遇见 VSCode:微软将对 GitHub 做的 6 件事

在微软宣布以 75 亿美元的价格收购 GitHub 后,这个在全球拥有超过 2800 万开发者的代码托管平台即将在微软庞大的云计算框架下进行独立运作。 微软 CEO Satya Nadella,CFO Amy Hood ,GitHub 联合创始人兼现任 CEO Chris Wanstrath ,以及即将上任的 GitHub CEO(也是 Xamarin 创始人)Nat Friedman 昨天在短暂的媒体电话会议中分享了有关此次收购和微软对 GitHub 的后规划的更多细节。 微软在扩展 GitHub 的覆盖面,以及将平台融入微软生态上有着宏伟的规划,但所有的计划会基于以下两点原则:GitHub 将保持自主性独立运营,GitHub 向所有开发者开放。 1、三大策略将 GitHub 融入微软...阅读全文

博文 2018-06-06 11:08:17 debian.cn

GitHub 发布10月21日系统故障分析报告

Raft 共识机制之上达成共识。Orchestrator 可以实现应用程序无法支持的拓扑,因此必须注意将 Orchestrator 的配置与应用程序级别的期望保持一致。 然而 21 日,在上述网络分区中,Orchestrator 在主数据中心中一直保持活跃,根据 Raft 的共识机制,它开始了一个取消领导选举的过程。美国西海岸数据中心和美国东海岸公有云 Orchestrator 节点能够建立合规数量并开始对群集进行故障转移,以便将写入指向美国西海岸数据中心。Orchestrator 继组织美国西海岸数据库集群拓扑,当连接恢复时,应用层立即开始将写入流量引导到西海岸站点的新当选者。 美国东海岸数据中心的数据库服务器包含一段短暂的写入时间,但尚未复制到美国西海岸的设施。由于两个数据中心中的数据库集群...阅读全文

Rancher 2.2.2 发布:优化 Kubernetes 集群运维

Rancher 2.2.2 发布了。Rancher 是一个开源的企业级 Kubernetes 平台,可以管理所有云上、所有发行版、所有 Kubernetes 集群,解决了生产环境中企业用户可能面临的基础设施不同的困境,改善 Kubernetes 原生 UI 易用性不佳以及学习曲线陡峭的问题。 新版本的更新亮点有: Rancher CVE-2019-11202 修复 开发团队发现过一个问题:Rancher 首次启动时创建的默认管理员帐户将在 Rancher 的后重新启动时重新创建,即使 Rancher 管理员明确删除了该帐户,也仍会如此。这会带来一定的安全风险,因为帐户是使用 Rancher 的默认用户名和密码重新创建的。因此,攻击者可以使用这些默认账号密码来获取对 Rancher...阅读全文

博文 2019-04-22 13:49:38 debian.cn

HTTPS 证书有效期被提议缩短至13个月

推荐的加密和散列证书,而不是使用不安全算法的老化证书。 不过,本周一时,DigiCert 的 Timothy Hollebeek 却反对将证书有效期缩短至 13 个月,他认为,缩短证书寿命确实带来的好处,但意味着要有更好的方法来确保证书是最新的和安全的,同时也存在一些麻烦,企业不得不每年签一次付费证书,并且增加其成本。 换句话说,减少有效期可能会促使企业免费使用 Let's Encrypt TLS/SSL,就不会向 Digicert 这样的机构支付费用。Let's Encrypt 可以免费发放 90 天的 HTTPS 证书,使用提供的软件客户端来自动更新和部署证书,而由于几乎所有浏览器和操作系统都支持 Let's Encrypt TLS/SSL 证书,导致该服务正给向 HTTPS 证书收费...阅读全文

博文 2019-08-14 14:13:58 debian.cn

Kubernetes 1.16.0发布 新版本四大主题

Network Proxy 在 1.16 版本中进入 AlphaCloud Controller Manager Migration 增强继淘汰 extensions/v1beta1、apps/v1beta1 和 apps/v1beta2 API,这些扩展会在 1.16 版本中被弃用 已知的问题: etcd 和 KMS plugin 的健康检查没有在新的 livez 的 和 readyz 端点中公开。这将在 v1.16.1 中得到修正。 运行iptables 1.8.0 或更新版本的系统应以兼容模式启动它。请注意,这将影响所有版本的 Kubernetes,而不仅仅是 v1.16.0。 升级前须知: 集群生命周期 amd64 的容器镜像 tar 文件现在将包含 RepoTags...阅读全文

博文 2019-09-20 13:28:32 debian.cn

Debian 公布关于支持非 systemd 初始化系统的投票结果

本月初,Debian 开发团队发起投票以决定是否要支持非 systemd 初始化系统。现在投票已结束,最终投票结果为“选择 systemd 但同时探索替代方案”。 当时的投票总共包括 8 个选项: 继专注于 systemd选择 systemd 但同时探索替代方案支持多个初始化系统很重要支持非 systemd 初始化系统,但避免影响进度支持可移植性,避免影响进度支持多个初始化系统是必要的支持可移植性和多个初始化系统需要进一步讨论 根据 Debian 公布的结果,最终获胜的投票选项为: “Systemd but we support exploring alternatives.”(选择 systemd 但同时探索替代方案) 对于这个选项,发起此提案的开发者也讲述了他的想法: Debian...阅读全文

博文 2019-12-29 13:53:51 debian.cn

树莓派4上如何安装 Raspbian Buster

Win32DiskImager 中打开、浏览该文件。单击 “Write”,就可以开始往SD卡中录入系统镜像了。这一步会花费些时间,一般两分钟左右。写入完成后,我们会看到如下所示的 “写入成功” 的提示。 现在您就可以在系统中,安全地弹出 microSD卡 并继下一步了。 启动树莓派4 将闪存SD卡插入 树莓派4 底部的SD卡插槽中,接入 USB-C 的电源线,然后连接显示器和键盘。我们就可以看到炫丽的树莓派启动画面了。在Pi的第一次启动时,屏幕右上方会显示几个 Raspberry Pi 徽标。 Raspbian的启动速度明显快于 NOOBS,因为 NOOBS 功能更多,更强大,为我们提供更多的选择和安装替代操作系统的窗口。 树莓派启动后,我们就会看到漂亮的壁纸和初始的 Raspberry Pi 设置向导。只需按照屏幕...阅读全文

博文 2020-02-04 19:33:29 debian.cn

三大亮点带你看 Linux 内核 5.6

版中,硬件支持也将继提升。而支持新式无线外设的计划也同样是优先的。 新内核中将增加对 MX Master 3 鼠标以及罗技其他无线产品的支持。 除了罗技的产品外,你还可以期待获得许多不同硬件的支持(包括对 AMD GPU、NVIDIA GPU 和 Intel Tiger Lake 芯片组的支持)。 6、其他更新 此外,Linux 5.6 中除了上述主要的新增功能或支持外,下一个内核版本也将进行其他一些改进: 改进 AMD Zen 的温度/功率报告修复华硕飞行堡垒系列笔记本中 AMD CPU 过热开源支持 NVIDIA RTX 2000 图灵系列显卡内建 FSCRYPT 加密 Phoronix 跟踪了 Linux 5.6 带来的许多技术性更改。因此,如果你好奇 Linux 5.6 所涉及的全...阅读全文

博文 2020-02-07 11:13:09 debian.cn

Django 采用新的项目治理模式

Django 此前的治理模式不太合理,对于持发展壮大的 Django 社区产生阻碍。官网博客介绍,最开始 Django 项目发起人(Adrian Holovaty 和 Jacob Kaplan-Moss)可以授权其他人 commit 的权限。到了 2014 年,committer 的核心团队人数已经不少,在两位创始人辞去领导职务后, 保留了一个核心 committer 团队的基本结构,该团队可以根据自己的选择向 Django 添加代码。同时创建了一个新的小组:由核心 committer 选举产生的由 5 名 committer 组成的“技术委员会”,并作为最终的决策者。 但是实际上,现在几乎所有添加到 Django 的代码都由 Django Software Foundation(DSF...阅读全文

博文 2020-03-26 08:51:49 debian.cn

Linux Kernel 5.10本周末发布 十个功能盘点

天堂 Switch Joy-Cons 和 Pro 手柄均能在 Linux 平台上通过 USB 和蓝牙模式连接,并支持震动和陀螺仪数据。 9.在安全性方面改进 在安全性方面进行了许多改进,以抵抗外部 PCI Express 设备可能发生的 DMA 攻击;“nosymfollow”安装选项类似于多年来BSD上提供的安装选项; Linux 5.10包括新的static_call()函数,可帮助您在受Retpolines影响的情况下,ARM Spectre缓解措施已被改写为“ Ghostbusters”工作的一部分。 10.英特尔处理器支持 持开发并添加对英特尔即将推出的 Rocket Lake 和 Alder Lake 硬件支持。英特尔 Meteor Lake 在 Linux 5.10 中也会包...阅读全文

博文 2020-12-09 10:30:48 debian.cn

Open Source Initiative 批准四个新的开源许可证

作为"开放源码定义"的管理者,Open Source Initiative(OSI)20多年来一直将许可证指定为"Open Source"。这些许可证是开源软件生态系统的基础,确保每个人都能使用、改进和共享软件。当一个许可证被批准时,是因为 OSI 相信该许可证促进了合作和共享,使参与生态系统的每个人都受益。 在过去的 20 年里,世界已经发生了翻天覆地的变化,软件现在以新的方式甚至是难以想象的方式被使用。OSI 已经看到,以前被人们所熟悉的开源许可证并不总是能适合这些新的情况。因此,OSI 作为许可证管理员站了出来,为更广泛的用途提交了几个新的许可证。OSI 面临的挑战是评估这些新的许可证概念是否会继推动共享和协作,是否值得被称为"开源"许可证。最终 OSI 批准了一些用于特殊领域的新...阅读全文

博文 2021-03-01 10:44:35 OSChina

2021勒索软件报告:平均支付赎金增长171% 黑客最高要价3000万美元

知道他们可以通过勒索软件赚钱,并且在索要赎金方面变得越发大胆。常见的勒索软件攻击包括勒索软件运营商对数据进行加密,并强迫受害者支付赎金以解锁数据。在双重勒索中,勒索软件运营商会加密并窃取数据,进一步胁迫受害者支付赎金。如果不支付,勒索软件运营商就会将数据公布到泄漏网站或暗网,大部分数据泄漏网站都托管在暗网,而这些托管站点由勒索软件运营商创建和管理。在新冠疫情下,医疗行业成今年勒索软件最大目标。不法之徒得知医疗机构需要继营运以治疗新冠患者,无法承担系统被锁定的后果,继而通过勒索软件进行攻击。勒索软件Ryuk在众多勒索软件中尤其猖獗。利用这种手段最多的勒索软件是NetWalker。从2020年1月到2021年1月,NetWalker泄漏了全球113家受害企业的数据(见下图),远远超过了其他勒索...阅读全文

三位候选人正进行 2022 Debian 项目负责人选举

mdadm, gocryptfs,wolfssl和其他一些较小的 Debian 包Debian 议程担任领导者后,将孜孜不倦地努力减少 Debian 项目中的冲突。对外界将尽一切努力帮助世界各地的用户和专业社区重新爱上 Debian。让 Debian 成为所有编程生态系统的首要开发平台。推进项目的各种长期挑战,例如补充老龄化成员和处理特定语言包管理器的激增(也称为“供应商”问题)。​Jonathan Carter又名 highvoltage,Debian 帐户名为 jcc,2020、2021 两年连担任 DPL (Debian 项目领导人)。Debian 议程考虑正式注册 Debian 组织,包括成立基金会等工作。(该项同时也是 2021 年竞选的议程)改进会计工作、梳理 Debian 资产。(该...阅读全文

谷歌如何为数十万台设备更新内部 Linux 发行版 - OSCHINA

负责任的选项。 在每个操作系统使用周期内,谷歌还面临软件包重大版本升级的挑战,因为这可能需要对软件配置进行重大改变。为了让这个过程自动化,谷歌工程师编写了一个无人值守的升级工具来处理很多常见的问题。这种“自动化升级”意味着大多数谷歌员工无需通过重新安装机器,并重新创建所有配置来手动升级。不过为了实现这一点,谷歌需要对升级过程进行全面测试,并检查所有已更改的主要软件包是否继运行(在 Ubuntu 中,主要版本之间的升级可能多达数千个软件包)。有时,在发生软件包弃用且工程师必须决定如何推进的情况下,很难提供自动化。 据称,谷歌完成所有 Goobuntu 的升级通常要花费一年的时间,整个过程对于团队来说是一个巨大的压力。而且很多时候他们遇到的一些 bug 已经在上游被修复了,但这些改进却从未被合...阅读全文

博文 2022-07-31 19:13:41 中文开源技术交流社区

DNS SRV:使用DNS服务器做服务发现

级的记录,按照权重选择,记录的权重越高,被选择的可能性越高。 选择的时候,将所有记录的权重值累加,得到一个选择区间[0,sum],每个记录在[0,sum]中占据一段连的、长度为自身权重值区间。然后生成一个[0,sum]中的随机数,随机数落在的区间所属的记录就是被选择的记录。 注意事项 在使用DNS SRV的时候,要注意DNS Client是否按照预期的方式处理收到的SRV记录。当前DNS SRV只能够负责提供服务地址列表,对这个列表如何解读,完全取决于Client的实现。rfc-1035中规定,通过UDP协议传输DNS响应时,UDP报文的负载不能超过512字节,在添加 SRV 记录的时候,要特别注意。通过TCP传输时没有512字节的限制。当一个服务地址有多个相同优先级的SRV记录的时候...阅读全文

博文 2019-03-05 09:35:34 debian.cn

Go 泛型的括号选择:[ ] or ( )

( ) 和 [ ] 可供选择。然而缺少修饰的方括号会在数组和 slice 的类型声明中造成歧义,在解析索引表达式时也会引起小程度的歧义。因此在设计之初他们决定使用小括号,因为小括号似乎更符合 Go 语言的风格,而且看起来问题最少。 为了使小括号正常工作,并且为了向后兼容,他们表示不得不在类型参数列表中引入type关键字。最后,他们在参数列表、复合字面量和嵌入类型中发现了额外的解析歧义,而这些歧义需要嵌套更多的小括号来解决。不过即便如此,他们还是决定继使用小括号,因为当时还有更重要的设计问题需要解决。 现在他们决定重新考虑这个最初的决定。如果仅使用方括号声明类型参数,那么声明数组的方式如下所示: type A [N]E 不过这就无法与泛型的声明进行区分: type A[N] E 但如果能接受额外的...阅读全文

博文 2020-07-16 10:38:01 debian.cn

Debian 环境中安装git服务器 Gogs(上)

Gogs 是由 Go 语言编写的,自由开源的 Git 服务。Gogs 是一款无痛式自托管的 Git 服务器,能在尽可能小的硬件资源开销上搭建并运行您的私有 Git 服务器。Gogs 的网页界面和 GitHub 十分相近,且提供 MySQL、PostgreSQL 和 SQLite 数据库支持。 在本教程中,我们将使用 Gogs 在 Debian Stretch 上按步骤指导您安装和配置您的私有 Git 服务器。这篇教程中涵盖了如何在 Debian 上安装 Go 语言、PostgreSQL 和安装并且配置 Nginx 网页服务器作为 Go 应用的反向代理的细节内容。 步骤 1 - 更新和升级系统 继之前,更新 Debian 所有的库,升级所有包。 运行下面的 apt 命令: sudo apt...阅读全文

博文 2018-03-10 09:35:31 debian.cn

深入了解Docker背后的namespace技术

口,这样你的容器将拥有它自己的桥接ip地址,通常是docker0。接下来,我们不再继讲述如何在namespace安装接口。相关内容将在另一篇文章中讲述。 MNT Namespace mount namespace可以让看到系统中所有挂载点在某个范围下的目录视图。人们经常把它和在chroot中禁锢进程混淆在一起,或者是认为他们是相似的,还有人说容器使用mount namespac来把进程禁锢在它的根文件系统中,这都是不对的! 让我们再来拷贝一份skeleton.c用来做挂载相关的修改。可以快速的构建和运行, 从而看下执行mount命令后我们当前的挂载点的样子。 > cp skeleton.c mount.c > gcc -o mount mount.c > ./mount mount...阅读全文

博文 2015-05-17 10:03:00 debian.cn

Jono Bacon: GPL 没落了吗?

的是它不是非黑即白的,更多的时候是两者混合的灰色,很少有公司有自由软件基金会(或者类似的组织,比如软件自由保护组织)的那种纯粹的理念,因此我想那些公司也不喜欢选择和那些理念相关的协议。 我需要说明,我不是在这是说自由软件基金会以及类似的组织(比如软件自由保护组织)的错。他们有着打造完全自由的软件的目标,对于他们来说,走它们选择的路十分合理。自由软件基金会以及软件自由保护组织做了了不起的工作,我将继支持这些组织以及为他们工作的人们。我只是觉得这种对纯粹性的高要求的一个后果就是让那些公司认为自己难以达到要求,因此,他们使用了非 GPL 的其他协议。 我怀疑 GPL 的使用是随着开源软件增长而变化的。在以前,启动(开源)项目的根本原因之一是对开放性和软件自由的伦理因素的严格关注。GPL 无疑是项...阅读全文

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

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

任何类型的向后兼容的“增量”语言特性变更,因为他们认为无论变更多么小,都要有更全面的支持计划,并将 Go 2 考虑在内。 对于这些累积下来的提案,官方表示现在是时候采取行动了! 近况 本文发布时,官方表示目前在 Go 2 的提案中,大约有 120 个尚未解决且被标记为提案的 issue。这些提案都涉及到重要的库或语言特性变更,而它们通常不能与 Go 1 互相兼容。Ian Lance Taylor 和 Robert Griesemer 一直在研究这些提案,并对它们进行了分类(Go2Cleanup, NeedsDecision 等),以理解这些提案背后的含义并使它们后更易进行。此外,他们还合并了相似的提案,并关闭了那些看似明显超出 Go 范围的提案,或者其他方面无法实现的提案。 早期出现的两个...阅读全文

下一代时间同步服务 Chrony 详解

。该参数的含义是在头四次 NTP 请求以 2s 或者更短的间隔,而不是以 minpoll x 指定的最小间隔,这样的设置可以让 chronyd 启动时快速进行一次同步。 其他的参数有 minpoll x 默认值是 6,代表 64s。maxpoll x 默认值是 9,代表 512s。 driftfile file Chrony 会根据实际时间计算修正值,并将补偿参数记录在该指令指定的文件里,默认为 driftfile /var/lib/chrony/drift。 与 ntpd 或者 ntpdate 最大的区别就是,Chrony 的修正是连的,通过减慢时钟或者加快时钟的方式连的修正。而 ntpd 或者 ntpdate 搭配 Crontab 的校时工具是直接调整时间,会出现间断,并且相同时间可能...阅读全文

博文 2021-01-04 08:41:14 debian.cn

基于thanos搭建分布式prometheus

sidecar和prometheus则走原生HTTP接口拿数据。 为了高可用,我们可以部署多个prometheus同时抓取。 为了打散采集/存储压力,我们可以部署多个prometheus各自抓取部分数据。 无论出于上述哪种目标或者混合目标,最终依靠Querier的正确配置都可以提供统一的Promql查询入口给Grafana,这一点是毋庸置疑的。 这里看到了图中有几个陌生的组件: Store Bucket Compactor Prometheus单机存储空间有限,SideCar和Prometheus在同POD内共享数据volume,然后sidecar可以自动将prometheus磁盘数据上传到Bucket里归档存储;后Querier可以通过Store组件从Bucket拉取到历史数据,这样就实现了历史数据...阅读全文

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

案例:Redis命令不当 引起数据库雪崩 造成数百万损失

,CPU持上升到99% 5分钟内,大量应用报警,并且拒绝服务,RDS的监控显示出现大量慢SQL,联系服务器数据库提供商进行协助 8分钟内,进行数据库主备切换(业务会受损,但是也没办法,没有定位到问题) 9分钟内,部分业务恢复,但是一些业务订单的回调消息堆积超过20w,备库的CPU使用率也持上升 15分钟内,备库CPU使用率超过97%,业务再次中断,进行切回主库,并进行限流 20分钟内,关闭一些次要应用的流量入口 25分钟内,主库CPU使用率恢复正常 30分钟内,逐步开启关闭的限流应用 35分钟内,所有应用恢复正常 接下来就是与服务器数据库提供商成立应急小组紧急优化可能出现的慢SQL,虽然说可能解决了一些慢SQL,但此次并没有定位到具体的问题,也就为几天后再次发生宕机事件埋下了伏笔 事故影响 某...阅读全文

博文 2018-10-27 10:18:18 debian.cn

理解 Linux 的虚拟内存

有些矛盾。于是翻一下资料重新整理一下这些知识,希望下次在用到它们时能更顺畅。转载随意,请注明来源,文章持修订。 由来 虚拟内存 毋庸置疑,虚拟内存绝对是操作系统中最重要的概念之一。我想主要是由于内存的重要”战略地位”。CPU太快,但容量小且功能单一,其他 I/O 硬件支持各种花式功能,可是相对于 CPU,它们又太慢。于是它们之间就需要一种润滑剂来作为缓冲,这就是内存大显身手的地方。 而在现代操作系统中,多任务已是标配。多任务并行,大大提升了 CPU 利用率,但却引出了多个进程对内存操作的冲突问题,虚拟内存概念的提出就是为了解决这个问题。 虚拟内存简单直观的解释 操作系统有一块物理内存(中间的部分),有两个进程(实际会更多)P1 和 P2,操作系统偷偷地分别告诉 P1 和 P2,我的整个内存...阅读全文

博文 2018-11-25 11:03:49 debian.cn

kubectl 创建 Pod 背后到底发生了什么?—探寻 Kubectl 创建 Pod 的原理

认证凭证与本地的状态匹配。 如果认证失败,则请求失败并返回相应的错误信息;如果验证成功,则将请求中的 Authorization 请求头删除,并将用户信息添加到其上下文中。这给后的授权和准入控制器提供了访问之前建立的用户身份的能力。 授权 OK,现在请求已经发送,并且 kube-apiserver 已经成功验证我们是谁,终于解脱了! 然而事情并没有结束,虽然我们已经证明了我们是合法的,但我们有权执行此操作吗?毕竟身份和权限不是一回事。为了进行后的操作,kube-apiserver 还要对用户进行授权。 kube-apiserver 处理授权的方式与处理身份验证的方式相似:通过 kube-apiserver 的启动参数 --authorization_mode 参数设置。它将组合一系列授权...阅读全文

博文 2022-04-18 16:18:04 CSDN

2017年DevOps的5大发展预测

在即将过去的一年中,DevOps经历了大规模容器化,许多公司投入了容器化的怀抱。这并不意味着DevOps相关工具已经成熟,但是这些工具为安全改进、容器化和工具集中化奠定了基础。以下是2017年DevOps的5大发展预测。 工具整合 根据Quali公司CTO Joan Wrabetz的说法,DevOps相关工具市场整合的时机已经成熟,这主要归功于消费者需求和公司数量的大规模增长。她提到:“为了简化流程,消费者只会选择其中的几个优秀软件,并且围绕着这些工具,将它们整合到自身的流程当中去。这将会导致越来越多的工具直接提供横跨整个持交付周期端到端功能。” 另外,由于DevOps公司数量的增长,2017年将会迎来小公司的收购潮。“我们已经看见亚马逊对Chef进行了投资。另外,一些DepOps公司已...阅读全文

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

红帽 2017 峰会 第三天回顾:自动化的未来

为期三天的第13届红帽峰会已在波士顿当地时间5月4日闭幕。除了前两日报道的OpenShift与企业数字转型的动向,本次峰会还有另外两个产品动向值得注意。 1、以Ansible为核心的全栈自动化 红帽管理平台相关负责人已经明确在一次媒体沟通会上表示,Ansible已经被定位作为红帽自动化工具体系的中心。红帽其他的自动化工具—— 跨云管理产品CloudForms 自动打安全补丁产品Satellite 自动化运维工具Puppet API管理工具3scale 上述工具仍将继履行各自的职责,同时全面与Ansible集成。非红帽的其他自动化工具——比如Amazon Lambda——也优先以Ansible作为与红帽管理平台的接入点。也就是说,未来在Ansible上(尤其是Ansible Tower)将...阅读全文

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

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

有一个网络接口,可以不带选项运行 iftop。iftop 需要 root 权限: $ sudo iftop 当你有多个接口时,指定要监控的接口: sudo iftop -i wlan0 就像 top 一样,你可以在运行时更改显示选项。 h 切换帮助屏幕。 n 切换名称解析。 s 切换源主机显示,d 切换目标主机。 s 切换端口号。 N 切换端口解析。要全看到端口号,请关闭解析。 t 切换文本界面。默认显示需要 ncurses。我认为文本显示更易于阅读和更好的组织(图1)。 p 暂停显示。 q 退出程序。 图 1:文本显示是可读的和可组织的。 当你切换显示选项时,iftop 会继测量所有流量。你还可以选择要监控的单个主机。你需要主机的 IP 地址和网络掩码。我很好奇 Pandora 在我那可...阅读全文

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

开源软件对于商业机构的6大好处

持周期,以避免更新混乱的出现。 2、有利于产品的长期发展 福布斯杂志指出,90%的初创公司最后都会失败,而他们当中,只有不到一半的中小型公司存活期能超过5年。如果在产品开发的中途突然出现需要更换供应商的问题,那迁移的成本就很高了。所以,要避免选择只有一个供应商支持的产品。 而开源使得社区成员能够协同编写软件。如 OpenStack 就是由多个公司及个体志愿者共同编写的。这么做,就能保证,在一个供应商出现问题的情况下,其他供应商能继支持。而且,软件一经开源,企业就会长期投入开发团队以实现产品开发。使用源代码的好处就是,你可以聘用贡献者来保证开发的活跃性。 3、更安全 以开源的方式进行开发,可以很直观地看到,供应商是如何对待安全问题,以及是否在积极保证产品安全。研究源代码并执行独立代码审核,也...阅读全文

博文 2017-11-15 23:41:11 debian.cn

全民HTTPS时代:盘点免费SSL证书那些事儿

证书,也就是 wildcard certificates。这对于广大个人站长来说,无疑是个不错的利好消息。唯一的缺憾就是,Let’s Encrypt 发行的证书有效期只有 3 个月,虽然可以通过定时任务来自动期。 如何申请?可以通过安装 LAMP 后,使用 lamp add 命令来自动创建 SSL 证书。也可以通过以下在线申请网站,手动申请证书。 在线申请网址1(中文):https://freessl.org/ 在线申请网址2(英文):https://www.sslforfree.com/ 在线申请网址3(英文):https://gethttpsforfree.com/ 二、TrustAsia 官方网站:https://www.trustasia.com/ 点评:TrustAsia 是国内...阅读全文

JDK 11 版本时间表公布

) JSR-250:Java 平台的常用注解 已经得到确认的是,JDK 不再需要支持这些模块,因为它们已在过去的 12 年中得到很好的发展,并且可以在第三方站点(如 Maven Central)中随时获得。 CORBA 技术早在 1998 年就有了,但大多数现代应用程序已经不使用该项技术,因此 JDK 中可用的 CORBA 模块也将被移除。Oracle 认为继为 CORBA 提供支持得不偿失。 计划在 JDK 11 中移除的模块包括: java.xml.ws(JAX-WS,以及相关的 SAAJ 和 Web 服务元数据) java.xml.bind(JAXB) java.activation(JAF) java.xml.ws.annotation(通用注解) java.corba(CORBA...阅读全文

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

Dubbo 2.7.0发布 分布式RPC服务框架

的异步模型。2.6 及以前的版本,元数据全部存储在 URL 上,配置信息和注册信息只能存储在注册中心上,注册中心的容量和扩展成为瓶颈。这个限制在使用 ZooKeeper 作为注册中心的大规模 Dubbo 应用场景下尤为突出。在 2.7.0 中,通过对 URL 的改造,将 注册中心拆分成了三个中心 ,分别是注册中心、配置中心和元数据中心,三者各司其责,不仅有效地解决了上述容量问题,而且很好地适应了微服务的技术架构,用户可以开始自由选择适合自己场景的注册中心和配置中心。2.7.0 将内建支持 ZooKeeper、Nacos 和 Apollo 等第三方注册和配置中心,在后的版本中,还会进一步提供对 Consul 和 etcd 的支持。另外,通过引入一个全新的元数据中心,将与注册配置无关的服务信息...阅读全文

博文 2019-01-18 09:43:16 debian.cn

Debian 社区陷入尴尬 或群龙无首

需要花费大量时间与精力,但它是没有薪水回报的。公开信表示,如果之后确认这正是问题所在,那么社区可能会考虑做出一些改变,创造一个有偿的职位来承担领导人的工作。 目前没有一位开发者提名,根据 Debian 的章程,提名期延长了一周,也就是 3 月 17 日截止。如果在这个时间之前还没有人提名,那么提名期还会再延长一周。该流程将无限持下去,“直到有人屈服并提交他们的名字”。 而除了无人提名的尴尬,更严重的问题是,根据章程,只要任期结束,当前的 Debian 领导人 Chris Lamb 就可以不再履行职责,如果在那个时候还没有选出新的领导人(毕竟提名期是可以无限延长的),那么社区就会处在群龙无首的状态,Debian 将会陷入困境,项目运作的各方面都会停滞不前。 然而,好消息是,Debian 章程...阅读全文

博文 2019-03-14 11:05:23 debian.cn

Harbor 1.9 发布:新增多项企业级功能

Harbor 1.9 发布了,此版本新功能众多,包括 tag 保留和配额、可与 CI/CD 工具集成的 Webhook 通知、数据复制、Syslog 集成以及 CVE 例外策略等安全功能。 Webhook 如果您是项目管理员,可以通过 Webhook 的通知机制,将 Harbor 的项目与您技术栈的其余部分连接在一起。简言之,如果您配置了 Webhook,Harbor 会就把该项目中发生的某些事件(包括推送、拉取、删除镜像和 Helm Charts、镜像扫描及 CVEanqu 漏洞发现)向 Webhook 端点发出通知。通过这些事件,您可以将 Harbor 与其他系统集成在一起,以简化持集成和开发过程。理想情况下,获得 Webhook 的端点应具有一个操作侦听器,用于解释 JSON 格式...阅读全文

博文 2019-10-09 12:12:04 debian.cn

PostgreSQL 13 正式版发布

挑战,尽管之前的 PostgreSQL 版本已经做了一些工作来减轻清理的开销。 PostgreSQL 13 通过引入用于索引的并行化清理来继改进清理系统 。具体来说,VACUUM 命令能够并行处理索引。可以使用 VACUUM 命令上的新 PARALLEL 选项(或 vacuumdb 上的 --parallel)来访问其功能,该选项允许用户指定用于清理索引的并行 Worker 进程的数量。要注意的是,这不适用于 FULL 选项。由于管理员可以选择要运行的并行 Worker 进程的数量,因此可以针对特定的工作负载调整此新功能的使用。除了这些性能优势之外,数据插入现在还可以触发自动清理过程。 复制插槽(Replication slots),用于防止在复制副本接收到预写日志(WAL, write...阅读全文

博文 2020-10-04 20:07:23 debian.cn