Systemd 及 Service 文件含义解析
/etc/systemd/system/ 目录中的单元文件的优先级总是高于 /usr/lib/systemd/system/ 目录中的同名单元文件。注意,当/usr/lib/ 中的单元文件因软件包升级变更时,/etc/ 中自定义的单元文件不会同步更新。此外,你还得执行 systemctl reenable
/etc/systemd/system/ 目录中的单元文件的优先级总是高于 /usr/lib/systemd/system/ 目录中的同名单元文件。注意,当/usr/lib/ 中的单元文件因软件包升级变更时,/etc/ 中自定义的单元文件不会同步更新。此外,你还得执行 systemctl reenable
年7月 更是登顶全球交易所交易量排名榜首,成为全球产品布局最广泛的管理平台之一。与此同时,[CoinEx](http://cet.im) 已经是一个提供币币交易、杠杆交易、永续合约等多元化衍生品交易服务,支持中/英/日/韩/俄等多国语言,为全球超过一百个国家和地区提供安全、稳定、可信赖的数字资产交易服务。 在当前的大环境下,CET飙涨一路绿灯,CET及其背后的全球数字货币交易平台CoinEx走进了更多人的视线中;同样受到关注的,还有 CoinEx 即将推出的全新支持智能合约的智能链 [CoinEx Smart Chain(CSC)](https://www.coinex.org/)。市场利好条件虽说是推动 CET 币价的因素之一,但更加关键的还是CoinEx这股厚积薄发的力量。 下面就详细为...阅读全文
将逐渐减少参与 Debian 的维护和相关活动,并解释这样做的原因。Stapelberg 表示他在 Debian 上投入了十年以上的时间,但在此过程中,Stapelberg 也逐渐发现并认识到了 Debian 在许多方面的不足。他发现 Debian 整个开发评估流程都非常迟钝。举例来说,补丁的评估没有截至日期,有时候他会收到通知说几年前递交的补丁现在合并了。而且 Debian 的一些维护者出于个人喜好拒绝合作,维护者给予的个人自由度太高对 Debian 构成了严重影响。Debian bug 跟踪器 debbugs 源自 1994 年,只有 Debian 和 GNU 项目使用。Stapelberg 抱怨了 Debian 糟糕的开发流程,对此感到十分不满,为此,他撰写了长文,并希望自己的文章能激...阅读全文
slice 的扩容条件是 len,在最新的代码中,已经改为了以 cap 属性作为基准: // src/runtime/slice.go if cap > doublecap { newcap = cap } else { // 这是以前的代码:if old.len < 1024 { // 下面是 Go1.16rc1 的代码 if old.cap < 1024 { newcap = doublecap } 以官方的 test case 为例: func main() { const N = 1024 var a [N]int x := cap(append(a[:N-1:N], 9, 9)) y := cap(append(a[:N:N], 9)) println(cap(x), cap(y...阅读全文
发行价定为 77 美元,首日交易结束后,收盘价为 103.89 美元,上涨 35%,其市值在收盘时已接近 150 亿美元。 GitLab 提供了免费和付费的版本,主要通过其订阅产品盈利。根据 GitLab 最新的订阅价格,付费购买有两个方案,分别... 24 4 微软推送 Windows 11 更新,修复 AMD CPU 性能问题 微软已于近日在 Beta 和 Release Preview Channels 中面向 Windows Insiders 发布了 Windows 11 Build 22000.282。此次更新包含了大量的修复程序,其中一项就是针对此前提到的 Windows 11 导致某些 AMD 芯片性能下降问题的修复。 AMD 和微软都曾确认,兼容的 AMD 处理器在运行...阅读全文
有一个网络接口,可以不带选项运行 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 在我那可...阅读全文
经筹集了大量资金,它们将面临获得这些投资回报的压力。”Wrabetz提到。她认为这种整合在DevOps工具市场上是非常需要的。 进一步容器化 2016年,我们见证了大规模容器化,但是Morpheus数据公司技术运营总监兼系统架构师Greg Willis认为,由于工具变得更加稳定,且容器生态在编排工具的作用下更加巩固,我们将会见到进一步容器化。他说,“正如虚拟化技术让企业适应从物理机向虚拟机的转变,我们将会看见企业更多的将工作负载运行在诸如AWS ECS、Kubernetes、DCOS、Docker数据中心等平台上。” 统一开发、安全和运维 如果说2016年是运维安全的崛起,尤其是Docker对安全的更新,那么2017年我们将见到开发、安全和运维的统一。CA Technologies公司...阅读全文
Google 开发的这个容器管理系统很快成为开源历史上最成功的案例之一。Kubernetes 是一个在过去几年中快速流行起来的开源容器管理平台。它被众多大企业用于关键任务,已成为开源方面最成功的案例之一。这是怎么发生的?该如何解释 Kubernetes 的广泛流行呢? Kubernetes 的背景:起源于 Google 的 Borg 系统 随着计算世界变得更加分布式、更加基于网络、以及更多的云计算,我们看到了单个大型的应用慢慢地转化为多个敏捷微服务。这些微服务能让用户单独缩放应用程序的关键功能,以处理数百万客户。除此之外,我们还看到像 Docker 这样的容器等技术出现在企业中,为用户快速构建这些微服务创造了一致的、可移植的、便捷的方式。 随着 Docker 继续蓬勃发展,管理这些微服务器...阅读全文
apt-get install git 现在,我们切换到 /opt 目录,并从 Github 上克隆仓库: cd /opt git clone https://github.com/axboe/fio 现在,我们通过在 /opt 目录下切换到 Fio 的源代码目录,执行编译和安装操作了,命令如下: # cd /opt/fio # ./configure # make # make install 使用 Fio 进行磁盘性能测试 现在 Fio 已经安装到了你的系统中,我们一起看看如何使用 Fio 做磁盘的随机写、读和读写测试。 随机写测试 执行下面的命令来开始。这个命令将要同一时间执行两个进程,写入共计 4GB( 4 个任务 x 512MB = 2GB) 文件: sudo fio --name...阅读全文
于断言的语法。 缺点: 多数情况下,它需要一个测试运行器(如 Karma )。 难以异步测试。 如果你正在寻找一个统一的(客户端 - 服务器)单元测试解决方案,Jasmin 可能会非常适合。 7. Mocha Mocha 是一个 JavaScript 单元测试框架,它在 NodeJs 上运行测试,主要与 ReactJS 配对使用。 优点: 内置测试运行器。 支持异步测试。 使用灵活,可使用任何符合需求的断言库(Chai、expect.js、Must.js 等)作为 Node 标准“断言” 功能的替代品。 缺点: 相对较新 (起始于 2012 年),意味着有许多的未知性和可变性,在某些方面或缺乏用户基础和支持。 仅提供基本的测试结构,因此需要额外的设置和配置(对于一些可能是有利的)。 如果你正...阅读全文
1.4.3版本。 执行./make.bash。 一般教程(比如本文前面首次编译错误小节)是用./all.bash,其实没必要。./all.bash是编译并测试,而./make.bash只是编译。前者大约5分钟,后者大约2分钟。对我们这种Go语言的使用者而非开发者来说,显然后者就够了。 进入GOROOT目录,执行./make.bash。 结束后,可以检查版本。 $ go version go version devel +f8187ce Mon Nov 7 02:55:52 2016 +0000 linux/amd64 咦?怎么版本怪怪的! 这是因为master的HEAD,通常是一个开发中的提交,是最新不稳定版本。 如果想要稳定版怎么办? 和编译1.4.3版本类似,checkout过去再编译。比如,我...阅读全文
我们登陆远程服务器后,常常需要下载、或者上传一些文件,我们常用的 lrzsz 对 tmux 支持不够友好,于是就有了 trzsz 这个新工具,它安装简单,使用方便,功能全面,小巧灵活,GitHub项目地址: https://github.com/trzsz/trzsz为什么需要 trzs 这个“轮子”?考虑 laptop -> hostA -> hostB -> docker -> tmux 这种场景,使用 scp 或 sftp 是不方便的。在这种场景下,使用 lrzsz ( rz / sz ) 是很方便的,但是很可惜它与 tmux 不兼容。 tmux 不愿意支持 rz / sz ( 906, 1439 ),而重新造一个工具比修改 tmux 简单很多。trzsz 安装指南在远程服务器上安装...阅读全文
Dubbo 2.7.0 发布。Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成。 据开源中国对 Dubbo 的项目负责人北纬的采访 Dubbo 重启维护一年多,现在还活着吗?,新版本的更新亮点有: Dubbo 2.7.0 添加了社区呼声很高的 异步化支持 、以及 注册中心与配置中心分离 这两个特性。与 2.6 及以前的版本相比, 异步化支持 不再局限于基于 Future 接口的异步,也不再仅仅局限于只能在客户端异步。具体来说,Dubbo 2.7.0 版本全面拥抱 JDK8,在客户端开始支持基于 CompletableFuture 的异步编程范式,在服务端支持基于 AsyncContext...阅读全文
布。这种分离带来了挑战,包括维护向下兼容性。 由于工具和部署选项的性质,移动持续部署面临着一些特定的挑战。Web 部署则更为容易,因为 Facebook 拥有完整的技术栈和工具。为了解决这些挑战,Facebook 已经构建了一些专注于更快的移动开发的工具和库,包括 Buck 、Phabricator、 Infer、 React 以及 Nuclide 。Facebook 的移动部署是以三层来并发运行。 • 构建:合并到移动主分支上的所有代码都会进行构建,这会针对受影响的所有产品(Instagram、Messenger)并且会跨各种芯片架构。 • 静态代码分析:Linters 和静态分析工具的组合,称为 Infer ,用于检查各种问题,包括资源泄漏、未使用的变量、有风险的系统调用和编码准则违规...阅读全文
。 依赖 RMI-IIOP、javax.activity 包或 CORBA API 的 CORBA 应用程序将无法通过编译或运行。 红帽首席软件工程师 Aleksey Shipilëv 最近发推文说,由于 JAXB 模块被 JEP-320 移除,因此 SPECjbb2015 基准测试在 Java 10+上出现了问题。建议加入 JAXB 依赖来解决该问题: javax.xml.bind jaxb-api 2.3.0 新的 Java SE 版本发布周期 随着 JDK 10 发布六个月之后,JDK 11 计划于 2018 年 9 月发布,新的 Java 发布 版本周期 已经全面铺开。开发人员可能已经习惯于多年一次的 Java 新版本发布,可能由于新版本节奏发生变化,感觉受到轻微的冲击。 Java 社区...阅读全文
索引所需的整体空间使用率,同时提高了整体查询性能。 PostgreSQL 13 引入了增量排序,即在查询中较早步骤的排序数据可以加速后面步骤的排序。此外,PostgreSQL 现在可以使用扩展的统计信息(可通过CREATE STATISTICS访问)来为带有OR子句和IN/ ANY查找列表的查询创建改进的计划。 在 PostgreSQL 13 中,更多类型的聚合查询和分组查询可以利用 PostgreSQL 的高效哈希聚合功能,因为具有大型聚合的查询不必完全放入内存。对分区表的查询也得到了性能提升,因为现在有更多的情况下可以修剪分区和直接联接分区。 优化管理 清理(Vacuuming)是 PostgreSQL 管理的一个重要部分,使数据库在更新和删除行后能够回收存储空间。此过程也会带来管理上的...阅读全文
/proc/sys/net/core/rmem_max 131071 131071:tcp 或 udp 接收缓冲区最大可设置值的一半。 也就是说调用 setsockopt(s, SOL_SOCKET, SO_RCVBUF, &rcv_size, &optlen); 时rcv_size 如果超过 131071,那么 getsockopt(s, SOL_SOCKET, SO_RCVBUF, &rcv_size, &optlen); 去到的值就等于 131071 * 2 = 262142 [root@ www.linuxidc.com]# cat /proc/sys/net/core/wmem_max 131071 131071:tcp 或 udp 发送缓冲区最大可设置值得一半。 跟上面同一个道理 3...阅读全文
://mail.openjdk.java.net/pipermail/amber-spec-experts/2019-January/000931.html 你最想要的 JDK 特性是什么?在下面留言和大家分享吧!~...阅读全文
热线、在线聊天支持。作为全球云服务的龙头企业,亚马逊云计算拥有最广泛的全球云计算基础设施,全球节点丰富,为网站的快速稳定访问提供基础设施保障。配合亚马逊全球CDN节点,能满足不同国家独立站访问速度需求。1.什么是云服务器?云计算服务器(也称云服务器或云主机)是云计算服务系统中的主机产品,有效解决了传统物理主机中管理难度大、业务扩展性弱的缺陷。在实际应用中,云主机具有三个方面的灵活性:主机服务配置和业务规模可根据用户需求配置,可灵活调整。用户申请的主机服务可以快速供应和部署(实时在线开通),实现集群内灵活可扩展的收费模式,用户无需支付押金,有多种支付模式供用户选择。2.云服务器适合什么样的用户?关注主机服务性价比的用户;需要快速实现分布式部署的用户;需要灵活扩展业务的用户;对系统高可用性和快速...阅读全文
伦堡的 SUSE 办公室。 而在2012年2月1日,Linux基金会官方发文正式宣称GKH加入。 https://www.linuxfoundation.org/press-release/2012/02/leading-kernel-maintainer-greg-kroah-hartman-joins-the-linux-foundation/ Linux基金会的执行董事Jim Zemlin对GKH更是赞不绝口,“Greg是这个世界上最具天赋的软件开发者之一,他将会对Linux的发展提供无与伦比的贡献。”,并表明GKH的工作将会聚焦于Linux内核方面。 会员类别与年费 Linux基金会的会员分为企业会员和个人会员,而企业会员又分为白金会员、黄金会员和白银会员三种。 会员类别企业/个人会...阅读全文
(canary)和分阶段(phased)推出部署(rollout);本地持久卷(Local Persistent Volume)。当前以Alpha版发布,允许用户通过标准的PersistentVolumeClaims/PersistentVolume接口及StatefulSets中的StorageClasses访问本地存储卷;DaemonSets。该特性用于确保给定的Pod对每个节点准确地执行和运行一次,现已添加了rollback和history功能;新提供的StorageOS Volume插件,它可在本地的或附加的节点存储上提供在整个集群范围内高可用的持久卷。 在可扩展性方面,1.7中以Beta版的形式添加了API聚合层,允许用户在他们的集群中添加Kubernetes风格的预先构建的、用户定义的或是第...阅读全文
: systemctl restart php7.2-fpm 更多日常的操作: systemctl restart php7.2-fpm #重启 systemctl start php7.2-fpm #启动 systemctl stop php7.2-fpm #关闭 systemctl status php7.2-fpm #检查状态 安装更多组件 上面的一条命令安装 PHP 只是安装了部分 PHP 拓展,更多的软件可见: root@debian.cn-service:~# apt-cache search php7.2 php-radius - radius client library for PHP php-http - PECL HTTP module for PHP Extended HTTP...阅读全文
发现,Calico 项目实际上将集群里的所有节点,都当作是边界路由器来处理,它们一起组成了一个全连通的网络,互相之间通过 BGP 协议交换路由规则。这些节点,我们称为 BGP Peer。而 Flannel host-gw 和 Calico 的唯一不一样的地方就是当数据包下一跳到达node2节点容器时发生变化,并且出数据包也发生变化,知道它是从veth的设备流出,容器里面的数据包到达宿主机上,这个数据包到达node2之后,它又根据一个特殊的路由规则,这个会记录目的通信地址的cni网络,然后通过cali设备进去容器,这个就跟网线一样,数据包通过这个网线发到容器中,这也是一个二层的网络互通才能实现。Route Reflector 模式(RR)(路由反射)设置方法请参考官方链接 https...阅读全文
堆问题,专家们更喜欢有针对性的提问。 认真地思考,准备好你的问题。草率的提问只能得到草率的回答,甚至得不到回答。在提问时,你越是表现出在此前做过思考与努力去解决自己的问题,你越有可能得到真正的帮助。 注意别提问错误的问题。如果提问基于错误的假设,某黑客多半会一边想「这真是一个愚蠢的问题」,一边按将错就错地敷衍你,并且希望这个结果能够给你一个教训:如果提问的方式不对,你就得不到正确的答案。 永远不要假设你有资格得到解答。你没有这种资格,毕竟你没有为此服务付费。如果你能够提出有内容、有趣和激励思考的问题,你将通过自己的努力「挣到」答案,因为这种提问能够向社区贡献经验,而不仅仅是消极无止境地索取。 另一方面,展现你的能力,并且表明你乐意参与解决问题,这是个很好的开始。「有没有人能指个方向?」,「我...阅读全文
-agent/gatekeeper欢迎长按下面的二维码关注 漫谈云原生 公众号,了解更多云原生知识。...阅读全文
(SSL)的进化版本,SSL是由Netscape公司在1990年代研发的。国际互联网工程任务组(IETF)做为一个标准化组织,负责定义该协议,该协议已经历了多次修订。最新版本 TLS1.2 在 2008 年被确立为标准,目前被大多数浏览器和启用 HTTPS 的 web 服务所支持。 在配置正常的情况下,TLS 1.2 会很安全,但如今它却显得有些过时了。在过去几年中,几次引人注目的攻击暴露出该协议的一些漏洞。在计算机安全领域,8年是一段很长的时间,因此 IETF 已经在着手开发该协议的新版本 TLS 1.3。TLS1.3 是一次全面升级,与此前版本相比,它有两个主要优势: 增强安全性 提升速度 增强安全性 过去几年来,大部分针对TLS的攻击都是以该协议90年代遗留下来的残余部分为目标的...阅读全文
(translation layer)转换为 WSL 2 中的虚拟化内核,因此重新实现利用 Linux ABI 的数十种非标准方式是非常痛苦的事情。为微软拥有的 Linux 上的SQL Server 提供一个 NT 相关的兼容层是一回事,为其他数百万开发者的应用提供保证是另一回事。 3.微软投入巨大 近年来,微软在 Windows 上倾注的人力物力已经无法计算。微软在 Windows 10 的可用性、新功能、性能改进等多方面进行了优化投资,并取得了回报。在这些改进的基础上,通过和 OEM 厂商的合作,以及推出 Surface 品牌,已经帮助振兴了 PC 市场。 微软一直在努力使 Windows 成为一个优秀的开发平台,其项目包括 Windows Terminal、PowerToys、Windows...阅读全文
了答案。 从单机到分布式,是追求更快和更高的性能,但也带来了更多的不确定性。比如,不确定计算机何时异常,不确定磁盘何时损坏,不确定网络通信的延迟,也不确定消息是否被正常消费。这些不确定性构成了分布式应用的挑战,简而言之: 异构的机器与网络:稳定性问题普遍的节点故障:可靠性问题不可靠的网络:一致性问题 面对这些挑战,业界提出了诸多的分布式理论、协议,如CAP定理,BASE理论,一致性协议2PC/3PC/ZAB,来保证系统的正常运行。虽然问题貌似是有了解决方案,但是应用的复杂度升高了。应用除了需要实现业务需求,还要兼顾非业务需求,集成诸如服务发现、负载均衡、失效转移、动态扩容、数据分片、调用链路监控等分布式系统的核心功能,对应用有很强的侵入性,这就是以Spring Cloud为代表的微服务框架的...阅读全文
}kl.imageManager.GarbageCollect上面已经分析了容器回收的主要流程,下面会继续分析镜像回收的流程,kl.imageManager.GarbageCollect 是镜像回收任务启动的方法,镜像回收流程是在 imageManager 中进行的,首先了解下 imageManager 的初始化,imageManager 也是在 NewMainKubelet 方法中进行初始化的。k8s.io/kubernetes/pkg/kubelet/kubelet.gofunc NewMainKubelet(){ ...... // 初始化时需要指定三个参数,三个参数已经在上文中提到过 imageGCPolicy := images.ImageGCPolicy{ MinAge...阅读全文
服务化项目服务不可用几十分钟,造成订单数减少几十万笔,损失百万资金。 原因分析 当时是没有定位到具体的原因的,但是下面的原因也是一部分可能引起宕机的情况。 某服务化项目的业务增速非常快,在高峰期,数据库QPS突破35000,系统处于高负荷状态。 在高峰期如果同时执行几个全表扫描的SQL,会造成数据库压力急剧上升,应用超时增多,前端应用超时,用户重试,流量飙升,形成了雪崩效应。 主要原因在与一些老项目的SQL查询性能较差,并且使用的主库,对数据库影响较大。数据库QPS太高,但是缓存方案因为人手原因一直没有落地,慢SQL的问题处理优先级应该提升。 改进方案 针对每个应用建一个数据库账号,严格按照规范使用 缓存优化方案即时落地,慢SQL问题优先处理,集中处理目前已经发现的慢SQL(查询时间超过1S...阅读全文
API 中的一种特殊的 ephemeralcontainers 处理器进行创建的,而不是直接添加到 pod.spec 段,因此无法使用 kubectl edit 来添加一个临时容器。 与常规容器一样,将临时容器添加到 Pod 后,将不能更改或删除临时容器。 为什么我们需要Ephemeral 容器? 我们知道容器的优点是它们通过使用不变方法提供所有必需的依赖项来运行隔离的进程。通过仅将所需的依赖项添加到镜像中,容器可以降低攻击面并提供更快的启动和部署。使用“distroless”方法构建容器镜像(基于scratch),通过仅包含已编译的应用程序二进制文件,将容器镜像提升到了一个新的水平。与普通的容器镜像不同,它们不基于任何种类的Linux发行版,因此不包含任何其他可通过kubectl exec执行...阅读全文
消息发送端: 发送消息如果配置了重试机制,比如网络抖动时间过长导致发送端发送超时,实际broker可能已经接收到消息,但发送方会重新发送消息 消息消费端: 如果消费这边配置的是自动提交,刚拉取了一批数据处理了一部分,但还没来得及提交,服务挂了,下次重启又会拉取相同的一批数据重复处理 一般消费端都是要做消费幂等处理的,比如每条消息使用redis的setnx分布式锁,把消息放redis里,这样两次消息一样的话,第二次的消息是放不进去的。 2.1.3 消息乱序 如果发送端配置了重试机制,kafka不会等之前那条消息完全发送成功才去发送下一条消息,这样可能会出现,发送了1,2,3条消息,第一条超时了,后面两条发送成功,再重试发送第1条消息,这时消息在broker端的顺序就是2,3,1了 所以,是否一...阅读全文
Williams 却坚持认为取代 live-build 很有必要。Learmonth 给 live-build-ng 换了一个争议性也许小一些的名字: live-wrapper 。他说他的目标是为 Debian Live 项目加入新的工具(并且「把 Debian Live 项目引入 Debian 里面」),但是完成这件事还需要很大的努力。 我向已经被 ITP 问题所困扰的每个人道歉。我们已经告知大家 live-wrapper 还不足以完全替代 live-build 且开发工作仍在进行以收集反馈。尽管有了这部分的工作,我们收到的反馈缺并不是我们所需要的。 这种对于取代 live-build 的强烈反对或许已经被预知到了。自由软件社区的沟通和交流很关键,所以,计划去替换一个项目的核心很容易引起争议——更何况是...阅读全文
文件是必须要做的,但关闭通道不是必须的。关闭后的通道有以下特点:对一个关闭的通道再发送值就会导致panic。对一个关闭的通道进行接收会一直获取值直到通道为空。对一个关闭的并且没有值的通道执行接收操作会得到对应类型的零值。关闭一个已经关闭的通道会导致panic。channel的种类不带缓存的channel一个基于无缓存Channels的发送操作将导致发送者goroutine阻塞,直到另一个goroutine在相同的Channels上执行接收操作,当发送的值通过Channels成功传输之后,两个goroutine可以继续执行后面的语句。反之,如果接收操作先发生,那么接收者goroutine也将阻塞,直到有另一个goroutine在相同的Channels上执行发送操作。基于无缓存Channels的...阅读全文
Spinnaker 是 Netflix 在2015年开源的一款持续交付平台,它继承了 Netflix 上一代集群和部署管理工具 Asgard:Web-based Cloud Management and Deployment的优点,同时根据公司业务以及技术的的发展抛弃了一些过时的设计:提高了持续交付系统的可复用性,提供了稳定可靠的API,提供了对基础设施和程序全局性的视图,配置、管理、运维都更简单,而且还完全兼容 Asgard,总之对于 Netflix 来说 Spinnaker 是更牛逼的持续交付平台。 在深入了解 Spinnaker 之前,先扯一扯 Netflix 的技术文化:这是一家全面拥抱云的公司,据报道数据中心完全部署在 AWS 上,是 AWS 的超级大客户。在上云后他们发现故障仍...阅读全文
=nobody TCP4:目标地址:目标端口号 >> /var/log/socat.log 2>&1 &nohup /usr/bin/socat -d -T 60 UDP4-LISTEN:本机端口号,reuseaddr,fork,su=nobody UDP4:目标地址:目标端口号 >> /var/log/socat.log 2>&1 &上面两条命令可在 root 用户下执行。 目标机的设置此处示例的目标机为 Debian & Ubuntu 系统,安装并启用了 UFW:如需同时允许 TCP 和 UDP 入站:1sudo ufw allow from 中转机地址 to any port 端口号如需只允许 TCP 入站:1sudo ufw allow proto tcp from 中转机地址 to any...阅读全文
昨天,Apache Kafka 3.0 版本正式发布,这是一个涉及多方面的大版本。在这个版本中,Apache Kafka 3.0 引入了各种新功能、突破性的 API 更改以及对 KRaft 的改进:Apache Kafka 的内置共识机制将取代 Apache ZooKeeper™。虽然 KRaft 尚未被推荐用于生产(已知差距列表),但我们对 KRaft 元数据和 API 进行了许多改进。Exactly-once 和分区重新分配支持值得强调,我们鼓励开发者查看 KRaft 的新功能并在开发环境中试用它。并且,从 Apache Kafka 3.0 开始,生产者默认启用最强的交付保证 ( acks=all, enable.idempotence=true),这意味着用户现在默认获得排序和持久性...阅读全文
MongoDB 是一个多租户系统,它会尽可能地占用内存,因此最好是安装在服务器上,最大限度地提供内存,即使是开发工作。在服务器上使用默认端口安装而不启用身份验证是在自找麻烦,尤其是可以在查询中运行任意 JavaScript 时(例如把$where 作为注入攻击的载体)。 身份验证方法有多种,但是用户 ID/密码凭证最容易安装和管理。当你考虑 基于 LDAP 的身份验证 时,可以采用那个方法。在我们谈论安全时,MongoDB 必须保持最新,而且,在日志里查找未授权访问的迹象总是值得的。我不喜欢使用默认端口。 忘记限制 MongoDB 的攻击面 MongoDB 的 安全检查清单 为降低网络渗透和数据泄露风险提供了很好的建议。我们很容易会认为,开发服务器不需要高等级的安全。不是这样的:安全对于所有...阅读全文
kubernetes,可以用于决定是否调度 pod 到某个节点,从而确保每个容器中的应用都有足够的可用资源。 cgroup 主要功能包括: 资源限制:限制一组进程的可用资源阈值。 资源监控:监控 cgroup 级别的资源使用状态。 进程控制:控制(挂起 or 恢复)cgroup 中的所有进程。 优先级控制:控制不同 cgroup 的优先级,当资源不足时,优先满足优先级高的 cgroup。 cgroup 模式 目前,cgroups 有两个版本,cgroup V1 和 cgroup V2。V1 功能相对零散,不方便维护,V2 是未来的演进方向。在这种情况下,节点存在以下面 3 种 cgroups 模式: legacy:只支持 cgroup V1 hybrid:同时支持 cgroup V1 和 cgroup V2...阅读全文
息不是在原始服务器上有效的确定集合,而是来自本地或者第三方的拷贝。当前的信息可能是原始版本的子集或者超集。例如,包含资源的元数据可能导致原始服务器知道元信息的超级。使用此状态码不是必须的,而且只有在响应不使用此状态码便会返回200 OK的情况下才是合适的。 204 服务器成功处理了请求,但不需要返回任何实体内容,并且希望返回更新了的元信息。响应可能通过实体头部的形式,返回新的或更新后的元信息。如果存在这些头部信息,则应当与所请求的变量相呼应。 如果客户端是浏览器的话,那么用户浏览器应保留发送了该请求的页面,而不产生任何文档视图上的变化,即使按照规范新的或更新后的元信息应当被应用到用户浏览器活动视图中的文档。 由于204响应被禁止包含任何消息体,因此它始终以消息头后的第一个空行结尾。 205...阅读全文