InfraPub 为您找到相关结果 227

谷歌公开了内部管理Infra层的两个工具的Paper

同点:不再关注于给生产环境推送单独的变更,而是关注于想要达到的状态。不再维护一步一步的工作流,而是让服务所有者使用配置来描述他们想要基础架构达到的样:运行什么job,负载均衡器的搭建,数据库schema的位置等等。 基于这些信息,Prodspec和Annealing将这些配置转化成统一的结构,随后被执行。执行是安全并且持续性的:自动化系统重复地比较用户模型所表达的预期状态和生产环境的状态,并且在安全的时候自动触发reconciliation。服务所有者不再需要将配置变更手动推送到生产环境里。 因为我们从2015年左右就开始开发Prodspec和Annealing,基于intent的执行(intent-based actuation)这一简单明了的理念如今已经成了实际的标准。Google生产...阅读全文

博文 2023-01-08 11:23:20 CSDN博客

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

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

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

Spinnaker 介绍 – Netflix 的持续交付平台

个例可以说明两者的关系:Netflix 内部有人不用 Spinnaker 的 pipeline,而只是将 Spinnaker 看为一个部署工具,直接在 jenkins 中调用它的 API 来部署服务。 逻辑架构 Spinnaker 自己是一个微服务架构,由若干组件组成,所有组件都开源在github上,整个逻辑架构如下图所示: Deck:AngularJS 写的 WebUI。Gate:提供 API 接口给外部程序,Deck 也是其中之一,Spinnaker 的大门。Cloud Driver:对接各种云服务提供商,比如AWS, GCP, Azure 等。她负责所有对这些云服务的读写操作。Orca :处理 pipeline 和任务编排,比如创建一个虚拟机,等待它创建完成,然后执行其他操作...阅读全文

博文 2018-12-21 19:30:47 debian.cn

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

