InfraPub 为您找到相关结果 495

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

从根本上说,开源模式要由于专有模式,为什么这么说呢?下面总结了商业机构及政府机构可以从开源软件中获得的六大好处。 1、能更直观的选择供应商 在你投资工程和经济资源将产品整合到你的基础设施之前,需要确保产品的合格性:是否处于积极开发状态?是否有定期的漏洞修复和安全更新?产品是否能根据需求按时更新? 最后一或许比你想象的还要重要。解决方案必须满足产品需求。但需求会随市场及商业的变化而变化,如果产品不随之做出改变,未来就需要花费一笔不菲的迁移成本。 而在开源的世界里,你可以综合产品的发展速度以及社区的健康程度来比较供应商。一个更积极、更多元化的社区能在一两年后开发出更好的产品,这是一个关键的参考因素。当然,供应商必须要有能力解决在项目发展过程中出现的不稳定性问题。最后,还需要供应商具备较长的支...阅读全文

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

Linux 27周年:这27件有趣的事实你可能不知道

许多人认为10月5日是 Linux 系统的周年纪念日,因为这是 Linux 在1991年首次对外公布的时间。不过,你可能不知道的是,早在1991年8月25日,当年还是大学生的 Linus Torvalds 就向 comp.os.minix 新闻组的人透露了由于“业余爱好”他正在研究操作系统的消息。因此,该时间也被许多爱好者视为 Linux 的真正诞生日期。 为纪念 Linux 27 岁诞辰,OMG Ubuntu 列出了 27 个与 Linux 和 Linus Torvalds 相关的有趣事实。 1、截至 2018 年,Linux 内核已有 20,323,379 行代码。尽管近期有所减少,但庞大的代码量意味着 Linux 仍然是地球上(单个)最大的开源项目。 2、Linux 差不叫这个名字...阅读全文

Java 12 / JDK 12 正式发布

Mixed GC 如果 G1 Mixed GC 存在超出暂停目标的可能性,则使其可中止。 Promptly Return Unused Committed Memory from G1 G1 及时返回未使用的已分配内存 增强 G1 GC,在空闲时自动将 Java 堆内存返回给操作系统。为了实现向操作系统返回最大内存量的目标,G1 将在应用程序不活动期间定期执行或触发并发周期以确定整体 Java 堆使用情况。这将导致它自动将 Java 堆的未使用部分返回给操作系统。而在用户控制下,可以可选地执行完整的 GC,以使返回的内存量最大化。 上述每一个新特性都有详细的说明文档,可以击相应链接查看。 观望 JDK 13 根据 JDK 13 的迭代计划,预计将于 2019 年 9 月发布 —— Java 现在采...阅读全文

博文 2019-03-20 12:46:27 debian.cn

AWS IAM 基本概念介绍

AWS Identity and Access Management (IAM) 是AWS云平台上的一种 Web 服务,可帮助你安全地控制用户对 AWS 资源的访问权限。通过 IAM 可以控制哪些人可以使用你的 AWS 资源(身份验证)以及他们可以使用的资源和采用的方式(授权)。 IAM 主要功能与特 Shared access to your AWS accountGranular permissionsSecure access to AWS resources for applications that run on Amazon EC2Identity federationIdentity information for assurancePCI DSS...阅读全文

博文 2019-06-04 20:22:31 debian.cn

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

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

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

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

认为需提供更好的入门指南,以便于更多志愿者和维护者得以参与 Debian 项目开发中。 人员问题并非 Debian 独有。上个月,Linux 基金会成员 Sarah Novotny 也向 Register 提出了降低新内核开发人员门槛中的挑战。 另一个问题是新软件包会卡在 NEW 队列中等待核准。Carterh 说,“这是我们大家的一个痛。很多软件包会卡顿很长时间”。今年早期,NEW 队列的规模达到了历史新高,通过团队努力到 7 月已大为削减。 Carter 说,项目本身正在不断改进,也需要做更多努力。团队正与联想商洽在其 OEM 笔记本上预装 Debian 系统,虽然 Carter 也明白,即便是 Debian 开发人员,大多也会在购买这样的笔记本后立刻卸载预装版本并重装系统。团队认识到...阅读全文

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

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

