HTML 5.1 — 14 项新增特性及使用案例
4、反序链接关系 rev 属性在 HTML4 里有定义,但是它并没出现在 HTML5 里。W3C 决定在 和 元素里重新包含 rev 属性。rev 属性标识当前和反向的链接文档的关系。它已经被包含来支持广泛使用数据结构标记格式,RDFa。 让我们用两个文档来举个例子,每个包含一课程,在它们之间的链接可以使用如下 rel 和...阅读全文
4、反序链接关系 rev 属性在 HTML4 里有定义,但是它并没出现在 HTML5 里。W3C 决定在 和 元素里重新包含 rev 属性。rev 属性标识当前和反向的链接文档的关系。它已经被包含来支持广泛使用数据结构标记格式,RDFa。 让我们用两个文档来举个例子,每个包含一课程,在它们之间的链接可以使用如下 rel 和...阅读全文
,并且肯定会占据PHP市场的一部分,但是不能完全取代 PHP。 Node.js 和 PHP 之战,你更偏向谁?【本文转自开源中国】...阅读全文
,实现目标。激励作用=目标意义×实现可能性从这一公式中可以明确地看出,目标意义和实现的可能性越大,激励作用也越大,反之亦然。目标的设置必须具有可行性,这不仅可以使目标发挥最大的激励作用,还有利于具体目标与长远目标的实现,以及个人目标与团队目标的有机结合。2、集体荣誉激励法集体荣誉激励法是指团队各级领导者在实际工作中,通过多表扬、奖励集体来激发下属的集体意识,使每个团队成员产生一种强烈的荣誉感、责任感和归属感,从而形成一种自觉维护集体荣誉的向心力的办法。3、情感激励法每个人都需要关怀与体贴。一句亲切的问候,一番安慰的话语,都会成为激励人们行为的动力。通常来说,团队成员工作热情的高低,同领导与员工感情的亲疏成正比。团队领导可以和员工经常沟通,内容可以是家庭、生活、婚姻、生产、娱乐、工作等,相互交流...阅读全文
Linux创始人Linus Torvalds和GKH(Greg Kroah-Hartman)等人拉赞助,让大神能够安心保证Linux的发展。几乎所有人都知道Linus Torvalds,但是GKH,即使你不知道他的名字,但是实际上在Linux相关的开发或运维的技术人员会发现他的身影无所不在。是的,GKH主要负责Linux的stable分支的维护,staging/USB driver core/debugfs/kref/kobject/sysfs kernel/TTY layer/linux-hotplug/Userspace I/O/udev等子系统或者项目中都可以看到他的存在。效力于Linux基金会之前,GKH主要在Novell 的 SUSE Labs工作,下图也是这位帅哥在2011年9月拍摄于纽...阅读全文
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查看吧,结果找到了,没...阅读全文
- 框架类组件配置,比如CAT客户端的配置。虽然这类框架类组件是由其他团队开发、维护,但是运行时是在业务实际应用内的,所以本质上可以认为框架类组件也是应用的一部分。这类组件对应的配置也需要有比较完善的管理方式。 2、Why Apollo 正是基于配置的特殊性,所以Apollo从设计之初就立志于成为一个有治理能力的配置管理平台,目前提供了以下的特性: 统一管理不同环境、不同集群的配置 Apollo提供了一个统一界面集中式管理不同环境(environment)、不同集群(cluster)、不同命名空间(namespace)的配置。同一份代码部署在不同的集群,可以有不同的配置,比如zk的地址等通过命名空间(namespace)可以很方便的支持多个不同应用共享同一份配置,同时还允许应用对共享的配置进行覆...阅读全文
cloud-native application development--Focus on your application’s core logic and keep your code simple and portable。简化云原生应用的开发,确保应用专注于业务,并保证代码简单可移植。 因此,在考虑云原生应用开发的技术选型时,尽情尝试吧,目前在国内阿里云也已采用。 Last 在云原生如火如荼发展之际,Dapr V1.0 的正式发布,为开发者指明了云原生时代微服务的开发方向。相信Dapr 在未来的微服务架构选型中必将占有一席之地! 文章转载:https://www.cnblogs.com/sheng-jie/p/how-much-you-know-about-dapr.html...阅读全文
系统提供的socket缓冲区大小为8K,你可以将之设置为64K,尤其在传输实时视频时。 socket发送数据时候先把数据发送到socket缓冲区中,之后接受函数再从缓冲区中取数据,如果发送端特别快的时候,缓冲区很快就被填满(socket默认的是1024×8=8192字节),这时候我们应该根据情况设置缓冲区的大小,可以通过setsockopt函数实现 #include
Harbor 1.9 发布了,此版本新功能众多,包括 tag 保留和配额、可与 CI/CD 工具集成的 Webhook 通知、数据复制、Syslog 集成以及 CVE 例外策略等安全功能。 Webhook 如果您是项目管理员,可以通过 Webhook 的通知机制,将 Harbor 的项目与您技术栈的其余部分连接在一起。简言之,如果您配置了 Webhook,Harbor 会就把该项目中发生的某些事件(包括推送、拉取、删除镜像和 Helm Charts、镜像扫描及 CVEanqu 漏洞发现)向 Webhook 端点发出通知。通过这些事件,您可以将 Harbor 与其他系统集成在一起,以简化持续集成和开发过程。理想情况下,获得 Webhook 的端点应具有一个操作侦听器,用于解释 JSON 格式...阅读全文
PHP 7.2.0 已于 2017 年11月30日正式发布GA版,大家可以第一时间尝鲜了。这里我们介绍如何在 Debian 9 "Stretch" 上安装配置 PHP-7.2,以便大家及时升级。目前 Debian.cn 全站已稳定运行在 PHP-7.2 版本中。 本教程使用以下系统及组合: Debian 9 stretch 、Debian 8 Jessie、Ubuntu 16.04 LTS、Ubuntu 14.04 LTS / PHP-7.2 、PHP-7.1、PHP-5.6 安装 PHP-7 Ondřej Surý 的 PHP PPA 为 Ubuntu 16.04/14.04 提供了 PHP-7.2 版本,也通过个人网站为 Debian 9/8 提供 PHP7.2 版本。Ondřej...阅读全文
winehq-stable wine启动初配置 可参考Debian wiki的wine,这是使用wine前的第一步,在终端中输入 winecfg 依次按提示安装mono,gecko,要等待部分安装时间,然后再出现Configuration界面,点OK wine字体配置 wine界面字体显式是调用Linux操作系统的字体,若之前复制了windows的字体到/usr/share/fonts中的话,这部分一般就没有问题。没有的话可以复制一部分过去,或者研究下怎么使用其他字体和替代方案。 但这不够,还要配置wine内模拟的windows字体,这部分字体在/home/your_username/.wine/drive_c/windows/Fonts/(其中your_username换成你的实际用户名),把...阅读全文
前言 在 DevOps 实践中,基础设施即代码如何落地是一个绕不开的话题。像 Chef,Puppet 等成熟的配置管理工具,都能够满足一定程度的需求,但有没有更友好的工具能够满足我们绝大多数的需求?笔者认为 Terraform 是一个很有潜力的工具,目前各大云平台也都支持的不错,尤其是使用起来简单明了。本文会简单的介绍一下 Terraform 相关的概念,然后通过一个小 demo 带大家一起进入 Terraform 的世界。说明:本文的演示环境为 ubuntu 16.04。 Terraform 是什么? Terraform 是一种安全有效地构建、更改和版本控制基础设施的工具(基础架构自动化的编排工具)。它的目标是 "Write, Plan, and create...阅读全文
今天我们公布了Kubernetes 1.7,这一里程碑版本引入了更为强大的安全性、存储以及扩展性因素,旨在满足Kubernetes在广泛企业环境下所面临的实际需求。 这次发布的版本中安全方面的改进包括加密的Serect,Pod到Pod通讯的网络策略,限制kubelet访问的节点授权器(node authorizer),和客户端/服务端 TLS 证书轮换。 对于在Kubernetes上伸缩数据库的用户,这次版本有一个重要特性向StatefulSet添加了自动化的更新,并增强了对DaemonSet的更新。同时我们宣布对本地存储和用于更快速伸缩StatefulSet的加速模式(burst mode)的alpha支持。 同时,对于高级用户,这次版本中的API聚合允许用户提供的API服务器和...阅读全文
built.in.metrics.version。这latest是目前此属性的唯一有效值(自 2.5 以来一直是默认值)。KIP-741:将默认 SerDe 更改为 null删除了默认 SerDe 属性的先前默认值。流过去默认为ByteArraySerde. 用3.0开始,没有缺省,和用户需要任一组其的SerDes根据需要在API中或通过设置默认DEFAULT_KEY_SERDE_CLASS_CONFIG和DEFAULT_VALUE_SERDE_CLASS_CONFIG在它们的流配置。先前的默认值几乎总是不适用于实际应用程序,并且造成的混乱多于方便。KIP-733:更改 Kafka Streams 默认复制因子配置有了主要版本的机会,Streams 配置属性的默认值replication.factor会从 1 更改为 -1。这将允许新的...阅读全文
1. HDFS概述 Hadoop 分布式系统框架中,首要的基础功能就是文件系统,在 Hadoop 中使用 FileSystem 这个抽象类来表示我们的文件系统,这个抽象类下面有很多子实现类,究竟使用哪一种,需要看我们具体的实现类,在我们实际工作中,用到的最多的就是HDFS(分布式文件系统)以及LocalFileSystem(本地文件系统)了。 在现代的企业环境中,单机容量往往无法存储大量数据,需要跨机器存储。统一管理分布在集群上的文件系统称为分布式文件系统。 HDFS(Hadoop Distributed File System)是 Hadoop 项目的一个子项目。是 Hadoop 的核心组件之一, Hadoop 非常适于存储大型数据 (比如 TB 和 PB),其就是使用 HDFS 作为存...阅读全文
broker-0、broker-1等…… Topic:消息的主题,可以理解为消息的分类,kafka的数据就保存在topic。在每个broker上 都可以创建多个topic。实际应用中通常是一个业务线建一个topic。 Partition:Topic的分区,每个topic可以有多个分区,分区的作用是做负载,提高kafka的吞 吐量。同一个topic在不同的分区的数据是不重复的,partition的表现形式就是一个一个的⽂件夹! Replication:每一个分区都有多个副本,副本的作用是做备胎。当主分区(Leader)故障的 时候会选择一个备胎(Follower)上位,成为Leader。在kafka中默认副本的最大数量是10 个,且副本的数量不能大于Broker的数量,follower和leader绝对...阅读全文
显示的图形界面嗳,对,图形界面(X Window)一般就在 7 号终端;tty5 和 tty6 是空的,这表示这两个终端没人用。等等,tty1 呢? tty tty(终端)是对外沟通的渠道之一,但是,不是每一个进程都需要 tty,某些进程可以直接通过其他途径(比如端口)来和外部进行通信,对外提供服务的,所以,这一层不是完整的一层,只是个跃层。 好了,我们有落下什么吗? 这小丑是谁啊?啊哈,我也不知道,或许是病毒?你说呢?【本文转自 Linux.中国,原始链接在这里】...阅读全文
非常活跃的社区,有80,000个StackOverflow问题和数不清的博客来自开发人员和高级用户。 有一些流行网站使用Django,包括 Bitbucket, Pinterest, Instagram, 以及 The Onion。 Django的人气不断飙升,可能仍然是Python开发人员最受欢迎的选择。 您之前的项目是否用过Django? 你真的认为Django是Python开发人员最好的框架吗? 一如既往,您的意见对于所有读者都至关重要,请在下面的评论栏中分享您的看法。 原文出处: manmohan 译文出处:开源中国 Django“自备军需”(Batteries-Included) 目录...阅读全文
如果你运行Debian或它的衍生版本之一(比如Linux Mint或Ubuntu),迟早会遇到apt-get和dpkg,它们是主要的软件包管理命令。然而,这些只是最常见的Debian软件包工具。这些年来,Debian实际上陆续推出了几十款让安装和配置软件包更容易的脚本和工具。 许多这样的脚本和工具可以帮助你创建软件包。而且,它们常常包括你在桌面工具中根本找不到的功能特性。 下面是Debian中七款最实用的软件包管理工具。大多数工具还应该出现在Debian衍生版中: 7. Aptitude 众所周知,Aptitude是一款基于文本的软件包管理工具。桌面工具可能更符合现代用户的期望,不过Aptitude仍然很有用,所以常常默认情况下安装。 如果你试图修复阻止安装或删除其他任何内容的破损软件包...阅读全文
于在 Kubernetes 平台上简化证书管理的软件,它支持对接许多不同的证书源,如 Let's Encrypt 和 HashiCorp Vault。 如果你在使用 Apache APISIX Ingress Controller 时,遇到了证书管理的麻烦,那么使用 Cert Manager 将会是一个不错的选择,本文将介绍如何通过 Cert Manager 来创建证书并对接到 Apache APISIX Ingress Controller。 步骤一:环境准备 如果你希望按照本文的指导进行实际的操作,请确保以下环境和工具已准备就绪: 准备一个可用的 Kubernetes 集群,开发环境中,你可以使用 Kind 和 Minikube 安装 kubectl 安装 Helm v3 请注意,下文所...阅读全文
斯曾在2000年为 Linus Torvalds 提供一份工作,条件是他停止在 Linux 上的开发。Linus 拒绝了。 13、Linux 有多成功?它的长期竞争对手微软,在90年代初曾试图“熄灭”该项目,到现在却在利用 Linux 进行服务器业务,甚至在为内核开发做贡献! 14、说到贡献,谷歌、英特尔、华为、三星、红帽、Canonical 和 Facebook 是近年来 Linux 内核开发的主要贡献者。 15、Linus 出生于芬兰,一个双语国家,并认为瑞典语是他的“母语”。他说,由于发音不同,他常常觉得用英语说话“不舒服”,但却更喜欢阅读英文书籍。 16、Linux 可能是现在最大的自由软件项目(参见第一条),不过在1991年首次发布时,它仅有约 10 万行代码。 17、在重新调整其...阅读全文
的证书颁发机构带来巨大压力。 Hollebeek 称: 将证书寿命迅速缩短到一年,甚至更少,对于许多依赖数字证书保护系统的公司来说,这将带来巨大的成本。这些费用不会换来更加安全的改进,并且这项提案对从事非法活动或冒充合法公司的非法分子不会有任何影响。最主要的一点是,减少证书寿命的任何好处都是属于理论性的,在短期内要付诸实际的话,产生的风险和成本也将难以预测。 该提案于今年早些时候在谷歌员工 Ryan Sleevi 的一次会议上提出,目前仍处于草案阶段,还没有关于何时进行表决的消息。...阅读全文
工作规范和工作流程,并跟踪开发过程实际合规性; 8. 指导. 审核项目总体技术方案,对各项目进行最后的质量评估; 9. 负责技术团队建设和管理,注重人才培养和营造创新的研发文化; 10. 完成各项技术工作相关数据统计分析报告,并据此对公司发展提出合理化建议。 ** 岗位要求:** 1. 本科及以上学历,计算机. 软件工程相关专业,互联网行业优先考虑; 2. 10年及以上技术研发. 软件开发相关行业工作经验,5年以上互联网行业技术研发团队管理经验, 精通基于Java. PHP等语言的开发,熟悉服务端软件架构设计与开发流程;有互联网CTO或技术总监工作经验,带过百人以上团队; 3. 熟悉互联网领域业务,深刻理解产业发展方向,具备敏锐准确的洞察力和缜密的逻...阅读全文
写给五年陈的自己 写周报,写的兴起,编写周报,还边用虎跑泉,泡铁观音喝。自己写周报的**惯还是要改一改,自己是个性情中人,写个周报也透露了太多情感在周报里。有很多人肯定觉得不好,也许以后我也会改,改的越来越干练,掏心的话少说。 兴奋了,喝了茶,睡不着了。灵感闪动,本周是个值得纪念的日子,写个文章纪念下过去。 回想这一路路走来,还是很感恩收获的一切,我渐渐从一名菜鸟,成长为一位架构师,记得毕业的时候我给自己定的目标是:五年要成为一方面的专家。虽然,实际的成长比这个慢了两年,但是我还是庆幸自己当初果断的裸辞,然后进入支付宝。 每个架构师都是独立无二的,每个架构师都应该有自己的情怀,这些情怀是你的世界观。 我是如何成长为一个架构师的,我姑且给自己定的 title 就是架构师,不要认为有架构师的...阅读全文
Window)已经转移。 对此,Barnes 认为微软不会基于 Linux 内核来重构 Windows 理由如下 1.内核 Windows 系统中的 NT 内核提供了一定程度的向后兼容、长期支持和驱动程序可用性,而 Linux 还在不断完善中。如果想要基于 Linux 重构,这必然需要耗费数百万美元。微软有很多付费客户可以继续按原样支持 Windows,某些已经有数十年了。 基于 Linux 重构 Windows,并不像 Raymond 所说的那样能够帮助微软节省开支。很多盈利公司的存在都是为现有的操作系统而服务的。即便是最终基于 Linux,也可能会导致不良的内核单一化。 Windows 和 macOS 的竞争,才能让 Linux 变成更好的操作系统。而更理想的结果是开源创新能够在所有操作系统之间传...阅读全文
有很多理由可以选择 Debian 作为您的操作系统——作为用户、作为开发者,甚至是在企业环境中。大多数用户称赞它的稳定性,以及软件包和发行版的平滑的升级过程。Debian 也被软件和硬件开发人员广泛使用,因为它能运行在众多架构和设备上,提供了一个公开的缺陷跟踪系统,以及面向开发人员的其他工具。如果您在专业环境中使用 Debian,您还可以享受到诸如 LTS 版本和云映像带来的额外好处。对我而言,使用 Debian 的原因是它完美的易用性和稳定性。这些年来,我使用了各种不同的发行版,但是 Debian 是唯一一个能够完美使用的发行版。NorhamsFinest 在 Reddit 上写道面向用户的 DebianDebian 是自由软件。Debian 是由自由和开放源代码的软件组成的,并将始终保...阅读全文
从我们认为 DevOps 只是一个流行语开始,它已经发展了很长的一段时间。现在,DevOps 已经成为了一个主要焦点,并在过去几年一直在塑造着软件世界。专家表示,DevOps 将成为主流,它的流行程度将在 2019 年达到顶峰。 根据 2018 年《DevOps 现状报告》,DevOps 精英级执行团队代码部署频率和发布速度更高,变更故障率更少,事故恢复时间更短,同时高效能团队的比例逐年增长,采用 DevOps 的团队越来越多。 而 Stack Overflow2018 年的薪资计算器报告显示,全球 DevOps 专家的收入最高,美国 DevOps 专家的年薪中位数接近 10 万美元。 以下是“DevOps”一词的 Google Trends 以及 2019 年的预计增长假设。 从统计数据...阅读全文
一 Kafka可视化管理工具kafka-manager 安装及基本使用可参考:https://www.cnblogs.com/dadonggg/p/8205302.html 二 线上环境规划 JVM参数设置 kafka是scala语言开发,运行在JVM上,需要对JVM参数合理设置,参看JVM调优专题 修改bin/kafka-start-server.sh中的jvm设置,假设机器是32G内存,可以如下设置: export KAFKA_HEAP_OPTS="-Xmx16G -Xms16G -Xmn10G -XX:MetaspaceSize=256M -XX:+UseG1GC -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=16M" 这种大内存的情况一般...阅读全文
Debian 和 Ubuntu 是有史以来最具有影响力的两大 Linux 发行版。在大约285个活跃发行版当中,有132个源自Debian (也包括Ubuntu本身),另有67个直接源自Ubuntu。不过在Ubuntu和Debian之间作一个选择并非易事。说到底,选择Ubuntu还是选择Debian用来制定业务战略,取决于你在平台支持、用户控制级别、易用性及另外一些关键问题方面的使用偏好。 如果要求你解释一下 Debian和Ubuntu 之间的区别,大多数会这样回答:Ubuntu是面向新手的发行版,而Debian是面向专家的发行版。这样的描述部分正确,但同时夸大其辞。Debian的声誉建立在10多年前的状态;如今,允许每个用户可以选择众多的实际控制特性。 同样,从设计概念来看,Ubuntu...阅读全文
某些asset。 推出政策本身可能会发生变化——无论是有机的还是由于外部约束。比如,关键问题可能需要快速推出才能部署某个缓解措施。在这些情况下,Target Selection的无状态化就很有用。由于Target Selection只关心更新和未更新的内容,因此它可以处理动态环境。 Update 一旦选中了需要更新的asset,Enforcer将驱动实际生产环境的变更。有两种基本方法来驱动变更: 基于actuation的更新小心地推送intent。intent表示所有asset的最终预期状态。更新步骤触发选中的asset的执行,而其他asset不会被执行。基于intent的更新小心的改变intent。intent表示递增的预期状态。更新步骤为选中的asset更新SoT;所有asset会在后台...阅读全文
Password:r@@t00 以 root 身份登录: Username:root Password:r@@t00 如果需要使用 Sudo 命令或 su 转到 root 身份,密码同样为:r@@t00 要更改用户 Kodachi 和 root 的密码,可以使用以下命令: passwd # changes Kodachi password su passwd # changes root password exit 想要运行 Windows 可执行文件 exe,你需要安装 wine 命令如下: sudo apt-get install wine-bin:i386 如果你想在外部屏幕上显示,你必须确保在引导过程之前,连接 VGA 或 HDMI 电缆时启动 Kodachi,如果在这个过程中仍然遇到一些问题,你可以...阅读全文
前言 Kubernetes 中大量用到了证书, 比如 ca证书、以及 kubelet、apiserver、proxy、etcd等组件,还有 kubeconfig 文件。 如果证书过期,轻则无法登录 Kubernetes 集群,重则整个集群异常。 为了解决证书过期的问题,一般有以下几种方式: 大幅延长证书有效期,短则 10年,长则 100 年; 证书快过期是自动轮换,如 Rancher 的 K3s,RKE2 就采用这种方式; 增加证书过期的监控,便于提早发现证书过期问题并人工介入 本次主要介绍关于 Kubernetes 集群证书过期的监控,这里提供 3 种监控方案: 使用 Blackbox Exporter 通过 Probe 监控 Kubernetes apiserver 证书过期时间; 使...阅读全文
发过程中经常会用到。在进行分支切换的时候,我们需要清晰地知道目标分支的状态,并且保证工作副本中没有未提交的修改。切换分支时,我们也需要保证源分支和目标分支都在同一个版本库中,否则可能会出现一些问题。当然,SVN切换分支的优缺点也需要仔细考虑,从而更好地应用于实际开发工作中。...阅读全文
; 第二个问题是只能针对特定的 StateBackend 来使用,目前在做的 Generalized Incremental Checkpoint 实际上能够保证的是,它与 StateBackend 是无关的,从运行时的机制来保证了一个比较稳定、更小的 Checkpoint 间隔。 Unaligned Checkpoint 在 Flink 1.13 就已经发布了,在 1.14 版本主要是针对 bug 的修复和补充,针对 Generalized Incremental Checkpoint,目前社区还在做最后的冲刺,比较有希望在 1.14 中和大家见面。 [2] [2] Generalized Incremental Checkpoint 最终在 1.14 中没有完成。 四、性能与效率 1. 大规...阅读全文
对舍弃的原因加以说明。 @Override @Override被用在方法前,用来说明覆盖了父类中的方法。假如一个方法被@Override修饰,但实际上它并没有覆盖任何方法,则编译器会提示一个错误。 @Override并不是必须的,即覆盖父类方法时,也可以不在子类方法前面添加@Override。但是还是推荐使用@Override,因为这样做是有好处的,至少可以较少一些不必要的错误。如覆盖方法的方法名不对,并没有实现覆盖;或者有人修改了父类中的方法名,导致的子类中的覆盖失效,如果有@Override,编译器就会自动提示错误,从而避免了错误。 @SuppressWarnings 使用@SuppressWarnings能够是编译器对指定的方法放弃提示警告。如方法中引用了已经被舍弃...阅读全文
Spinnaker 是 Netflix 在2015年开源的一款持续交付平台,它继承了 Netflix 上一代集群和部署管理工具 Asgard:Web-based Cloud Management and Deployment的优点,同时根据公司业务以及技术的的发展抛弃了一些过时的设计:提高了持续交付系统的可复用性,提供了稳定可靠的API,提供了对基础设施和程序全局性的视图,配置、管理、运维都更简单,而且还完全兼容 Asgard,总之对于 Netflix 来说 Spinnaker 是更牛逼的持续交付平台。 在深入了解 Spinnaker 之前,先扯一扯 Netflix 的技术文化:这是一家全面拥抱云的公司,据报道数据中心完全部署在 AWS 上,是 AWS 的超级大客户。在上云后他们发现故障仍...阅读全文
。Debian计划并没有盈利组织支援,它的开发团队完全由来自世界各地的志愿者。Debian经常被认为是一个Linux发行版,但实际上Debian所涵盖的并不仅仅是Linux,还有GNU、FreeBSD等多种作业系统,因此Debian的官方称呼叫做“Debian通用操作系统”。 采用Linux核心的Debian GNU/Linux是后来很多Linux发行版的基础,Ubuntu正是其中最知名的一个发行版。Ubuntu的官方支持者是Canonical公司,六个月一次的Ubuntu新版本发布都是由Canonical负责,但大部分编码、分发、文档、翻译等工作都是由社区志愿者完成。 接下来,让我们进一步了解这两个项目的成员结构。 Debian的成员结构 Debian只有两种官方背景的成员角色:Debian开发者...阅读全文
中最常用的方法还是 context.Background、context.TODO,这两个方法都会返回预先初始化好的私有变量 background 和 todo。这两个私有变量都是通过 new(emptyCtx) 语句初始化的,它们是指向私有结构体 context.emptyCtx 的指针。 1 2 3 4 5 6 7 func Background() Context { return background } func TODO() Context { return todo } 通过下面代码可以看出 emptyCtx 就是 Context 的实现,只不过没有实际功能。 我们一般用 context.Background 作为根 context; 在不确定使用哪种 context 时用...阅读全文
硬件本身存在的问题,例如静默数据损坏。事实上,通过使用Btrfs我们发现了一些较为严重的硬件bug,这对Btrfs来说也是一个利好。 Linux.com:刚才我们聊了Facebook使用Linux的情况,我比较好奇您怎么看待和使用原生内核,毕竟大家都是根据实际生产环境的需求来fork一个内核的分支,鲜有人使用原生版本? Chris Mason:从Linux的角度来看,我们的主要目标是尽可能和原生内核保持一致——我们的目标是至少每年升级一次内核,我们还试图进一步缩短这个更新周期。我们有一个上游优先策略,在使用一个主线更新之前我们要先了解它。如果我们想添加一个特性到Linux内核中,我们首先会把它合并到内核的主线更新中。 Linux.com:那为什么还需要fork一个自己的版本? Chris...阅读全文
本文翻译自 Wasm Labs @ VMware OCTO 的 blog: WebAssembly: Docker without container,已获得授权这是 Wasm Labs 在 2022 年 12 月 15 日在冬季 Docker Community All Hands 7 的关于 Docker+WebAssembly 的演讲的文字版。作者:Asen Alexandrov,Wasm Labs 工程师文中的我们均指作者或 Wasm Labs。由于文章内容翔实、篇幅较长我们将分成上下两篇分享,上篇将注重在概念阐释,如 Wasm 是什么,Wasm 与 Docker 的关系是什么。下篇文章将更具实践性,将以 PHP 为例带领大家实践 Docker + Wasm。最近,Docker 宣...阅读全文
都跟质量保证(QA)的未来走向相似。传统意义上的 QA 正从关注测试转向关注工具。工程师写代码、单元测试和集成测试。测试在 CI 上运行,代码通过 CD pipeline 和 canary 转出(rollout)来生产。QA 团队正在缩小,但是构建工具的团队正在增长——测试框架、CI 环境和 CD pipeline 。QA 能力现在已经嵌入发展团队中了。经由 Microsoft 和 Amazon 等公司普及的SDET 模式是这个方向的第一步。2014 年,Microsoft 转向了联合工程(Combined Engineering)模式,将 SDET 和 SDE(软件开发工程师)合并成一个角色,软件工程师,负责产品代码、测试代码和工具代码。 你们有没有注意到 QA 起的作用似乎在悄然消失?跟...阅读全文
的初始连接和 stream 的 flow control window size。 Flow control 不可能被禁止掉。当 HTTP/2 连接建立起来之后,client 和 server 会交换 SETTINGS frames,用来设置 flow control window size。 Flow control 是 hop-by-hop,并不是 end-to-end 的,也就是我们可以用一个中间人来进行 flow control。 这里需要注意,HTTP/2 默认的 window size 是 64 KB,实际这个值太小了,在 TiKV 里面我们直接设置成 1 GB。 HPACK 在一个 HTTP 请求里面,我们通常在 header 上面携带很多该请求的元信息,用来描述要传输的资源以...阅读全文
、 多进程和异步非阻塞的请求处理方式、事件驱动模型等。通过这些理论知识,对于我们以后学习 Nginx 的源码有很大的帮助;也推荐大家多看看 Nginx 的源码,才能更好地领悟 Nginx 的设计思想。 本文转自开源中国,原文出自:架构师详解: Nginx架构...阅读全文
是静止的。(用于自动在线重塑Luminous的新功能。) RGW现在支持对象的数据压缩。 Civetweb版本已升级到1.8。 现在支持Swift静态网站API(前提支持S3)。 添加了S3 bucket生命周期API。注意目前只支持对象到期。 支持自定义搜索过滤器已添加到LDAP认证中实现。 对NFS版本3的支持已添加到RGW NFS网关。 RBD image快照的数量可配置最大值。 rbd Python API现在支持异步IO操作。 更多详情变化查看官网 版本说明。本文由Ceph中国社区-Devin翻译,英文出处:官网release-notes...阅读全文
。在机器学习模型中,以分布式、可扩展的方式提供服务的能力成为保证其应用有效性的关键。 要解决分布式云环境中的这些扩展性问题非常困难。在确保容错、高可用性和应用健康的同时, MLOps 工程师要配置多个节点和推理服务之间的交互。 本文中,我将讨论 Kubernetes 和 Kubeflow 如何能够满足 TensorFlow 的机器学习模型的这些扩展性需求。通过一些实际的例子,我将向你介绍如何在 Kubernetes 上使用 Kubeflow 扩展机器学习模型。 首先,我将讨论如何使用 TensorFlow training jobs(TensorFlow 训练作业,TFJobs)抽象,通过 Kubeflow 在 Kubernetes 上协调 TensorFlow 模型的分布式训练。然后,我将介...阅读全文
给了你更多的控制,但这种便利是有成本的。 像 Studio 3T 这样的工具使构建准确的 MongoDB 聚合查询变得更容易。它的聚合编辑器特性使你可以一次对一个阶段应用管道操作符,你可以在每个阶段验证输入和输出,更便于调试。 使用快速写 永远不要把 MongoDB 设为低稳定性的高速写。看上去,“file-and-forget”模式使得写入速度变快了,因为命令在实际写入任何东西前就返回了。如果系统在数据写入磁盘之前崩溃了,就会丢失,存在出现不一致状态的风险。所幸,64 位的 MongoDB 启用了“日志(Journaling)”。 MMAPv1 和 WiredTiger 存储引擎都使用日志预防上述情况,不过,在日志关闭的情况下,WiredTiger 也可以在还原过程中恢复到最后一致的 检查...阅读全文
些代表有权力在考虑技术标准和共识的情况下做出他们认为最佳的决定。 至于 Debian 社区的项目层面,DPL 更是无权过问,每个项目的开发者都对项目有百分百的决定权。比如,个别开发者几乎可以完全控制他们维护的软件包;开发人员之间的技术分歧很大的时候,将由项目技术委员会处理;发布管理者与 FTP 主人有权最终决定项目实际发布的内容,以及何时发布;项目秘书负责确保遵循必要的程序;政策团队处理项目的大部分总体设计。 其次,DPL 是可以随时进行更换的,因为有一般决议(General Resolution)这样的通道,开发者们可以重新选举另外的 DPL、撤销 DPL 或代表的决定、修改基本文件并做出其他有约束力的决定。(如下图所示) 那么,DPL 到底是干什么的呢?主要分为两个方面: 在对外职能中...阅读全文
前言 Git是目前非常流行的协同开发工具,很多开源网站都使用Git作为代码管理仓库(例如 开源中国,GitHub),不管是开发还是产品、设计师,Git都很适合,而且很多IDE默认集成了Git,熟练的使用Git会起到事半功倍的效果,所以今天我为大家分享一下Git的介绍与使用。 1.Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一)。 1.1什么是版本控制? 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。如果你是位网页设计师,可能会需要保存某一幅图片或页面布局文件的所有修订版本。 有了它你就可以将某个文件回溯到之前的状态,甚至将整个项目都回退到过去某个时间点的状态,你也可以比较文件的变化细节,查出最后是谁修改了哪个地方,从而找出导致怪异问题...阅读全文
Redis的一些开发规范和建议: 1.冷热数据分离,不要将所有数据全部都放到Redis中 虽然Redis支持持久化,但是Redis的数据存储全部都是在内存中的,成本昂贵。建议根据业务只将高频热数据存储到Redis中【QPS大于5000】,对于低频冷数据可以使用MySQL/ElasticSearch/MongoDB等基于磁盘的存储方式,不仅节省内存成本,而且数据量小在操作时速度更快、效率更高! 2.不同的业务数据要分开存储 不要将不相关的业务数据都放到一个Redis实例中,建议新业务申请新的单独实例。因为Redis为单线程处理,独立存储会减少不同业务相互操作的影响,提高请求响应速度;同时也避免单个实例内存数据量膨胀过大,在出现异常情况时可以更快恢复服务! 在实际的使用过程中,redis最大的瓶颈一般是...阅读全文
在前一篇文章中,我们介绍了 Debian Stretch 环境下,Kubernetes 集群安装的准备工作。本文我们将继续介绍 k8s集群 的安装配置工作。 第4步 - 设置主节点 在本节中,您将设置主节点。 但是,在创建任何Playbooks之前,值得介绍一些概念,例如Pod和Pod网络插件 ,因为您的群集将同时包含这两个概念。 pod是运行一个或多个容器的原子单元。 这些容器共享资源,例如文件卷和网络接口。 Pod是Kubernetes中的基本调度单元:pod中的所有容器都保证在调度pod的同一节点上运行。 每个pod都有自己的IP地址,一个节点上的pod应该能够使用pod的IP访问另一个节点上的pod。 单个节点上的容器可以通过本地接口轻松进行通信。 然而,pod之间的通信更复杂,并...阅读全文