微软发布基于 Debian 的交换机操作系统
Interface (SAI) 来编写程序控制交换机的动作,开发者无需关心底层的硬件细节。而底层的硬件必须实现 SAI ,微软已经将 SAI 贡献给 OCP 组织。 这里有一篇博客详细的描述了 SONiC 系统。SONiC 系统基于 Debian Linux 构建,可通过微软的 Azure GitHub repo 获取到,该系统使用包括 GPL 和 Apache 在内的许可证。 via theregister...阅读全文
Interface (SAI) 来编写程序控制交换机的动作,开发者无需关心底层的硬件细节。而底层的硬件必须实现 SAI ,微软已经将 SAI 贡献给 OCP 组织。 这里有一篇博客详细的描述了 SONiC 系统。SONiC 系统基于 Debian Linux 构建,可通过微软的 Azure GitHub repo 获取到,该系统使用包括 GPL 和 Apache 在内的许可证。 via theregister...阅读全文
根据 Reddit C++ 版块上的信息,C++ 20 已经正式通过委员会草案,这意味着 C++ 20 可以准备发布。“在近期 ISO C++ 委员会会议上,我们完成了 C++ 20 委员会草案,并投票决定将国际标准草案(DIS,Draft International Standard)发送出去,以进行最终批准和发布”。 帖子介绍:“在程序上,DIS 可能会被拒绝,但是由于我们的程序和过程,这种情况极不可能发生。这意味着 C++ 20 已经完成,并将在几个月后发布该标准。” C++ 20 是近十年来影响最大的一个版本,新的特性众多,包括: 模组(Modules)协程(Coroutines)标准库 Concepts 的概念范围(range)constexpr支持:new/ delete...阅读全文
作为 Debian 10“Buster”系列发行版的第四个稳定更新,Debian 10.4 主要修复了安全性问题。维护团队希望已经用上 Debian 10 的设备能够尽快部署安全修复程序,更新过程很是简单。另有针对严重问题的一些调整,公告详情可移步至官网查看。 据悉,Debian 10.4 只是更新了 Debian 10 自带的某些软件包,所以大家不用急着扔掉旧版安装介质。安装完成后,再通过自动更新组件来获取即可。 新版中修复了 libssh 的一个特定安全漏洞,0.8.9 和 0.9.4 之前的 libssh 版本都受到影响。若未完全初始化连接、且系统尝试清理,则该漏洞可导致客户端或服务器完全崩溃。 此外,Debian 10.4 移除了一些软件包,比如因为 Hotmail...阅读全文
OpenJDK 14 已于近日 GA,其在性能方面是否有改进、以及有哪些改进引起了不少开发者的关注。本文将会介绍通过运行新的基准测试以考察从 OpenJDK 8 至 14 的所有主要发行版本,同时考察跨多个工作负载的 JVM 性能,以及 OpenJDK 14 与 JVM 先前版本相比性能如何。 此次测试通过在被测试的每个发行版上使用相同的 Java 字节码编译的 Java 程序来查看 JVM 的性能,并使用被测软件包的参考/上游编译版本。为了保证测试受干扰的因素将降至最低,每次都使用相同的选项,除了交换用于测试每个发行版的 OpenJDK x86_64 Linux 构建之外,没有进行任何其他更改。 通过使用 Phoronix 的测试套件,测试内容包含从 SPECjbb 到 Java 2D...阅读全文
-command,以便从损坏的数据库文件中恢复更多内容增强 RBU 扩展,以支持表达式索引更改架构解析器,因此如果 sqlite_master 表的类型、名称和 tbl_name 列中的任何列已损坏,并且数据库连接未处于 writable_schema 模式,它将出错现在默认情况下,所有版本中都启用 PRAGMA function_list,PRAGMA module_list 和 PRAGMA pragma_list 命令,可使用 -DSQLITE_OMIT_INTROSPECTION_PRAGMAS 禁用它们为 sqlite3_db_config() 添加 SQLITE_DBCONFIG_ENABLE_VIEW 选项添加了 TCL 接口配置方法,以便能够禁用...阅读全文
ARM V8 指令集授权给 APM、Cavium、AMD、高通、华为、国防科大、华芯通等诸多 IC 设计公司开发 ARM 服务器 CPU,APM 开发出了 ARM 服务器 CPU,采用该芯片的服务器已经在数据中心、互联网服务器等领域有了批量的应用。华为也开发了一款 32 核 A57 的服务器芯片,该项目为核高基项目,而且根据公开资料,下一步将在特殊领域得以推广。国防科大也开发了 FT2000,就 SPEC2006 测试成绩来看,FT2000 的多线程性能已经能与 Intel Xeon E5-2695v3 芯片相媲美。而面对咄咄逼人的 ARM 服务器 CPU,Intel 也专门开发了至强 D 系列低功耗服务器 CPU 来应对。 因此,在这种 ARM 与 X86 互相侵蚀对方传统优势领域的情况下,想...阅读全文
Kubernetes v1.16.0 已经发布,该版本由 31 个增强功能组成:8 个进入稳定,8 个进入 Beta,15 个进入 Alpha。 四大主题如下: Custom resources:CRD 是对 Kubernetes 的扩展,用以服务于新的资源类型,自 1.7 版本以来,CRD 已经在 Beta 版中可用。在 1.16 版本中,CRD 正式步入通用可用性(GA)Admission webhook:Admission webhooks 作为 Kubernetes 扩展机制被广泛使用,并且自 1.9 版本以来已经在 Beta 版中可用。在 1.16 版本中,Admission webhook 也正式步入通用可用性(GA)Overhauled metrics:Kubernetes...阅读全文
etcd数据库中。kube-scheduler通过api-server查看有哪些可用的pod。kube-scheduler通过一组算法过滤掉一部分不可用的pod或者node节点。kube-scheduler再通过更加严格的打分机制对所有的可用pod进行打分。通过打分选出分数最高的pod,并将pod进行绑定之后存储在etcd中。node节点的kubelet接收到api-server指令进行pod创建。 kube-scheduler的预选(过滤)规则 kube-scheduler首先通过以下规则对所有node节点或者pod进行初步的过滤。 kube-scheduler的优选(打分)规则 在经过重重过滤之后,剩下的都是K8S集群可用的pod和node节点。之后kube-scheduler会根据另一套规则...阅读全文
{ internal; default_type application/grpc; add_header grpc-status 14; add_header grpc-message "unavailable"; return 204; } } 其中upstream指定定义了统一gRPC服务的服务器组。在grpc_pass指定的gRPC服务器地址使用upstream定义的服务器组。...阅读全文
Linux 4.19 内核支持、修复 PHP Horde 的多项跨站点脚本问题,以及其他多项修复。 详情查看 https://www.debian.org/News/2020/20200801下载镜像站列表 https://www.debian.org/mirror/list...阅读全文
使用以下命令来实现。 $ systemctl enable chrony # [On SystemD] $ chkconfig --add chronyd # [On Init] 配置 Chrony Chrony 的默认配置文件为 /etc/chrony.conf,下面将介绍一些常用的配置项。 server hostname [option] server 指令用于指定要同步的 NTP 服务器。 server 0.centos.pool.ntp.org iburst 其中的 0.centos.pool.ntp.org 是 NTP 服务器的地址,默认有四组官方的 NTP 服务器。你也可以修改为自定义的时间服务器,例如:ntp1.aliyun.com。 iburst 是参数, 一般用此参数即可...阅读全文
样,比如说资本、技术、品牌、网络效应和做管理。 专注于将你所定义的成功指标增加十倍是有用的,这些指标可以是赚钱、社会地位、世界级影响力或者其他东西。我乐意接受挑战,愿意在各种项目上花时间以解锁下一个项目。但是我希望在每一个项目上都能取得最大成就,创造职业生涯新高度。 但是大多数人都被困于线性发展的泥潭,往往捡了芝麻丢了西瓜,我们要学会抓大放小,寻求跳跃式提升。 在我看来,无论是企业还是个人,最大的竞争优势就是要把目光放长远。我们要打开眼界,看出世界上不同体系之间交融互动的方式。复合增长最重要的就是眼光要尽可能放长远,这样的人才能抢占市场先机,获得最大回报。 要相信指数曲线,耐心坚持下去,最后一定会有惊喜。 2 要有绝对自信 自信拥有不可思议的力量,就我认识的人来说,最成功的往往都是那些自信到...阅读全文
述符递增一。这里之所以传最大描述符,为的就是在遍历fd_set的时候,限定遍历范围。 参数二:readfds,可读文件描述符集合。 参数三:writefds,可写文件描述符集合。 参数四:errorfds,异常文件描述符集合。 参数五:timeout,超时时间。在这段时间内没有检测到描述符被触发,则返回。 下面的宏处理,可以对fd_set集合(准确的说是bitmap,一个描述符有变更,则会在描述符对应的索引处置1)进行操作: FD_CLR(inr fd,fd_set* set) 用来清除描述词组set中相关fd 的位,即bitmap结构中索引值为fd的值置为0。 FD_ISSET(int fd,fd_set *set) 用来测试描述词组set中相关fd 的位是否为真,即bitmap结构中某一...阅读全文
1.新的问题influxdb目前支持内存型索引inmem及文件型索引tsi1。之前追踪篇将influxd索引修改为tsi1之后,经过一段时间的运行,从监控观察到,由于调用方采用异步队列+批处理的方案将数据写入influxdb,会在某些时刻调用方内部出现数据堆积,指标如图:横坐标: 时间轴,从12-29 00:00 到 12-30 00:00纵坐标: 队列中数据堆积长度,坐标最大值250k,即最大25w个数据堆积从上图可以看到,当天监控出现数次堆积,上午7:00-10:00尤为严重。在堆积时,登录influxdb服务器,查看机器状态如下:top - 09:40:58 up 120 days, 19:18, 1 user, load average: 32.29, 32.32, 29.82...阅读全文
Let’s Encrypt是一家得到Mozilla Firefox和Google Chrome支持的自动化证书颁发机构。今天该机构宣布了一项新措施,从而进一步保护用户免受网络攻击的侵害。这项新功能称之为多角度域验证(multi-perspective domain validation),可帮助证书颁发机构(CA)证明申请人对他们想要获得证书的域具有掌控权。 单角度域验证方式 多角度域验证方式 域验证并不是什么新问题,但在验证过程中还存在很多的漏洞,这意味着网络攻击者可以诱使CA机构错误的颁发证书。通过多角度域认证,网络攻击者需要同时破坏三个不同的网络路径,这不仅大大提高了安全系数,而且在互联网拓扑社区中也能更快发现网络攻击行为。 在新闻稿中,Let’s Encrypt特别感谢了普林斯顿大...阅读全文
在 Linux Kernel 5.10 代码中已经增加了对 EXT4 文件系统的更新,其中包括在 DAX/DIO 模式下大幅改进文件覆盖的效率。尤其是在运行英特尔 Optane DCPMM 存储的情况下,并行写入尤其是随机覆盖性能可以提升 10 倍以上,常规操作也能提升 2 倍以上。但是您必须使用 EXT4 iommap 代码(例如在DAX / DIO模式下),并且此更改不会影响 EXT4 的常规操作。 另一项针对 EXT4 的重大改变是由谷歌 Harshad Shirwadkar 提交的 “fast commits”。fast commits 模式和在有序模式(挂载选项 data=ordered)运行的 EXT4 用户有关,在保持最小增量的情况下与 JBD2 日志共享的快速提交空间中重新...阅读全文
按计划,JDK 10 将于 3 月 20 日正式发布。据前 Oracle 员工 Simon Ritter 的统计,JDK 10 总共包含 109 项新特性。当然,在最终发布前,可能还会发生变化。 新特性中最重要的,是我们之前曾报道过的 12 个 JEP : JEP 286: 局部变量的类型推断。该特性在社区讨论了很久并做了调查,可查看 JEP 286 调查结果。 JEP 296: 将 JDK 的多个代码仓库合并到一个储存库中。 JEP 304: 垃圾收集器接口。通过引入一个干净的垃圾收集器(GC)接口,改善不同垃圾收集器的源码隔离性。 JEP 307: 向 G1 引入并行 Full GC。 JEP 310: 应用类数据共享。为改善启动和占用空间,在现有的类数据共享(“CDS”)功能上再次拓...阅读全文
找了好久,辅助功能 -> 指针控制 -> 触控板选项 -> 勾选启用拖拽...阅读全文
虚拟内存对进程的”欺骗”,每个进程都认为自己获取的内存是一块连续的地址。我们在编写应用程序时,就不用考虑大块地址的分配,总是认为系统有足够的大块内存即可。 安全:由于进程访问内存时,都要通过页表来寻址,操作系统在页表的各个项目上添加各种访问权限标识位,就可以实现内存的权限控制。 数据共享 通过虚拟内存更容易实现内存和数据的共享。 在进程加载系统库时,总是先分配一块内存,将磁盘中的库文件加载到这块内存中,在直接使用物理内存时,由于物理内存地址唯一,即使系统发现同一个库在系统内加载了两次,但每个进程指定的加载内存不一样,系统也无能为力。 而在使用虚拟内存时,系统只需要将进程的虚拟内存地址指向库文件所在的物理内存地址即可。如上文图中所示,进程 P1 和 P2 的 B 地址都指向了物理地址 C。 而...阅读全文
(初学者说明:RX 表示每秒接收数据,TX 表示每秒发送数据): $ bmon bmon - Linux 带宽监视按 d 键可以查看更详细的带宽使用情况的图形化统计信息,参考下面的截图。 bmon - Detailed Bandwidth Statistics按 Shift + ? 可以查看快速指南。再次按 Shift + ? 可以退出(指南)界面。 bmon – 快速指南通过 Up 和 Down 箭头键可以查看特定网卡的统计信息。但是,要监视一个特定的网卡,你也可以像下面这样作为命令行参数指定。 选项 -p 指定了要显示的网卡,在下面的例子中,我们会监视网卡 enp1s0: $ bmon -p enp1s0 bmon – 监控以太网带宽要查看每秒位数而不是每秒字节数,可以像下面这样使用 -b...阅读全文
据 Dgraph Labs 创始人 Manish Rai Jain 在其宣布 1.0.0 版本正式发布 的 文章 中透漏,他们已完成了由贝恩资本投资公司的 Salil Deshpande 领头的 300 万融资。凭借早期在基础设施软件和开源软件方面的经验,Salil 将加入 Dgraph 董事会。Jain 表示,这一轮融资正好是我们扩大云服务的时机,并继续建立世界上最先进的图数据库。 Dgraph 是一个可扩展的,分布式的,低延迟的图数据库,于 2015 年开源,最初是出于希望消除传统关系型数据库的典型弱点而创建的。为了解决组织在数据库增长超过单个服务器时面临的一些问题,Dgraph 以更有效的方式分割数据,这使查询可以在没有通用视图的情况下执行。它还减少了网络调用和磁盘查询需要执行查询的...阅读全文
—— Twenty Nineteen,它专为这个新编辑器而设计,旨在用于各种用例。无论是运营照片博客,开展新业务还是支持非盈利组织,Twenty Nineteen 都非常灵活,可以满足你的需求。 当然,不想改变习惯的用户可以继续使用经典编辑器。经典编辑器插件将支持到 2021 年。 发行说明:https://wordpress.org/news/2018/12/bebo/ 下载地址:https://wordpress.org/download/...阅读全文
Cloudflare宣布Auto RAG(全托管检索增强生成服务)于2025年4月7日开放测试,该服务旨在简化情境感知AI系统在应用中的集成流程。 Auto RAG利用自有数据源与大语言模型实时结合,提高AI响应准确性,解决传统LLM知识时效性不足的问题。开发者此前需手动串联数据存储、向量数据库、嵌入模型等组件并处理索引更新,现由AutoRAG端到端托管。 > AutoRAG的核心功能为自动数据摄取、分块嵌入、向量存储于Cloudflare Vectorize数据库,以及基于语义检索生成智能响应。其流程包括: > > 索引构建:从支持Cloudflare R2的数据源读取文件,转换为Markdown格式(含图像视觉-语言转换)、分块并生成嵌入向量; > > 查询处理...阅读全文
BlackArch Linux开发者于今天宣布了新的ISO和OVA镜像,带来了诸多改进并引入了多款新工具,以帮助安全专家进行渗透测试和有道德的破解操作系统工作。BlackArch Linux 2020.01.01版本基于Linux Kernel 5.4.6内核,装备了120多种新的渗透和破解工具,并引入了诸多改进和错误修复,提供更好的硬件检测和支持。 BlackArch Linux 2020.01.01同时还为LXDM显示管理器添加了Terminus字体支持,更新urxvt终端模拟器的配置文件来以增加动态更改大小的能力,并用Vundle.vim替代pathogen,添加了名为clang_complete的全新Vim插件。 除了上述更新的组件和更改之外,BlackArch Linux...阅读全文
2019年的CES展会上,NVIDIA推出了RTX 20 Max-Q系列移动版显卡,笔记本上也用上了光追。今年的CES展会上,NVIDIA异常低调,没有推出什么新显卡,不过RTX 20 Super系列的移动版之前已经曝光,旗舰RTX 2080 Super移动版现在进一步在GK4数据库中确认了,搭配还是未发布的酷睿i9-10980HK处理器。 根据之前曝光的信息,RTX 2080 Super移动版代号为N18E-G3R,Max-Q设计中TGP典型功耗为80W,标准TGP功耗则是150W+——别担心,去年的RTX 2080移动版显卡也是80-150W的功耗范围。 现在的RTX 2080 Super移动版显卡已经在GK4数据库中被发现,显示拥有48组计算单元,也就是3072个CUDA核心,跟桌面...阅读全文
Debian Project的Cyril Brulebois本周早些时候很高兴地宣布,即将释出的Debian GNU/Linux 10 “Buster”操作系统的安装程序的第二个alpha版本发布。 Debian的 安装程序 Alpha 2版本有一些重要的变化,比如默认通过pkgsel组件添加无人值守升级包,以确保安全升级的自动安装,以及为mips64el架构添加安装映像。 Debian GNU/Linux 10 “Buster” 安装程序的第二个alpha版本的另一个重要变化是现在支持新的Linux 4.13内核系列安装,尽管你应该知道它上个月已经结束支持,所以我们相信第三个Debian Installer的alpha版本将支持Linux kernel 4.14 LTS。 此外,还支持针...阅读全文
Label、Namespace 等概念非常适合用来构建上下文信息。3、繁多监测系统,造成监测界面不一致复杂系统带来的一个严重副作用就是监测系统繁多。数据链路不关联、不统一,监测界面体验不一致。很多运维同学或许大多都有过这样的体验:定位问题时浏览器打开几十个窗口,在 Grafana、控制台、日志等各种工具之间来回切换,不仅非常耗时巨大,且大脑能处理的信息有限,问题定位效率低下。如果有统一的可观测性界面,数据和信息得到有效地组织,减少注意力分散和页面切换,来提高问题定位效率,把宝贵时间投入到业务逻辑的构建上去。二、解决思路与技术方案为了解决上述问题,我们需要使用一种支持多语言,多通信协议的技术,并在产品层面尽可能覆盖软件栈端到端的可观测性需求,通过调研,我们提出一种立足于容器界面和底层操作系统,向上关联...阅读全文
个。 镜像的层就像 Git 的提交(commit)一样。Docker 的层用于保存镜像的上一版本和当前版本之间的差异。就像 Git 的提交一样,如果你与其他存储库或镜像共享它们,就会很方便。 实际上,当你向注册表请求镜像时,只是下载你尚未拥有的层。这是一种非常高效地共享镜像的方式。但额外的层并不是没有代价的。层仍然会占用空间,你拥有的层越多,最终的镜像就越大。Git 存储库在这方面也是类似的,存储库的大小随着层数的增加而增加,因为 Git 必须保存提交之间的所有变更。 过去,将多个 RUN 语句组合在一行命令中或许是一种很好的做法,就像上面的第一个例子那样,但在现在看来,这样做并不妥。 1. 通过 Docker 多阶段构建将多个层压缩为一个 当 Git 存储库变大时,你可以选择将历史提交记录...阅读全文
器容灾稳定性等非专业逻辑的开发。这些服务器的运维和开发知识、经验极大地限制了开发者进行业务开发的效率。设想一下,如果开发者直接租用服务或者开发服务而无须关注如何在服务器中运行部署服务,是否可以极大地提升开发效率和产品质量?这种去服务器而直接使用服务的架构,我们称之为 Serverless 架构(无服务器架构)。 Serverless 架构的问世 2014 年,云厂商 AWS 推出了“无服务器”的范式服务。其实,最初“无服务器”意在帮助开发者摆脱运行后端应用程序所需的服务器设备的设置和管理工作。这项技术的目标并不是为了实现真正意义上的“无服务器”,而是指由第三方供应商负责后端基础结构的维护,以服务的方式为开发者提供所需功能,例如数据库、消息,以及身份验证等。这种服务基础结构通常可以叫做后端即服...阅读全文
双因子身份验证就是指,需要两种身份验证才能完成账号有效性的验证,可以是密码、SSH 密钥,也可以是第三方服务,比如 Google Authenticator。这意味着单个验证方式的缺陷,不会影响账号的安全。本文我们将介绍如何在 Debian 服务器上启用双因子验证。 请注意,本文涉及到多次修改 SSH 配置,当你修改配置时,请确保有至少两个到服务器终端的连接。打开的终端将一直保持,即便 SSH 服务重启。第二终端意味着你可以修复你在SSH配置的错误。 密钥和密码验证的SSH SSH 支持对登录要求不止一个身份验证方法,我们首先启用密钥和密码验证。 在 /etc/sh/sshd_config 中的 SSH 服务器配置文件中的 AuthenticationMethods 选项中设置了身份验证方...阅读全文
并记牢,超级管理员账户啊。 建立新用户,这个只是个昵称,不是登录时的用户名,可以根据自己喜好填。 这玩意就是登录时的用户名了,设置时要多注意,并且一定要记住(其实记不住也没事,还有root呢)。 设置用户密码。 接下来该磁盘分区了,我用的虚拟机,但是方法上都一样的。 有空闲分区的话推荐使用安装程序进行自动分区,当然也可以手动分区。自动分区的话如果是新手推荐“将所有文件放在同一个分区中”,有经验的就根据自己喜好调整吧。 手动分区的话一定要记住挂载/根目录,否则会报错。Swap分区(交换分区)推荐大小为物理内存的两倍,比如我的实际内存为2G,swap给上4G就行了。 完成调整后保存分区表即可。需要注意的是需要记住挂载 根目录/ 的分区号,方便后面安装grub, 选是。 对于软件安装,教程既然写的...阅读全文
2021 年 1 季度,HDD / SSD 年化故障率对比。在笔记本电脑市场,厂商也愈加倾向于将内置 SSD 作为其轻薄本产品线的唯一选项。此外 BackBlaze 祖辛发表的一项研究,更是揭示了一个有趣的事实 —— SSD 的可靠性,竟然是 HDD 的 21 倍!以定期发表企业存储可靠性报告而被大家所熟知的 BackBlaze,让我们直观地了解到了各款驱动器的平均或年化故障率(AFR)。HDD / SSD 终身年化故障率对比2021 年 1 季度期间,BackBlaze 发现,各品牌机械硬盘的 AFR 为 10.56%,而同期各品牌固态硬盘的 AFR 低至惊人的 0.58% 。换言之,大约每 10 块 HDD 中,就有 1 个发生了故障。而在大约每 200 块 SSD 中,也只有 1 个...阅读全文
GNU nano 5.0 已正式发布,代号 ”Among the fields of barley”。 GNU nano 是 Unix 和类 Unix 系统中,非常流行的一个文本编辑器,也是 Pico 的复制品,旨在成为一个类似 Pico 的全功能但又易于使用的编辑器。在多个主流 Linux 发行版中,nano 做为默认的编辑器出现。 下载地址:https://www.nano-editor.org/download.php 与 Nano 4.x 系列相比,5.0 在编辑体验方面进行了许多改进。其中值得关注的更新亮点包括: -indicator 选项可用于在屏幕右侧提供一个 “滚动条”,以指示视口(viewport)/文本在缓冲区的大约位置执行命令提示符现在可以直接从主菜单中访问对于支持至...阅读全文
于单点失效是有弹性的,但是同时也需要注意:尽管 exchange 和 binding 能够在单点失效问题上幸免于难,但是 queue 和其上持有的 message 却不行,这是因为 queue 及其内容仅仅存储于单个节点之上,所以一个节点的失效表现为其对应的 queue 不可用。 举例说明,如果一个 RMQ 集群由三个节点组成(RMQ集群节点的模式也是有讲究的,一般三个节点会有一个 RAM,两个 DISK),exchange、bindings 等元数据会在三个节点之间同步,但 queue 上的消息是不会同步的,且不特殊设置的情况下,Queue 只会在一个节点存在。 可能有的同学会提另一个问题,我从三个 RMQ 节点的监控面板,都可以看到这个 Queue?这个是对的,这是由于 Queue 的元...阅读全文
今天,我来为大家解读一幅来自 TurnOff.us 的漫画 “InSide The Linux Kernel” 。TurnOff.us 是一个极客漫画网站,作者 Daniel Stori 画了一些非常有趣的关于编程语言、Web、云计算、Linux 相关的漫画。今天解读的便是其中的一篇。 在开始,我们先来看看这幅漫画的全貌! Inside the Linux Kernel 这幅漫画是以一个房子的侧方刨面图来绘画的。使用这样的一个房子来代表 Linux 内核。 地基 作为一个房子,最重要的莫过于其地基,在这个图片里,我们也从最下面的地基开始看起: Filesystem 地基(底层)由一排排的文件柜组成,井然有序,文件柜里放置着“文件”——电脑中的文件。左上角,有一只胸前挂着 421 号牌的小企...阅读全文
基本概念 Prometheus 所有采集的监控数据均以指标(metric)的形式保存在内置的时间序列数据库当中(TSDB):属于同一指标名称,同一标签集合的、有时间戳标记的数据流。除了存储的时间序列,Prometheus 还可以根据查询请求产生临时的、衍生的时间序列作为返回结果。 样本在时间序列中的每一个点称为一个样本(sample),样本由以下三部分组成: 指标(metric):指标名称和描述当前样本特征的 labelsets; 时间戳(timestamp):一个精确到毫秒的时间戳; 样本值(value): 一个 folat64 的浮点型数据表示当前样本的值。
集群配置权限的集群创建者或管理员角色,请在 AWS CloudTrail 中搜索 CreateCluster API 调用。然后,检查此 API 调用的 UserIdentity 部分。 识别需要权限的 IAM 用户或角色。 确认已识别的 IAM 用户或角色有权在 AWS 管理控制台中查看所有集群的节点和工作负载。 使用 aws-auth ConfigMap 将 IAM 用户或角色映射到 RBAC 角色和组 {{< notice info "重要提示:" >}} 在连接 Amazon EKS API 服务器之前,安装并配置最新版本的 AWS CLI。 {{< /notice >}} 获取 AWS CLI 用户或角色的配置: aws sts get-caller-identity 输出将返回...阅读全文
Dubbo 2.7.0 发布。Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 Spring 框架无缝集成。 据开源中国对 Dubbo 的项目负责人北纬的采访 Dubbo 重启维护一年多,现在还活着吗?,新版本的更新亮点有: Dubbo 2.7.0 添加了社区呼声很高的 异步化支持 、以及 注册中心与配置中心分离 这两个特性。与 2.6 及以前的版本相比, 异步化支持 不再局限于基于 Future 接口的异步,也不再仅仅局限于只能在客户端异步。具体来说,Dubbo 2.7.0 版本全面拥抱 JDK8,在客户端开始支持基于 CompletableFuture 的异步编程范式,在服务端支持基于 AsyncContext...阅读全文
Debian 项目团队宣布其稳定发行版 Debian 10 (代号 "buster")的第八次更新。本次更新主要是对安全问题进行了修正,同时也对一些严重的问题进行了调整。安全公告已经单独发布,并在可用的地方进行了参考。 需要注意的是,这个点发行版(point release)并不构成 Debian 10 的新版本,只是更新了其中的一些软件包。没有必要扔掉旧的 "buster "介质。安装后,可以使用最新的Debian镜像将软件包升级到当前版本。 那些经常从 security.debian.org 安装更新的人不会需要更新很多软件包,大多数这样的更新都包含在点发布中。新的安装镜像很快就会在常规位置提供。 将现有的安装升级到这个版本可以通过将软件包管理系统指向Debian的许多HTTP镜像之一...阅读全文
如何在重启的时候,进入单用户模式,执行系统修复等工作? 操作以下: - 重启系统,在进入到 GRUB 的菜单页面后,按 E 编辑启动项, - 查找以 linux 开头的那行,然后查找 ro , - 在 ro 后添加 single,确保 single 前后有一个空格, - 最后按 Ctrl+X 启动系统,即可进入单用户模式。 ...阅读全文
了这里面的东西,每个程序员都应该可以做到这一点。嗯,但愿吧。 重视语言特性,而不是语言 很多人在乎自己或者别人是否“会”某种语言,对“发明”了某种语言的人倍加崇拜,为各种语言的孰优孰劣争得面红耳赤。这些问题对于我来说都是不存在的。虽然我写文章批评过不少语言的缺陷,在实际工作中我却很少跟人争论这些。如果有其它人在我身边争论,我甚至会戴上耳机,都懒得听他们说什么 为什么呢?我发现归根结底的原因,是因为我重视的是“语言特性”,而不是整个的“语言”。我能用任何语言写出不错的代码,就算再糟糕的语言也差不了多少。 任何一种“语言”,都是各种“语言特性”的组合。打个比方吧,一个程序语言就像一台电脑。它的牌子可能叫“联想”,或者“IBM”,或者“Dell”,或者“苹果”。那么,你可以说苹果一定比 IBM 好...阅读全文
)。像 HTTP/2 一样,它始于 Google 的一项成果,并且现在已经被 IETF 接纳作为一个 HTTP-over-UDP 的初始用例,其目标是在 2018 年底成为一个标准。然而,因为 Google 已经在 Chrome 浏览器及其网站上部署了 QUIC,它已经占有了超过 7% 的互联网通讯份额。 阅读 关于 QUIC 的答疑 除了大量的通讯从 TCP 到 UDP 的转变(以及隐含的可能的网络调整)之外,Google QUIC(gQUIC)和 IETF QUIC(iQUIC)都要求全程加密;并没有非加密的 QUIC。 iQUIC 使用 TLS 1.3 来为会话建立密钥,然后使用它去加密每个数据包。然而,由于它是基于 UDP 的,许多 TCP 中公开的会话信息和元数据在 QUIC 中被加密...阅读全文
2002年就已经是 3.0.0 版本。这么多年,才升到 3.0.22,真够慢的。 选完版本号,然后你可以下载“exe 格式”或“zip 格式”。如果是“exe 格式”,就是一个安装文件,双击就可以安装(安装过程很容易,俺就不详述了);如果你选“zip 格式”,就是一个【绿色免安装】的压缩包。你把这个 zip 随便解压到某个目录下,就可以用了。 俺本人比较喜欢“绿色软件”,所以每次都下载“zip 格式”。 ★基本使用 Privoxy 默认安装好就可以使用了。它默认会开启 HTTP 代理,端口号是 8118,绑定在 127.0.0.1 这个地址。 你把浏览器的 HTTP 代理作相应的设置,浏览器就会走 Privoxy 的 HTTP 代理。 为了检验你的浏览器是否正确配置了 Privoxy 的代理,你可...阅读全文
加密项目,预计8月1日起,商家将无法获得订单收获信息中用户的手机号、姓名、收货地址等信息,这些信息将以加密字符串的形式输出,导出数据也逐步会变成密文。 海豚智库创始人李成东告诉记者,客户信息加密后,商户和快递公司均将无法获取到客户相关信息。这意味着,“双十一”或者“618”前,商户疯狂对客户短信轰炸的局面不会再出现了。 一位TMT领域的专家表示,打击信息泄露、保护用户信息安全是当下互联网平台治理的重点方向。电商平台与其坐等政策干预,还不如主动求变,提前做好准备。...阅读全文
阅读行为放在编写之上 。Go 通过工具和自定义来强制所有代码格式化成特定的样式。这消除了学习项目特定语言的方言时的困难,并有助于发现错误,因为它们 看上去 就是不正确。 由于专注于分析和机器辅助,Go 开发人员开始采用越来越多的工具来发现常见的编码错误,这种工具从来没有在 C 语言开发者中产生共鸣 – Go 开发人员 希望 工具帮助他们保持代码清洁。 并发性 十多年来,芯片设计师一直在警告 免费午餐将会结束 。从最低端的手机到最耗电的服务器,硬件的并行性以 更多、更慢、堆砌 cpu 内核 的形式出现,但只有 当 你的语言可以利用它们才有意义。因此,并发特性需要内置到我们编写的要在今天的硬件上运行的软件中。 通过提供一种基于协程的 轻量级并发模型 ,或者是 Go 中已知的 goroutines...阅读全文
提供的所有算法实现都可以通过“高级” API 访问,无法使用 “低级 API” 访问它们。目前可用的一个标准 Providers 是 FIPS Providers。这使得 FIPS 验证的加密算法可用。FIPS Providers 默认处于禁用状态,需要在配置时使用enable-fips选项显式启用。如果启用,除了其他标准 Providers 之外,还会构建和安装 FIPS Providers,不需要单独的安装过程。低级别的 APIOpenSSL 历来提供两套用于调用加密算法的 API:"高级" API(如 EVP API)和 "低级" API。高级别的 API 通常被设计成适用于所有算法类型。而 "低级" API 则是针对特定的算法实现的。长期以来,OpenSSL 开发团队一直不鼓励使用低...阅读全文
DNS SRV 是 DNS 记录中一种,用来查询指定服务的地址。与常见的A记录、CNAME 不同的是,SRV中除了记录服务器的地址,还记录了服务的端口,并且可以设置每个服务地址的优先级和权重。RFC-2782 给出DNS SRV的建议标准,它是在2000年的时候提出来的。 访问服务的时候,本地的服务从 DNS 服务器查询到一个地址列表,根据优先级和权重,从中选取一个地址作为本次请求的目标地址。 一个支持SRV的 LDAP client 通过查询域名,可以得知 LDAP 服务的 IP 地址和服务端口: _ldap._tcp.example.com 这个域名的格式是 rfc-2782 中推荐的格式,_ldap表示LDAP服务,_tcp表示通过TCP协议访问LDAP服务。 SRV 的 DNS 类...阅读全文
://news.ycombinator.com • 特点: • 知名的技术社区,很多工程师分享真实项目架构分析、扩展性实践、高并发设计等话题,信息新鲜度高。📌 11. Medium • 网址:https://medium.com • 特点: • 汇聚大量一线公司的架构分享,如Uber、Lyft、Spotify、Pinterest等。 • 搜索”scalability architecture”、“system design”,能获取非常多优质内容。🗂 最终推荐 • 企业级高性能架构深入阅读: • 推荐InfoQ、Netflix Tech Blog、AWS Architecture、Facebook Engineering Blog • 快速学习系统架构与设计知识: • 推荐System Design Primer、The...阅读全文
.deb 包并双击安装。 下载 MultiBootUSB 步骤 2 推荐的文件系统是 FAT32,因此在创建多引导 U 盘之前,请确保格式化 U 盘。 步骤 3 下载要安装的 Linux 发行版的 ISO 镜像。 步骤 4 完成这些后,启动 MultiBootUSB。 MultiBootUSB 主屏幕要求你选择 U 盘和你打算放到 U 盘上的 Linux 发行版镜像文件。 MultiBootUSB 支持 Ubuntu、Fedora 和 Debian 发行版的持久化,这意味着对 Linux 发行版的现场版本所做的更改将保存到 USB 上。 你可以通过拖动 MultiBootUSB 选项卡下的滑块来选择持久化(Persistence)大小。持久化为你提供了在运行时将更改保存到 U 盘的选项。 步骤 5...阅读全文
如果你在 dmesg 日志中发现了该错误,对应的 xfs 分区不能被挂载和使用, ``` "XFS Filesystem has duplicate UUID", ``` 临时解决办法是,在 mount 命令中使用 nouuid 挂载选项, ``` # mount -o ro,nouuid /dev/nvme0n1p1 /mnt ``` 临时解决办法在你机器重启后将失效,持久的办法应该是使用 xfs_admin 命令行工具生成新的 UUID,然后将新的UUID配置到 /etc/fstab 中, ``` # xfs_admin -U generate /dev/nvme0n1p1 Clearing log and setting UUID...阅读全文