Swift 语言,其使用率出现明显上涨,从上个月的第 15 位跃升至第 11 位。 与此同时,在性能方面表现良好、被外界视为安全的编程语言,Rust 继上个月进入榜单前 20 位之后,这个月提升了两个位次。回看一年前,它还排在第 26 位,现如今在亚马逊、微软、Google 等公司的推动下,Rust 的增长也在情理之中。 有前途的语言:Kotlin、Julia、Dart 在更多的编程语言中,还有一些值得关注的变化: Lua 可以调用 C 语言函数而闻名,其位置从上月的第 30 位上升到本月的 24 位; F# 的发展有些出乎意外,一年前,它排在第 74 位,一年后,它到了第 33 位; 另外,TIOBE 还盘出了三种非常有前景的语言,包括 Kotlin、Julia 和 Dart,不过,他们想要进入...阅读全文

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

Twitter确认接受440亿美元收购提议 埃隆·马斯克将完全控制该公司

他首次披露他在Twitter的9.2%股份时,他就创建一个"编辑"按钮向Twitter用户进行了调查,而实际上Twitter已经在开发这个按钮。他后来还建议取消Twitter Blue的广告并降低其订阅价格,并增加狗狗币作为支付选项。 马斯克一直直言不讳地批评Twitter的内容管制,称自己是一个"言论自由的绝对主义者",并对该平台在他的控制下如何节制表示担忧。"马斯克在TED 2022期间接受克里斯-安德森的采访时说:"人们有一个现实和认知,即他们能够在法律的范围内自由发言,这一非常重要。我认为从广义上讲,我们越是能增加对Twitter这个公共平台的信任,文明受损的风险就越小。" 马斯克最初在4月13日提出以每股54.20美元的价格收购Twitter。该提议是在马斯克披露收购...阅读全文

Debian下编译安装Golang

我的Debian是用来工作的,因此用的是稳定源。稳定源的优是,软件经过充分的测试,处于稳定版本。这种状态对于绝大多数软件,都是最合适的。 但是,对于一些需要最新版本的软件来说,稳定源太过于滞后。 官网不仅连接不稳定,二进制发布包也不够全。 目前(2016),Debian的稳定源只能安装go1.3版本。如果需要最新的版本,只能自行从源码编译安装。 卸载旧版本 sudo apt-get remove golang sudo apt-get autoremove 源码下载 git clone https://github.com/golang/go.git 如果没有Git,必须自行解决;如果没有gcc,也需要自行安装。 此外,golang/go这个库实在太大,近200MB。完整从GitHub上...阅读全文

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

开发者体验被重点关注:开发人员是关键资产 - OSCHINA

外媒 betanews 近日与一些企业高管进行了一些交流并得出结论称,开发者体验正经历一个优先级转变。即,云供应商和技术公司在开发者体验方面聚焦了更多的目光;这些公司正在投资和构建工具,以帮助开发人员更好、更快、更高效地工作。 开源数据库公司 Percona 的产品高级副总裁 Donnie Berkholz 指出,发生这种焦变化的原因在于,企业希望他们的开发人员更有生产力,对他们的工作方式更加满意,但他们也希望围绕技术管理和控制自己的命运。他们希望提供同样水平的速度和效率,但要跨越他们的 IT stacks 来设置东西。对于运行私有云的公司来说,这就是要与那些完全致力于公共云的竞争对手平起平坐。 并补充称,开发者体验投资将是为了使这种自助式的构建应用程序的方法能够发挥作用,并迅速发挥作用...阅读全文

博文 2021-12-28 14:45:52 中文开源技术交流社区

Go 1.16 即将发布,这些变更你需要知道

bytes, 0 allocs init errors @0.22 ms, 0.004 ms clock, 0 bytes, 0 allocs init strconv @0.24 ms, 0.002 ms clock, 32 bytes, 2 allocs init sync @0.28 ms, 0.003 ms clock, 16 bytes, 1 allocs init unicode @0.44 ms, 0.11 ms clock, 23328 bytes, 24 allocs ... 主要作用是 init 函数跟踪的支持,以用于 init 调试和启动时间的概要分析,算是一个 GODEBUG 的补充功能。 简化结构体标签 在 Go 语言的结构体中,我们常常会因为各种库的诉求,需要对结构体的...阅读全文

博文 2021-02-17 08:52:12 CSDN博客

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

Dubbo 2.7.0 发布。Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成。 据开源中国对 Dubbo 的项目负责人北纬的采访 Dubbo 重启维护一年多,现在还活着吗?,新版本的更新亮有: Dubbo 2.7.0 添加了社区呼声很高的 异步化支持 、以及 注册中心与配置中心分离 这两个特性。与 2.6 及以前的版本相比, 异步化支持 不再局限于基于 Future 接口的异步,也不再仅仅局限于只能在客户端异步。具体来说,Dubbo 2.7.0 版本全面拥抱 JDK8,在客户端开始支持基于 CompletableFuture 的异步编程范式,在服务端支持基于 AsyncContext...阅读全文

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