| | [dovecot](https://packages.debian.org/src:dovecot) | 修复搜索包含畸形MIME邮件的邮箱时的崩溃问题 | | [dpdk](https://packages.debian.org/src:dpdk) | 新的上游稳定发布 | | [edk2](https://packages.debian.org/src:edk2) | CryptoPkg/BaseCryptLib:修复NULL析出[CVE-2019-14584] | | [emacs](https://packages.debian.org/src:emacs) | OpenPGP用户ID没有电邮件地址时,不要崩溃 | | [fcitx](https://packages.debian.org...阅读全文

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

Linux系统诊断-内存基础

swap的方式临时缓解内存不足的问题,但一般不能直接作在线减少swap的操作,很有可能导致进程的crash。具体swap配置方式见5.1swap相关配置。OOM=======1.What is OOM?Out Of Memory Killer 是 Linux 的一种系统保护机制,在系统内存紧张时,kill掉某些进程防止系统卡死。系统通过打分机制,来实施对进程的杀死操作。默认机制是通过扫描所有进程的内存占用,cpu占用等因素,然后打分  (badness),分数越高,进程被kill的优先级就越高。2.哪些行为会让系统对进程进行打分?进程使用fork(2)调用,创建众多进程时,会加分(+)进程已经运行了很长时间,或者和使用了大量的CPU时间,会减分(-)进程的nice值如果比较低,会加分(+)进程如...阅读全文

博文 2021-02-11 14:22:42 SegmentFault 思否

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

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

社交巨人Facebook使用Linux和Btrfs的姿势

被我们称之为“影层”的地方进行——我们可以在一个非生产环境重放生产网络的流量,这样我们能够在一个非常安全的地方检测系统的稳定性和性能。我们可以像做实验那样一边加大流量一边说:“好了,我先给它(测试环境)5%的生产网络流量,然后一路增加到100%,看看会有什么发现吧。”像做A/B测试那样,我就能得到两个内核在整个实验过程中对比鲜明的数据。 我们有工具能验证内核并帮助测试上游内核。这样比较容易发现上游内核新的有意思的bug,而非只是找到已经被上游内核修复过的bug。 Linux.com:您比较担心什么问题? Chris Mason:就运行Linux内核或者文件系统而言,我们还没遇到什么问题;况且有这么多的社区在支持Linux,我也没有必要担心什么。 Linux.com:您参与Linux开发也有...阅读全文

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

WebAssembly:无需容器的 Docker (上)

同的源语言创建可移植的二进制可执行文件。 这些二进制文件可以在各种环境中运行。 它起源于 Web,并得到各大主流浏览器的支持。Wasm 如何在浏览器中工作?浏览器引擎集成了一个 Wasm 虚拟机,通常称为 Wasm 运行时,可以运行 Wasm 二进制指令。 编译器工具链(如 Emscripten)可以将源代码编译为 Wasm 目标。 这允许将现有的应用程序移植到浏览器,并直接与在客户端 Web 应用程序中运行的 JS 代码通信。这些技术能让传统的桌面应用程序在浏览器中运行。现在它们可以在任何装了浏览器的设备上运行。 一些著名的例包括 Google Earth 和用于计算机视觉的 Open CV 库。Wasm 如何在服务器上运行?除了浏览器,也有可以在浏览器之外运行的 Wasm 运行时,包括...阅读全文

博文 2023-01-03 06:35:56 spider

Linux下多线程程序为什么消耗大量虚拟内存

; getchar(); getchar(); pthread_create( &th, 0, thread_run, 0 ); while ( (getchar() ) ) { start = 1; } return(0); } 其运行结果如下图,刚开始时,进程占用虚拟内存14M,输入0,创建线程,进程内存达到23M,这增加的10M是线程堆栈的大小(查看和设置线程堆栈大小可用ulimit -s),第一次输入1,程序分配1k内存,整个进程增加64M虚拟内存,之后再输入2,3,各再次分配1k,内存均不再变化。 这个结果让我欣喜若狂,由于以前学习过谷歌的Tcmalloc,其中每个线程都有自己的缓冲区来解决多线程内存分配的竞争,估计新版的glibc同样学习了这个技巧,于是查看pmap $(pidof main...阅读全文

博文 2015-01-28 10:35:39 debian.cn

五款流行开源的 HIDS 系统简单介绍

Cygwin,而且一开始很难理解其报告。Samhain日志默认情况下位于/ var / log ,默认情况下用于XML编写(使用./configure –enable–xml-log 命令对其进行配置)。Samhain包括日志文件旋转和锁定功能。它有助于记录SQL数据库,控制台,电邮件,系统日志,Prelude IDS等。5.安全洋葱Security Onion是由Doug Burks设计和维护的基于Linux的免费开源入侵检测系统。该项目由三个组件组成:完整的数据包捕获功能,将基于主机的事件与基于网络的事件相关联的入侵检测系统,以及许多其他工具集,包括Snort,Bro,Sguil,Suricata和许多其他实用程序。安全洋葱不只是入侵检测系统。归根结底,如果您想在几分钟之内轻松地建立网络安全监控...阅读全文

博文 2023-01-26 11:07:43 joseph

聊聊很重要的内核技术eBPF

直接集成到应用程序中的高级库。 2:bpftrace bpftrace是Linux eBPF的高级跟踪语言。它的语言受awk和C以及DTrace和SystemTap等以前的跟踪程序的启发。 bpftrace使用LLVM作为后端将脚本编译为eBPF字节码,并利用BCC作为与Linux eBPF系统以及现有Linux跟踪功能和连接点进行交互的库。 3:Cilium Cilium是一个开源项目,提供基于eBPF的联网,安全性和可观察性。它是从头开始专门设计的,旨在将eBPF的优势带入Kubernetes的世界,并满足容器工作负载的新可伸缩性,安全性和可见性要求。 4:Falco Falco是一种行为活动监视器,旨在检测应用程序中的异常活动。 Falco在eBPF的帮助下审核Linux内核层的系统...阅读全文

博文 2020-08-16 11:08:44 debian.cn

域名与商标: 如何防止域名被仲裁

,域名权与商标权、商号权、名称权不可避免地会产生冲突。这类情况相对比较复杂和不确定性,理论上,任何一个域名都有产生权利冲突的可能性。 在权利冲突上,仲裁机构还是会充分尊重域名作为独立知识产权的权利和它的先得原则。也就是说,如果域名的注册时间先于商标、商号或名称的启用时间,或者域名的使用区别于现有商标、商号或名称的经营范围的,域名所有权将不受影响。举个例,alichat域名,阿里巴巴为何不通过仲裁而是出钱收购,就是因为alichat域名在阿里的Chat业务启动前就已经存在,阿里即使仲裁,也不会被支持。 对于权利冲突类域名,经咨询相关法律专业人士,认为一般有以下争议解决办法: 1、注册在先,即域名的先得原则2、否认声明,在域名对应的网站上,声明自已域名的使用范围和商品类别,或者声明自已的域名与他...阅读全文

博文 2019-01-18 14:59:59 debian.cn

UCloud 叶理灯 谈:Docker、K8S 和 Serverless

Serverless 这个概念可以对应 FaaS,也可以代表一种架构,也可以代表一种服务的形态,例如 Aurora Serverless 就是把一个数据库的服务变成 Serverless 的。 容器和 Serverless 的区别在于,Serverless 是无容器的,除了不关注服务器,也看不到容器。两者是面向不同场景的,并不是互相替代的关系。FaaS 的特点,接收一个请求拉起一个函数执行,函数是无状态的,它的执行地点也不固定,这意味着延时相对于常驻进程要高,对一些延时敏感的地方它是不合适的,但是有些场景是非常合适的。我举个例,在 IoT 场景中,有几十万的设备,为了节省电源,它们大部分时候处于睡眠状态,如果用传统的架构去为这几十万设备服务的话,肯定要考虑并发连接的时候,应该有多少计算资源去服务,这很浪费成...阅读全文

博文 2019-06-14 08:28:49 debian.cn

WebAssembly:无需容器的 Docker (下)

。优化二进制码Wasm 是一个虚拟指令集,因此任何运行时的默认行为都是即时解释这些指令。 当然,这在某些情况下可能会让速度变慢。 因此,为了通过 WasmEdge 获得两全其美的效果,你可以创建一个 AOT(提前编译)优化的二进制文件,它可以在当前机器上原生运行,但仍然可以在其他机器上进行解释。要创建优化的二进制文件,请运行以下命令:wasmedgec --enable-all --optimize 3 \ build-output/php/php-7.4.32/bin/php-wasmedge \ build-output/php/php-7.4.32/bin/php-wasmedge-aot 我们在下面的例中使用这个 build-output/php/php-7.4.32/bin/php...阅读全文

博文 2023-01-03 06:39:46 spider

细数k8s支持的4种类型的container - 侃豺小哥

beta版,因此默认情况下已启用) 本节中的示例演示了临时容器如何出现在 API 中。 通常,您可以使用 kubectl 插件进行故障排查,从而自动化执行这些步骤。 临时容器是使用 Pod 的 ephemeralcontainers 资源创建的,可以使用 kubectl --raw 命令进行显示。首先描述临时容器被添加为一个 EphemeralContainers 列表: { "apiVersion": "v1", "kind": "EphemeralContainers", "metadata": { "name": "example-pod" }, "ephemeralContainers": [{ "command": [ "sh" ], "image": "busybox...阅读全文

博文 2021-08-20 11:45:32 博客园

协议介绍之深入了解 gRPC

streams 在上面发送 frame,那么在一些场景下面,我们还是希望 stream 有优先级,方便对端为不同的请求分配不同的资源。譬如对于一个 Web 站点来说,优先加载重要的资源,而对于一些不那么重要的图片啥的,则使用低的优先级。 我们还可以设置 Stream Dependencies,形成一棵 streams priority tree。假设 Stream A 是 parent,Stream B 和 C 都是它的孩,B 的 weight 是 4,C 的 weight 是 12,假设现在 A 能分配到所有的资源,那么后面 B 能分配到的资源只有 C 的 1/3。 Flow Control HTTP/2 也支持流控,如果 sender 端发送数据太快,receiver 端可能因为太忙,或者压力太大...阅读全文

博文 2017-06-22 11:08:48 debian.cn

DPDK Graph Pipeline 框架简介与实现原理

使用。 rte_graph 内存布局。 注意此例除有 3 个 source node,而待处理的流 (pending stream)中有 2 个节点。 现在可以更清楚地看到 struct graph 及其组件 struct node 的目的是保存内部数据/用于设计,而 struct rte_graph 和 struct rte_node 是用于 runtime。runtime 的内存布局包含了所有必需的组件,比如所有source node、non-source nodes 以及 pending steam 的 node(从cir_start 开始)。 先前我们提到在 graph walk 时需要从 source node 开始,以及需要利用 circular buffer 来定位待处理的...阅读全文

博文 2023-02-09 07:13:55 掘金

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

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

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

Debian 向左:或将迎来根本性改革 - OSCHINA

决定离开贡献18年之久的 Debian。促使他离开的直接原因是,Debian 社区对于是否接受 systemd(一种 init 进程)争执不下。这件事引起了 Debian 内部长达数年的争论,至今仍然没有定论。 当然,systemd 事件仅仅是一个引,Joey 已经感受到了 Debian 社区背后所隐藏的某种“病态”。 “ 我第一次感觉到 Debian 的这种(病态),是在 Debian 改变‘ /usr/doc’这一错误的文件保存路径(系统文件的标准要求被保存在‘usr/share/doc’中)的时候,完成这样一个再简单不过的操作更改,Debian 居然花了6年之久。” 在 Joey Hess 看来,这实在太荒诞了。 要知道,Joey 并不是为此离开的第一位前辈。此前,Matthew...阅读全文

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

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

展已经有一段时间了,但业内一直各自为政,由于没有统一的接口标准,"胶水"芯片生态难建,大公司止步不前,小公司也不敢迈出第一步。长期以来,摩尔定律的持续演进被视为芯片性能提升的主要途径。经历四十多年的发展,构成芯片的晶体管几乎要缩小到原级别,不仅面临难以突破的物理极限问题,制程升级的投入产出比也大幅下降,业界开始寻找新的办法提升产品性能,例如,通过改变封装的方式提升晶体管密度。提出摩尔定律的戈登本人也意识到了封装的重要性,他在论文中写道:"事实证明用较小的功能模块构建大型系统可能会更经济,这些功能模块将分别进行封装和互连。"简单来讲,也就是将原先生产好的芯片集成到一个封装中,达到减少产品开发时间和成本的目的,这些芯片模块可以是不同工艺节点,最终通过裸片对裸片的方式连接在一起,这一类似于用胶水...阅读全文

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

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

统瘫痪! 5.线上Redis禁止使用Keys正则匹配操作 Redis是单线程处理,在线上KEY数量较多时,操作效率极低【时间复杂度为O(N)】,该命令一旦执行会严重阻塞线上其它命令的正常请求,而且在高QPS情况下会直接造成Redis服务崩溃!如果有类似需求,请使用scan命令代替! 6.可靠的消息队列服务 Redis List经常被用于消息队列服务。假设消费者程序在从队列中取出消息后立刻崩溃,但由于该消息已经被取出且没有被正常处理,那么可以认为该消息已经丢失,由此可能会导致业务数据丢失,或业务状态不一致等现象发生。 为了避免这种情况,Redis提供了RPOPLPUSH命令,消费者程序会原性的从主消息队列中取出消息并将其插入到备份队列中,直到消费者程序完成正常的处理逻辑后再将该消息从备份队列...阅读全文

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

HTTP状态码详解

息不是在原始服务器上有效的确定集合,而是来自本地或者第三方的拷贝。当前的信息可能是原始版本的集或者超集。例如,包含资源的元数据可能导致原始服务器知道元信息的超级。使用此状态码不是必须的,而且只有在响应不使用此状态码便会返回200 OK的情况下才是合适的。 204 服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了的元信息。响应可能通过实体头部的形式,返回新的或更新后的元信息。如果存在这些头部信息,则应当与所请求的变量相呼应。 如果客户端是浏览器的话,那么用户浏览器应保留发送了该请求的页面,而不产生任何文档视图上的变化,即使按照规范新的或更新后的元信息应当被应用到用户浏览器活动视图中的文档。 由于204响应被禁止包含任何消息体,因此它始终以消息头后的第一个空行结尾。 205...阅读全文

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

CCPA vs. GDPR:欧美这两部个人数据保护法有什么差异?

Conduct),以满足不同处理部门的特定需求,但截至2018年底,未见欧盟监管机构批准这类准则。 (e)由数据保护监管机构认可的证书(Certification Mechanism)。 (3)第三关,若不满足上述(1)、(2)两项,则判断企业集团内部是否建立起有约束力的公司规则(BCR)并被监管机构批准: 各国主管监管机构可以批准某个企业集团内部制定了有约束力的公司规则(BCR),详细规定企业集团内部数据传输、对内对外的法律效力、数据保护原则的适用等要求。 针对数据跨境转移,BCR是较为推荐的模式,目前已采用BCR的跨国企业,包括德意志电信(Deutsche Telecom)、摩托罗拉(Motorola)、西门(Siemens)等等。 这是种跨国数据转移的长效保障机制,通过BCR认证后,企业就无需再...阅读全文

Kafka 3.0新特性全面曝光,真香!

,然后吃的喝的用的穿的都一样,你自然很难分辨。其中最重要的就是一定要注意中间的相同输入过程,各个不同节点要以相同且确定性的函数来处理输入,而不要引入一个不确定的值。使用replicated log来实现每个节点都顺序的写入客户端请求,然后顺序的处理客户端请求,最终就一定能够达到最终一致性。状态机安全性保证:在安全性方面,KRaft与传统Raft的选举安全性、领导者只追加、日志匹配和领导者完全性保证都是几乎相同的。下面只简单看看状态机安全性是如何保证的,仍然举论文中的极端例:在时刻a,节点S1是Leader,epoch=2的日志只复制给了S2就崩溃了。在时刻b,S5被选举为Leader,epoch=3的日志还没来得及复制,也崩溃了。在时刻c,S1又被选举为Leader,继续复制日志,将...阅读全文

博文 2022-04-28 16:02:11 mp.weixin.qq.com

大起底:揭开亚马逊云计算丰厚利润的秘密 - 电子商务

件公司Tableau卖给了Salesforce公司。AWS业务有点像自助餐,给开发者和终端用户提供了几百种在线服务自由选择,另外每年还不断推陈出新。从财务角度看,这一业务还是个“黑箱”。亚马逊没有披露云计算业务的具体营收来源,也没有给出各个版块的利润率情况。AWS诞生初期,就是作为一个基础计算服务的外包供应商,包括计算资源和数据存储等。可以判断,该业务大部分收入和利润仍然来自这些业务。科技业人士克里·奎因(Corey Quinn)曾经在私营的Duckbill集团担任首席云经济学家,帮助客户公司降低他们在亚马逊云计算的开支。奎因预测,AWS一半以上的收入来自于EC2计算服务。这一服务相当于让企业用户在亚马逊数据中心租赁到了实体服务器虚拟的“一部分”。奎因表示,计算服务再加上“弹性块存储...阅读全文

博文 2021-09-07 11:41:54 cnBeta.COM

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

:现在科学界对AI的应用分为两种。一种是将AI工具直接用于科学目的,如AlphaFold(用于蛋白质结构预测),它们可以创造巨大价值,相信未来会出现无数这样的工具。 另一种是将AI工具用于提升科研工作效率,如帮科学家和工程师找到新研究方向、写代码等。Copilot编程工具就是一个例。但AI工具的能力远不止于此。上述两种AI应用将会大大推动科技前进。 此外,目前科学界也在探索对AI的第三种应用方式——让AI成为可以“自我改进”的科学家。这件事情既有好处也有风险。 好的一面是,可以利用AI将人类的工作内容自动化,教会AI做任何人类可以做的事情:探索新科学、提出理论解释、验证、思考等,或许还可借此解决困扰人类已久的“AI对齐问题(Alignment Problem)”(即如何让AI系统的目标符合人...阅读全文

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

得物云原生全链路追踪Trace2.0-采集篇 - OSCHINA

发的全链路影库路由组件借助了 OpenTracing 随行数据透传机制,且与监控组件是强耦合关系,而基础框架将统筹监控,压测和其他模块,借助Spring Boot Starter 机制,一定程度上做到了功能的开箱即用,无缝集成。而使用字节码增强方式的 Pinpoint, SkyWalking,无法很好地做到与基础框架集成,若并行开发,也会多出基础框架与 Java Agent 两边的管理和维护成本,减缓迭代速度。 在之后将近两年的时间里,应用服务监控覆盖了得物技术部使用的将近 70% 的组件,为得物App在 2021 年实现全年 99.97% 的 SLA 提供了强有力的支持。现在看来,基于 OpenTracing + Prometheus 生态,很好地解决了分布式系统的调用链监控,借助...阅读全文

博文 2022-12-10 06:50:41 中文开源技术交流社区