Rust 1.37.0 稳定版发布

Rust 1.37.0 stable 有什么?Rust 1.37.0 的亮包括通过类型别名引用枚举变量、内置 cargo vendor、对宏使用未命名的 const、配置文件引导的优化、Cargo 中的 default-run 和枚举上的 #[repr(align(N))] 。 通过类型别名引用枚举变量 在 Rust 1.37.0,可以通过类型别名引用枚举变量。例如: type ByteOption = Option; fn increment_or_zero(x: ByteOption) -> u8 { match x { ByteOption::Some(y) => y + 1, ByteOption::None => 0, } } 要实现它,Self 充当类型别名。在 Rust...阅读全文

博文 2019-08-17 21:17:23 debian.cn

如何对一个deb包解压、修改、重新打包 全过程

deb解包封包工具 08-21 此软件用于解包封包deb包 win下解压deb文件的插件 03-03 How to install DEB plugin: 1. Unzip the deb.wcx to the Total Commander directory 2. In Total Command ubuntu下deb的解压方法 feigeswjtu的专栏 12-25 1万+ 承接上一篇文章中的第二步,解压ubuntu下的deb文件,还是网上搜索吧,http://blog.csdn.net/monkey_d_meng/article/details/6034268这篇文章将的很详细,但是对菜鸟来说还是有高深,只是说解压deb的方法,没办法了,自己man dpkg查看吧,结果找到了,没...阅读全文

博文 2021-02-16 11:44:48 CSDN

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

Alpine 的镜像。它们的体积非常小,但代价是兼容性较差。Alpine 使用了略微不同的标准 C 库——muslc。你可能会时不时地遇到一些兼容性问题。 原始基础镜像非常适合用于测试和开发。它虽然体积很大,但提供了与 Ubuntu 工作一样的体验。此外,你还可以访问操作系统的所有二进制文件。 最后,我们再回顾一下各个镜像调整后的大小: node:8 681MB node:8 使用多阶段构建为 678MB gcr.io/distroless/nodejs 76.7MB node:8-alpine 69.7MB 英文原文:https://itnext.io/3-simple-tricks-for-smaller-docker-images-f0d2bda17d1e...阅读全文

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

Gitlab CI 配置文件 .gitlab

: script: - test project services: - postgres - ruby test:mysql: script: - test project services: - mysql - ruby 你可以看到hidden keys被方便的用作模版。 Triggers Triggers 可用于强制使用API调用重建特定分支,tag或commits。在triggers文档中查看更多。 pages pages是一个特殊的job,用于将静态的内容上传到GitLab,可用于为您的网提供服务。它有特殊的语法,因此必须满足以下两个要求: 任何静态内容必须放在public/目录下 artifacts必须定义在public/目录下 下面的这个例子是将所有文件从项目根目录移动到public/目录...阅读全文

博文 2018-12-12 21:09:02 ci.yaml 详解(下)

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

欧盟一般数据保护条例(GDPR)和加州消费者隐私法案(CCPA)是欧美两大经济体所出台的两部具有代表意义的个人数据保护方面的法规,代表欧美监管机关对于个人数据保护两种不同的管控取向。 本文选取了“个人数据或信息的类型与范围界定”、“法律的管辖范围”、“数据跨境传输管控”、“儿童数据的保护”、“数据主体的反对权和被遗忘权”等关键概念,对GDPR和CCPA的部分要进行比较分析。 1. “个人数据”或“个人信息”的范围界定 1.1 GDPR对个人数据的定义——侧重用抽象概念定义,实践中存在很大解释空间 除了对少数“特殊种类个人数据”(如宗教信仰、种族、工会成员信息、健康状况等)进行了零星列举以外,《欧盟一般个人数据保护条例》(GDPR)主要用抽象概念对其所管辖的“个人数据”的范围进行界定。 根...阅读全文

王垠:如何掌握所有的程序语言

了这里面的东西,每个程序员都应该可以做到这一。嗯,但愿吧。 重视语言特性,而不是语言 很多人在乎自己或者别人是否“会”某种语言,对“发明”了某种语言的人倍加崇拜,为各种语言的孰优孰劣争得面红耳赤。这些问题对于我来说都是不存在的。虽然我写文章批评过不少语言的缺陷,在实际工作中我却很少跟人争论这些。如果有其它人在我身边争论,我甚至会戴上耳机,都懒得听他们说什么 为什么呢?我发现归根结底的原因,是因为我重视的是“语言特性”,而不是整个的“语言”。我能用任何语言写出不错的代码,就算再糟糕的语言也差不了多少。 任何一种“语言”,都是各种“语言特性”的组合。打个比方吧,一个程序语言就像一台电脑。它的牌子可能叫“联想”,或者“IBM”,或者“Dell”,或者“苹果”。那么,你可以说苹果一定比 IBM 好...阅读全文

博文 2017-07-10 10:13:17 debian.cn

Linux 系统 vim 编辑器使用简明教程

otherfilename //编辑文件名为otherfilename的文件。 十一、修改文件格式 :set fileformat=unix //将文件修改为unix格式,如win下面的文本文件在linux下会出现^M。 注意:如果不知道自己处在什么模式时可以按2次Esc键即可回到命令模式,会有最后提醒一:注意大小写!!【本文转载自 欲思博客 略有增删】...阅读全文

博文 2015-07-25 16:33:04 debian.cn

如何在 Debian 上添加和删除用户

提供了一个更熟悉的文字编辑体验。使用箭头键移动光标,并搜索如下所示的线: / etc / sudoers root ALL=(ALL:ALL) ALL 在这行下面,复制你在这里看到的格式,只改变单词“root”来引用你想给sudo权限的新用户: / etc / sudoers root ALL=(ALL:ALL) ALL sammy ALL=(ALL:ALL) ALL 你应该为每个应该给予完全sudo权限的用户添加一个这样的新行。当你完成,你可以保存并通过击关闭文件CTRL-X其次是Y ,然后ENTER确认。 如何删除用户 如果您不再需要用户,最好删除旧帐户。 您可以删除用户本身,而不删除任何他们的文件,通过键入作为根用户: deluser sammy 如果您以具有sudo权限的其他非...阅读全文

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

Linux 基金会董事 Jim Zemlin:全球开源可持续增长将带来更多价值

,所以,从计算的历史来说,这实际上是规模最大的,Linux的规模扩展还是非常好的。” (3)在Linux 与人工智能、云计算、物联网结合方面,Jim 也发表了一些自己的观:在云计算里面,像Kubernetes对于云应用的开发是发展最快的;在人工智能机物联网项目方面,Linux 的 EdgeX 项目和 IOT 项目在这些方面也有很多开源的项目。 (三)开源方面,中国正大步迎头赶上,高质量开源项目不断发展 近几年来,中国越来越多的开发者加入开源,但是在 GitHub上来自中国的高质量开源很少,大部分都是来自于国外。Jim 认为产生这种差距的其中一个原因在于美国的软件开发历史比中国要长一些。 而不可否认的是,中国在开源方面正大步地迎头赶上。正如 Jim 所说“中国有一些高质量的开源项目也在不断地发...阅读全文

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

不要光想着价格 QLC 与 TLC 闪存有什么不同

以及QLC闪存? TLC = Trinary-Level Cell,即3bit/cell(每个Cell单元储存3个数据,有8个状态,具体如上图,有八种不同电压状态)。主要特:成本低,容量大,但速度慢,寿命短,约500-1000次擦写寿命。但随着技术的成熟,寿命问题已经得到改善(约1500-2000次擦写寿命),并成为目前闪存颗粒中的最主流产品。 QLC=Quad-Level Cell,即4bit/cell(每个Cell单元储存4个数据,有16个状态,具体如上图,有十六种不同电压状态)。相比于TLC来说,成本比更低,容量更大,而可靠、稳定性及寿命则更差些(此前几年预计的理论可擦写100-150次),不过目前东芝宣称,他们的QLC NAND拥有多达1000次左右的P/E编程擦写循环,几乎已经和...阅读全文

博文 2017-08-01 09:52:54 debian.cn

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

称SIG)都在继续立足所在层面交付用户们最为需要的功能。感兴趣的朋友可以击说明[7]查看发行版说明中的完整功能列表。 发布时间 Kubernetes 1.9目前已经可通过GitHub[8]下载。若需要马上开始使用Kubernetes,请参阅相关交互教程[9]。 发行团队 此次发行版的推出,源自数百名技术与非技术参与者们的共同努力。这里特别感谢谷歌公司软件工程师Anthony Yeh领导的发行团队。该发行团队中的14名成员一直在努力协调发行工作中的方方面面,包括说明文档、测试、验证以及功能完整性等等。 随着Kubernetes社区的不断发展,我们的发行流程也已经成为开源软件开发合作领域的一大标志性产物。Kubernetes继续以惊人的速度吸引到更多新用户的参与。这种增长创造出更为积极的反馈周...阅读全文

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

Debian 11 "bullseye" 发布,带来内核 exFAT 支持

经过 2 年 1 个月零 9 天的开发,Debian 11.0 "bullseye" 正式发布了。该版本包括许多重大的变化,并将在未来 5 年内得到支持。Debian 11 支持的计算机架构包括:32 位 PC(i386)和 64 位 PC(amd64)64 位 ARM(arm64)ARM EABI(armel)ARMv7(EABI 硬浮 ABI,armhf)MIPS(mipsel)64 位 MIPS(mips64el)PowerPC(ppc64el)IBM System z(s390x)这次发布中有什么新变化Debian 的这次发行再次带来了比上一版本 buster 更多的软件;本次发行包括 11294 个新软件包,软件包的总数达到了 59551 个。这个发行版的多数软件包得到了更新...阅读全文

六个开源软件开发的潜规则

玲珑,面面俱到 作为一个开发者,你很可能希望为开源项目解决一个特定的痛。或许你想要运行在一个目前还不支持的系统上,抑或你很希望改革社区目前使用的安全技术。想要引进新技术,特别是比较有争议的技术,最好的办法就是让人无法拒绝它。你需要透彻地了解底层代码,考虑每个极端情况。在不影响已实现功能的前提下增加新功能。不仅仅是完成就行,还要在特性的完善上下功夫。 糜不有初,鲜克有终 开源社区也有许多玩玩就算的人,但是承诺了就不要轻易失信。不要就因为提交被拒就离开社区。找出原因,修正错误,然后再试一试。当你开发时候,要和整个代码库保持一致,确保即使项目发生变化而你的补丁仍然可用。不要把你的代码留给别人修复,要自己修复。这样可以在社区形成良好的风气,每个人都自己改。 这些“潜规则”看上去很简单,但是还是有许...阅读全文

博文 2017-05-20 10:27:11 debian.cn

监控Kubernetes集群证书过期时间的三种方案 - OSCHINA

。Blackbox Exporter 最重要的功能之一是测量 Endpoint 的可用性。 当然, Blackbox Exporter 探测 HTTPS 后就可以获取到证书的相关信息, 就是利用这种方式实现对 Kubernetes apiserver 证书过期时间的监控. 配置步骤 调整 Blackbox Exporter 的配置, 增加 insecure_tls_verify: true, 如下: 重启 blackbox exporter: kubectl rollout restart deploy ... 增加对 Kubernetes APIServer 内部端https://kubernetes.default.svc.cluster.local/readyz的监控. 如果你没有使用...阅读全文

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

如何在 Debian服务器 上启用双因子身份验证

位置。emergency scratch codes 是单一的使用代码,应急时使用。即使你的手机不可用,它总是允许你访问。 要将服务器注册到Authenticator App中,只需打开应用程序并击右下角的红色加号即可。然后选择扫描条码选项,扫描打印到终端的二维码。你的服务器和应用程序现在连接。 回到服务器上,我们现在需要编辑用于 SSH 的 PAM (可插入身份验证模块),以便它使用我们刚刚安装的身份验证器安装包。PAM 是独立系统,负责 Linux 服务器上的大多数身份验证。 需要修改的 SSH PAM 文件位于 /etc/pam.d/sshd ,用以下命令编辑: vim /etc/pam.d/sshd 在文件顶部添加以下行: auth required...阅读全文

博文 2018-12-05 11:44:56 debian.cn

欧洲核子研究组织(CERN)是如何使用 Linux 和开源的 - 云+社区

解决方案的可扩展性时,我们也从中受益,也可以扩大规模。“解决现实问题2012 年左右,CERN 正在研究如何为大型强子对撞机扩展计算能力,但难是人员而不是技术。CERN 雇用的员工人数是固定的。“我们必须找到一种方法来扩展计算能力,而不需要大量额外的人来管理。”Bell 说,“OpenStack 为我们提供了一个自动的 API 驱动和软件定义的基础架构。”OpenStack 还帮助 CERN 检查与服务交付相关的问题,然后使其自动化,而无需增加员工。“我们目前在日内瓦和布达佩斯的两个数据中心运行大约 280000 个处理器核心和 7000 台服务器。我们正在使用软件定义的基础架构使一切自动化,这使我们能够在保持员工数量不变的同时继续添加更多的服务器。“Bell 说。随着时间的推移,CERN...阅读全文

博文 2021-11-29 13:20:55 腾讯云

十个增加 Linux Shell 脚本趣味的小工具

"rsnapshot done :)" 输出: 下面是一个复杂一的例子: .... alert=18000 live=$(lynx --dump http://money.rediff.com/ | grep 'BSE LIVE' | awk '{ print $5}' | sed 's/,//g;s/\.[0-9]*//g') [ $notify_counter -eq 0 ] && [ $live -ge $alert ] && { notify-send -t 5000 -u low -i "BSE Sensex touched 18k"; notify_counter=1; } ... 输出: 这里的参数解释如下: -t 5000:指定超时的时间,毫秒 -u low:设置是否紧急 -i gtk...阅读全文

博文 2018-04-09 09:38:50 debian.cn

Gitlab CI 配置文件 .gitlab

入手动执行。GitLab 9.0 开始引入手动停止。GitLab 9.2 开始引入保护手动操作。 手动操作指令是不自动执行的特殊类型的job;它们必须要人为启动。手动操作指令可以从pipeline,build,environment和deployment视图中启动。 部署到生产环境是手动操作指令的一个很好示例。 了解更多请查看environments documentation。 手动操作指令可以是可选的或阻塞。在定义了手动执行的那个stage中,手动操作指令将会停止pipline中的自动执行指令。当有人通过击play按钮来执行需要手动执行的job时,可以来恢复pipeline的执行。 当pipeline被阻塞时,即使是pipeline是成功状态也不会merge。被阻塞的pipelines...阅读全文

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

分布式运行时 Dapr 知多少

微服务。 以上是Dapr官方GitHub仓库上对Dapr的简介。文字虽短,口气却很大,因为其除了涵盖了当前所有的技术热:分布式、云、微服务,还自我标榜为:分布式应用运行时。分布式应用我们或多或少有些了解,运行时也听到不少,比如常见的语言运行时:Java 运行时,.NET 运行时,Go 运行时等等,那运行时又是什么东西?简要来说:运行时是程序运行依赖的执行环境。以.NET 程序运行时CLR为例,它为.NET应用程序提供了一个托管的代码执行环境负责应用程序在整个执行期间的内存管理、线程管理、安全管理、远程管理、即使编译等。 那分布式应用运行时,就是提供分布式应用运行所依赖的的执行环境。那运行分布式应用需要哪些环境依赖呢?回答这个问题,我们要先思考开发分布式应用的挑战是什么?明确了挑战,那就找到...阅读全文

Apache Kafka发布 3.0 正式版

不是与什么的AdminClient收益已经为最新的偏移,这是下一个记录的偏移,在主题/分区写入混淆。)这个扩展现有ListOffsets API允许用户探测生动活泼的通过询问哪个是最近写入的记录的偏移量以及它的时间戳是什么来分区。kafka ConnectKIP-745:连接 API 以重新启动连接器和任务在 Kafka Connect 中,连接器在运行时表示为一组Connector类实例和一个或多个Task类实例,并且通过 Connect REST API 可用的连接器上的大多数操作都可以应用于整个组。从一开始,一个值得注意的例外restart是Connector和Task实例的端。要重新启动整个连接器,用户必须单独调用以重新启动连接器实例和任务实例。在 3.0 中,KIP-745使用户...阅读全文

博文 2021-09-26 14:13:03 joseph

WebAssembly:无需容器的 Docker (下)

数直接传递给 php.wasm 明确声明运行时,而不包括二进制文件本身。 拉到上面可以看到我们可以使用传统的 PHP 容器明确编写完整的命令,包括 php 二进制文件(不是必需的)。最后一,即使使用 Docker,Wasm 也加强了运行 index.php 的安全性,因为暴露给它的要少得多。docker run --rm \ --runtime=io.containerd.wasmedge.v1 \ -v $(pwd)/images/php/docroot:/docroot \ ghcr.io/vmware-labs/php-wasm:7.4.32-cli-aot \ -f /docroot/index.php

Hello from PHP 7.4.32...阅读全文

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

Cortex: 高可用和水平扩展Prometheus监控系统

置为对cortex执行远程写入。使用此功能,指标可以从多个集群聚合到一个运行cortes的集群中。这为我们提供了一个中心位置,在这里我们可以观察整个基础设施的指标。Cortex提供了与Prometheus/PromQL兼容的端endpoint。可以将此端endpoint作为数据源提供给grafana,并与普通Prometheus实例相同的方式执行查询。长期储存普罗米修斯的本地存储不是持久的长期存储。发送到cortex的指标被存储在已配置的存储服务中。如果使用云存储,这将使您从运行自己的数据库的麻烦中解脱出来。你还可以享受云提供商提供的SLA。Cortex还支持用于存储块的对象存储:GCSS3多租户当向cortex写入指标时,通过设置http头(X-Scope-OrgID)来提供多租户。查...阅读全文

博文 2021-10-09 17:00:22 知乎

aptitude 与 apt

包列表是最新的。apt-get install packagename——安装一个新软件包(参见下文的 aptitude )apt-get remove packagename——卸载一个已安装的软件包(保留配置文件)apt-get –purge remove packagename——卸载一个已安装的软件包(删除配置文件)dpkg –force-all –purge packagename 有些软件很难卸载,而且还阻止了别的软件的应用 ,就可以用这个,不过有冒险。apt-get autoclean apt会把已装或已卸的软件都备份在硬盘上,所以如果需要空间 的话,可以让这个命令来删除你已经删掉的软件apt-get clean 这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用...阅读全文

博文 2021-01-28 17:50:09 get 的区别与联系

架构师详解 Nginx 架构

主进程(master process)生成一个子进程(worker process)出来和客户端建立连接进行交互,直到连接断开,该子进程就结束了。使用进程的好处是各个进程之间相互独立,不需要加锁,减少了使用锁对性能造成影响,同时降低编程的复杂度,降低开发成本。其次,采用独立的进程,可以让进程互相之间不会影响,如果一个进程发生异常退出时,其它进程正常工作,master 进程则很快启动新的 worker 进程,确保服务部中断,将风险降到最低。缺是操作系统生成一个子进程需要进行内存复制等操作,在资源和时间上会产生一定的开销;当有大量请求时,会导致系统性能下降。 异步非阻塞 每个工作进程使用异步非阻塞方式,可以处理多个客户端请求。当某个工作进程接收到客户端的请求以后,调用 IO 进行处理,如果不能...阅读全文

博文 2018-05-01 23:10:47 debian.cn

Java Annotations详解

="Jakob", age=37, newNames={"Jenkov", "Peterson"} ) public class MyClass { } 元素的默认值 你可以为一个元素指定默认值(有像C++中的方法哈)。这样在注释初始化时那个元素就可以忽略了。如下定义了一个包含默认值的注释 @interface MyAnnotation { String value() default ""; String name(); int age(); String[] newNames(); } 在调用时,可以忽略包含默认值的元素,这里指的是value元素,如: @MyAnnotation( name="Jakob", age=37, newNames={"Jenkov", "Peterson...阅读全文

博文 2013-03-02 08:04:55 CSDN博客

Golang 中的 channel 通道详解

文件是必须要做的,但关闭通道不是必须的。关闭后的通道有以下特:对一个关闭的通道再发送值就会导致panic。对一个关闭的通道进行接收会一直获取值直到通道为空。对一个关闭的并且没有值的通道执行接收操作会得到对应类型的零值。关闭一个已经关闭的通道会导致panic。channel的种类不带缓存的channel一个基于无缓存Channels的发送操作将导致发送者goroutine阻塞,直到另一个goroutine在相同的Channels上执行接收操作,当发送的值通过Channels成功传输之后,两个goroutine可以继续执行后面的语句。反之,如果接收操作先发生,那么接收者goroutine也将阻塞,直到有另一个goroutine在相同的Channels上执行发送操作。基于无缓存Channels的...阅读全文

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

最近游戏已上线运营,进行服务器内存优化,发现一个非常奇妙的问题,我们的认证服务器(AuthServer)负责跟第三方渠道SDK打交道(登陆和充值),由于采用了curl阻塞的方式,所以这里开了128个线程,奇怪的是每次刚启动的时候占用的虚拟内存在2.3G,然后每次处理消息就增加64M,增加到4.4G就不再增加了,由于我们采用预分配的方式,在线程内部根本没有大块分内存,那么这些内存到底是从哪来的呢?让人百思不得其解。 探索 一开始首先排除掉内存泄露,不可能每次都泄露64M内存这么巧合,为了证明我的观,首先,我使用了valgrind。 valgrind --leak-check=full --track-fds=yes --log-file=./AuthServer.vlog & 然后启动测试...阅读全文

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

Linux系统诊断-内存基础

数。从而达到“写资源”合理利用的效果。然而,free命令所展示的buffer和cache 有狭义的意思——free展示的buffer表示 块设备所占用的缓存 、free展示的cache表示普通文件占用的the page cache(缓存页) 。总之,buffer和cache使用的内存都是用来加速Linux读写性能,如果有新的进程需要内存,系统会将buffer和cache占用的内存回收,并重新分配给进程使用。2.4 其他内存概念RSS & VSZ & PSS & USSRSS(Resident Set Size):进程实际使用的物理内存大小,包括sharedMem。VSZ(Virtual Memory Size):进程所有能够访问到的内存大小,包括因为缺页中断,被swap出去的内存大小,以及...阅读全文

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

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

择更多,因此被官方定义了的参与者也更多,但Debian具有明显更多的开发者人数。虽然所有工作都是贡献者来完成,但最关键的权利还是只有少数人才能获得。Ubuntu贡献者中,Canonical员工居多,63名核心开发人员中有36人使用 @canonical.com邮件后缀注册launchpad帐号,他们放在Ubuntu发行版上的时间比Debian成员更多,如果能比较一下他们的工时数将非常有意思。 Debian已经意识到成员结构的缺,就是否增设专门的打包人员也讨论过多次了,但遗憾的是每次都只是讨论讨论就结束了,始终没有拿出一个解决方案。 可能的演变 Ubuntu方面,底层结构变化最近已经结束,他们近期不再打算做出进一步变化,但他们计划让每个团队可以更好地控制与自身相关的包上传权限,这样可以让每个...阅读全文

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

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

Pod 初始化配置,还能起到配置统一的效果。 2、环境、软件准备 本次演示环境,我是在本机 MAC OS 上操作,以下是安装的软件及版本: Docker: 18.06.3-ceOracle VirtualBox: 6.0.8 r130520 (Qt5.6.3)Linux: 7.6.1810Minikube: v0.30.0Kubernetes: 1.12.1 注意:这里 Kubernetes 集群搭建使用 Minikube 来完成,Minikube 启动的单节 k8s Node 实例是需要运行在本机的 VM 虚拟机里面,所以需要提前安装好 VM,这里我选择 Oracle VirtualBox。k8s 运行底层使用 Docker 容器,所以本机需要安装好 Docker 环境,这里忽略...阅读全文

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

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

1确保提案所做的任何变更都可以帮助到尽可能多的 Go 开发者(使他们编写的代码更健壮、正确性更高等),条件2则保证了变更将给使用者带来的影响降到最低。 至于条件3,如果提案不能满足该条件,它将不会被实现。即便这项提案能够解决一个很重要的问题,思路也很好,但在没有实现方案的情况下,它将会被拒绝,并需要重新起草。 下一步 在这篇文章发布时,Go 开发团队表示已经执行提案评估流程的第一步,并开始了流程的第二步,关于具体的提案可此进行查看。 对于 Go 开发团队已经明确并通过的提案,将会继续实现(即评估流程的第3步)。开发团队表示希望在下一个发布周期的第一天(暂定于2019年2月1日)完成这些提案变更的实现,所以这次可能会在较早的时间开始进行,以留出两个月的反馈时间(2018年12月至2019年1...阅读全文

最全 MongoDB 基础教程

版本 weights document 索引权重值,数值在 1 到 99,999 之间,表示该索引相对于其他索引字段的得分权重 default_language string 对于文本索引,该参数决定了停用词及词干和词器的规则的列表。 默认为英语 language_override string 对于文本索引,该参数指定了包含在文档中的字段名,语言覆盖默认的language,默认值为 language MongoDB聚合 MongoDB聚合(aggregate)主要用于处理数据(诸如统级平均值、求和等), 并返回计算后的数据结果。有类似sql语句中的count(*) aggregate() 方法 语法 db.COLLECTION_NAME.aggregate...阅读全文

博文 2021-02-22 07:45:45 OSChina

Kafka生产问题总结以及性能优化

产者如果重启则会生成新的PID。 Sequence Number:对于每个 PID,该 Producer 发送到每个 Partition 的数据都有对应的序列号,这些序列号是从0开始单调递增的。 2.1.9 kafka的事务 Kafka的事务不同于Rocketmq,Rocketmq是保障本地事务(比如数据库)与mq消息发送的事务一致性,Kafka的事务主要是保障一次发送多条消息的事务一致性(要么同时成功要么同时失败),一般在kafka的流式计算场景用得多一,比如,kafka需要对一个topic里的消息做不同的流式计算处理,处理完分别发到不同的topic里,这些topic分别被不同的下游系统消费(比如hbase,redis,es等),这种我们肯定希望系统发送到多个topic的数据保持事务一致...阅读全文

博文 2023-01-05 23:16:48 CSDN博客