Debian 有什么含义 如何发音
读法,还是很美式的。 【更新】:我们整理了一篇更为详细的介绍Debian标准发音的文章,供参考。...阅读全文
读法,还是很美式的。 【更新】:我们整理了一篇更为详细的介绍Debian标准发音的文章,供参考。...阅读全文
SwitchHosts 是一个用于快速切换本地 hosts 文件的小程序,便于开发人员快速修改测试域名的解析记录。SwitchHosts 基于 Electron 开发,同时使用了 React、Ant Design 以及 CodeMirror 等框架/库,项目主页为 https://oldj.github.io/SwitchHosts/。 SwitchHosts 主界面 SwitchHosts 功能特性 快速切换本地 hosts 文件hosts 文件语法高亮在线 hosts 方案系统托盘图标快速切换macOS: 支持 Alfred workflow 快速切换 下载安装 switchhosts 你可以直接下载源码到本地运行或编辑,或者在下面下载可执行版本: SwitchHosts! 下载地址1...阅读全文
当上世纪九十年代互联网开始被广泛使用的时候,其大部分的通讯只使用几个协议:IPv4 协议路由这些数据包,TCP 协议转发这些包到连接上,SSL(及后来的 TLS)协议加密连接,DNS 协议命名那些所要连接的主机,而 HTTP 协议是最常用的应用程序协议。 多年以来,这些核心的互联网协议的变化几乎是微乎其微的;HTTP 增加了几个新的报文头和请求方式,TLS 缓慢地进行了一点小修改,TCP 调整了拥塞控制,而 DNS 引入了像 DNSSEC 这样的特性。这些协议看起来很长时间都一成不变(除了已经引起网络运营商们的大量关注的 IPv6)。 因此,希望了解(甚至有时控制)互联网的网络运营商、供应商和决策者对这些协议采用的做法是基于其原有工作方式 —— 无论是打算调试问题,提高服务质量,或施加政策...阅读全文
API 中的一种特殊的 ephemeralcontainers 处理器进行创建的,而不是直接添加到 pod.spec 段,因此无法使用 kubectl edit 来添加一个临时容器。 与常规容器一样,将临时容器添加到 Pod 后,将不能更改或删除临时容器。 为什么我们需要Ephemeral 容器? 我们知道容器的优点是它们通过使用不变方法提供所有必需的依赖项来运行隔离的进程。通过仅将所需的依赖项添加到镜像中,容器可以降低攻击面并提供更快的启动和部署。使用“distroless”方法构建容器镜像(基于scratch),通过仅包含已编译的应用程序二进制文件,将容器镜像提升到了一个新的水平。与普通的容器镜像不同,它们不基于任何种类的Linux发行版,因此不包含任何其他可通过kubectl exec执行...阅读全文
。2024财年;国防部创建了零信任参考架构;美国国家安全局发布了一份Kubernetes 强化指南,专门描述了 Kubernetes 中零信任安全的最佳实践。随着这种噪音,零信任无疑吸引了很多营销关注。但尽管有噪音,零信任不仅仅是一个空洞的术语——它代表了对未来安全的一些深刻和变革性的想法。那么具体来说,什么是零信任,为什么它突然变得如此重要?零信任对 Kubernetes 用户意味着什么?什么是零信任?正如所料,零信任从根本上讲是关于信任。它是解决安全核心问题之一的模型:是否允许 X 访问 Y?换句话说,我们是否相信 X 可以访问 Y?当然,零信任中的“零”有点夸张。要使软件正常工作,显然某些东西需要信任其他东西。因此,零信任并不是完全消除信任,而是将信任降低到最低限度(众所周知的最小特权原则)并...阅读全文
地化工作也是做得非常到位,而凭借着架构简单,开箱即用的特点,CAT 也是我们得物使用的第一个应用监控系统。 二、 0x01 第一阶段 从0~1基于CAT的实时应用监控 在得物五彩石项目交付之前,系统仅有基础设施层面的监控,CAT 的引入,很好地弥补了应用监控盲区。它支持提供各个维度的性能监控报表,健康状况检测,异常统计,对故障问题排查起到了积极推动的作用,同时也提供简单的实时告警的能力。 CAT 拥有指标分钟级别的聚合统计的能力,从 UI 上不难看出,它拥有丰富的报表统计能力和问题排障能力。 但随着公司业务规模逐步扩大,微服务粒度也不可避免地变小,我们发现,CAT 已经逐步无法满足我们的使用场景了: 无法直观呈现全链路视图: 问题排障与日常性能分析的场景也越来越复杂,对于一个核心场景,其内部...阅读全文
Web前端技术由html、css和javascript三大部分构成,是一个庞大而复杂的技术体系,其复杂程度不低于任何一门后端语言。而我们在学习它的时候往往是先从某一个点切入,然后不断地接触和学习新的知识点,因此对于初学者很难理清楚整个体系的脉络结构。本文将对Web前端知识体系进行简单的梳理,对应的每个知识点点到为止,不作详细介绍。目的是帮助大家审查自己的知识结构是否完善,如有遗漏或不正确的地方,希望共勉。 JAVASCRIPT 篇 0、基础语法 Javascript基础语法包括:变量定义、数据类型、循环、选择、内置对象等。 数据类型有string,number,boolean,null,undefined,object等。其中,string,number和boolean是基础类型,null...阅读全文
在Debian及其衍生的系统中,我们需要经常使用的软件包管理命令,对系统进行管理,以便系统达到预期的状态。Debian系统中,常用的软件包命令有 apt、apt-get、dpkg、apt-cache等,这里我们着重列举常见的一些用法。 软件包查询(不需要sudo权限) $ apt-cache search pkg_keyword #列出匹配关键字的软件包 $ apt search pkg_keyword #列出匹配关键字的软件包,包括了版本信息 $ apt list pkgname #查找该软件包,会显示版本信息 $ apt-cache show pkgname #查询软件包详细信息 $ apt show pkgname #查询软件包详细信息 $ apt-cache depends...阅读全文
这一年来有关国内公司进军内存产业的消息甚嚣尘上,紫光公司凭借原有的英飞凌、奇梦达基础在DDR3内存上已经作出了突破,小批量生产了DDR3内存,下半年还会推出更主流的DDR4内存芯片,正在努力追赶国际主流水平。但是放眼整个内存市场,DDR5内存很快就要来了,更可怕的是未来即便是DDR5内存也很可能被更新的技术淘汰。 业界已经有人提出了DDR内存将死的看法,未来需要高带宽的产品将转向HBM内存,2020年会有HBM 3内存,2024年则会有HBM 4内存,届时带宽可达8TB/s,单插槽容量可达512GB。 对于HBM内存,DIY玩家可以说也是相当熟悉了,AMD在2015年的Fury系列显卡上首次商用第一代HBM技术,超高的带宽、超低的面积占用彻底改变了当时的显卡设计,随后NVIDIA在...阅读全文
本指南解释了从 Debian 10 升级到 Debian 11 的步骤。 Debian 的大版本发布是很罕见的,因为它往往需要社区的多年努力。这就是为什么 Debian 是真正的通用操作系统,并且在稳定性方面坚如磐石。 代号 Bullseye 的 Debian 11 即将正式发布。2021 年 7 月 15 日,Debian 11 进入完全冻结状态,这意味着发行在即。虽然官方发布日期还没有最终确定,但你现在就可以从 Debian 10 安装或升级到 Debian 11。 以下是方法。 前提条件 升级的过程非常简单明了。然而,采取某些预防措施是一个好的做法。特别是如果你正在升级一台服务器。 对你的系统进行备份,包括所有重要的数据和文件。 尝试禁用/删除你可能在一段时间内添加的任何外部仓库...阅读全文
Debian是使用非常广泛的系统,本篇文章第一部分讲述如何在Debian 8 (Jessie) 下面安装 Docker 环境,第二部分介绍了如何彻底的清理 Debian 8 上的 Docker 环境。 Debian 8 使用了3.16的内核,已经满足了docker运行的要求。但是因为安全方面的原因,docker.io 包并没有放在debian的stable源里面,而是放在了backports 源里面。为什么从jessie源里面移除docker.io包,简而言之,是因为go语言包版本的问题。 Debian backports的介绍和使用可以参考本篇文章,或者官方站点的介绍。 安装Docker包之前,先设置安装源。 这里我们使用了Docker官方提供的Debian安装源。配置方法如下。新建一个...阅读全文
许可证。 四个新的许可证 首先是 Cryptographic Autonomy License(CAL)。这个许可证是为分布式密码学应用而设计的。现有的开源许可证无法保证开放性,因为如果没有义务与其他对等体共享数据,那么一个对等体就有可能损害网络的运行。所以,CAL 除了是一个强大的版权许可以外,还包括向第三方提供独立使用和修改软件所需的权限和材料,而不使第三方有数据或功能的损失。 随着分布式密码学在加密结构的点对点共享中越来越多的使用,如果更多的开发者发现自己需要一个像 CAL 这样的法律工具,也就不足为奇了。我们希望由此产生的许可证是清晰易懂的,并希望开源从业者会发现它大有用处。 在我们之前的报道中曾提到,欧洲核子研究组织 CERN 提交的 CERN Open Hardware...阅读全文
): msg_type = 'link' msg = { "messageUrl": url, "picUrl": "https://gw.alicdn.com/tps/TB1FN16LFXXXXXJXpXXXXXXXXXX-256-130.png", "title": title, "text": text } return msg_type, msg 其中_send_msg_to_users方法参见前面的代码,picUrl字段设置的是钉钉官方的图片,这里用于测试。 发送文件 def send_file_to_users(access_token, users, file_name): media_id = upload_file(access_token, file_name) if media_id...阅读全文
),但是这些选项可以根据需要进行配置。 Postgres 10另一个重要的新特性是支持JSON和JSONB类型列的全文搜索。一旦我们创建了一个特定语言的全文索引,我们就可以通过JSON字段对值进行直接搜索。在JSON列上的全文索引与其他列是类似的,因此我们的查询需要使用to_tsquery函数和to_tsvector函数的文本搜索的语法。 标识列(Identity columns)和自增列(Auto-increment columns)也是Postgres 10进行改进的一个地方。新的实现方法会有一点冗长,但是它是符合SQL标准的,使得在不同数据库之间的迁移会更加容易。最重要的是,使用Postgres 10时,我们在从一个不同的id重启时,不再需要修改序列(alter sequences)了,但...阅读全文
大多数使用开源的公司都了解其商业价值,但他们可能缺乏战略性地实施开源计划和获得全部回报的工具。根据 The New Stack 最近的一项调查,“开源计划的三大好处是 1)提高了对开源的认识,2)提高了开发周期的速度和灵活性,以及 3)更好的许可证合规性。” 开源指南 运作一个开源计划办公室涉及到创建策略来帮助你定义和实施你的方法,并衡量你的进度。由 Linux 基金会与 TODO Group 合作开发的 企业开源指南基于多年的经验和实践提供了专业开源知识。 最新的指南中, 设置开源战略详细介绍了制定战略和确保成功之路的基本步骤。根据该指南,“你的开源战略将管理、参与和创建开源软件的计划与计划所服务的业务目标联系起来。这可以开辟许多机会并促进创新。”该指南涵盖以下主题: 为什么制定战略?你...阅读全文
LXD 服务器必须配置为监听单个 IPv4 或 IPv6 地址,同时内部集群流量和常规客户端流量都使用相同的地址。LXD 3.8 引入新的 cluster.https_address 选项作出改变,write-once 写入密钥保存用于集群通信的地址,并且无法在不必从集群中删除节点的情况下进行更改。有了这个单独的密钥,现在可以将集群节点上的常规 core.https_address 更改为任何地址,包括通配符模式,如 :8443。 集群镜像复制 集群中引入了自动镜像复制, 在 LXD 3.8 之前,镜像只会被复制到其它集群成员,虽然有利于性能、带宽和磁盘使用,但这有一个明显的缺点,即如果镜像仅出现在单个系统上并且系统脱机,那么在系统恢复之前将无法使用该镜像。 此版本通过在至少 3 个系统上复制所...阅读全文
,FreeOffice 已经扩展到支持早期的 Microsoft 格式 DOC、XLS 和 PPT 以及标准化文档格式 OpenDocument Text(ODT)。 但是 FreeOffice 并不是开源的软件,Jack 认为这便是 Manjaro 的大胆之处。 虽然有人会认为 Linux 上应该使用开源项目,并且开发者需要能够查看到 FreeOffice 的源码,并且在出问题时能够自行调试代码解决,但是这样影响办公效率的事情实际上很少会发生。“Linux 上拥有另一种选择的想法,尤其是使与 MS Office 的无缝协作更加现实的想法,应该被视为 Linux 桌面的巨大胜利。” Jack 分享了他在 Linux 上文档协作方面的困苦,后来其实也是到了需要求助于 Google Docs 之类的线上工具的地步...阅读全文
http://packages.dotdeb.org wheezy all 完成之后更新源: apt-get update 接下来就可以开始安装nginx、mysql、php了。 2.MySQL 使用apt工具安装: apt-get install -y mysql-server mysql-client 安装过程中会询问root密码,输入你想设定的密码就可以。安装完成后执行如下配置命令: mysql_secure_installation 按提示往下走就行,过程中会询问是否更改root密码、是否移除匿名用户、是否禁止root远程登录等,自己按需配置即可。 注:我在使用mysql的过程中发现远程客户端无法连接到数据库,后来发现问题是“/etc/mysql/my.cnf”文件中“bind...阅读全文
几个星期前,我一个朋友问我:“为什么要关心 Go 语言”? 因为他们知道我热衷于 Go 语言,但他们想知道为什么我认为 其他人 也应该关心。本文包含三个我认为 Go 是重要的编程语言的原因。 安全 个人而言,你和我或许完全有能力在 C 中编写程序,既不会泄漏内存,也不会不安全地重复使用内存。然而,整体上,即使有超过40年的经验,用 C 的程序员也无法可靠地这样做。 尽管静态代码分析、valgrind、tsan 以及 “-Werror” 已经存在了几十年,却很少有证据表明这些工具被广泛认可,更不用说广泛采用。总而言之,事实表明,程序员根本无法安全地管理自己的内存。现在是离开 C 的时候了。 Go 不需要程序员直接管理内存,所有内存分配都由语言运行时自行管理,使用前初始化,必要时检查边界。它肯...阅读全文
操作系统:Debian Gnu/Linux Jessie 内核: linux-image-4.3.0-0.bpo.1-amd64 网卡:腾达(Tenda) W311M 150M Mini无线USB网卡 最近发现自己的Debian之前可以使用GNOME3下的networkmanager进行WIFI共享上网功能因为内核升级导致无法使用。无奈只好再次通过Hostapd来进行WIFI热点设置,同时为了更块的DNS解析,本次顺便也在本地安装了dnsmasq软件实现了本地化的DNS查询服务,成功恢复了我的小本本作为热点的能力。总结方法如下: 1、准备环境: 1.1执行vi /etc/apt/sources.list,并添加如下源地址: deb http://ftp.cn.debian.org...阅读全文
在本月初的 GopherCon 上,知名 Go 语言贡献者与布道师 Dave Cheney 发表了名为《The Zen of Go》的演讲,之后他整理了演讲内容在博客中分享,由于内容过长,他又写了一个简洁版本: 完整版:https://dave.cheney.net/2020/02/23/the-zen-of-go简洁版:https://the-zen-of-go.netlify.com 这里简单翻译一下简洁版本的内容:编写简单、可读、可维护的 Go 代码的十个工程要点。 每个包实现单一目标 设计良好的 Go 软件包提供一个单一的思路,以及一系列相关的行为。一个好的 Go 软件包首先需要选择一个好名字,使用电梯法则(30 秒内向客户讲清楚一个方案),仅用一个词来思考你的软件包要提供什么功能...阅读全文
最近,我们可能经常会听到一种说法"Docker正在彻底改变IT!"这种说法是否存在炒作嫌疑呢?Docker对于现有格局的破坏性到底在哪里?Docker和虚拟机之间有什么区别?Docker真正的附加价值在哪里?本文我们将和Docker大牛Chanwit Kaewkasi来讨论这些话题。 Asst. Prof. Dr. Chanwit Kaewkasi 问:您是如何与Docker结缘的呢? Chanwit Kaewkasi:这个可以追溯到2014年,当时我们实验室正在寻找一个虚拟化层来帮助管理大数据栈,而虚拟机解决方案对我们来说太重了,所以遇到Docker对我们来说是一件幸事。 问:我们经常听到"Docker正在彻底改变IT",你认同这种观点吗?Docker技术有什么破坏性? Chanwit...阅读全文
用替换一幅图片的色码(color table)成自己选定的色码,我现在知道的唯一方法是编辑每个色码区块(table slot), 但却无法从某绘图程序的颜色选择器取得十六进制的 RGB 值。问题解决后,加个简短的补充说明补充说明不必很长或是很深入。简单的一句 你好,原来是网线出了问题!谢谢大家。 比什么也不说要来的好。事实上,除非结论真的很有技术含量,一句话就够了:说明问题是怎样解决的,但大可不必将解决问题的过程复述一遍。对于有深度的问题,张贴调试记录的摘要是有帮助的。但请记住,先描述问题的最终状态,说明是什么解决了问题,在此之后才指明踩坑的地方。在即时聊天软件里问问题为了避免重复答疑,你应该在群里询问常见问题。由于部分聊天软件没有话题串的功能(或着实现很差),同时群里还可能有多个同时讨论的...阅读全文
长期模式。这也意味着 Django 现在完全依靠的是没有酬劳的贡献者,并已经开始供不应求。 通常来说,修复小 bug 或添加小功能是吸纳贡献者的好机会,但这些事情 Django 的现有成员都会完成。短期内还好,但按这个形势发展下去,Django 会一直无法吸引到新的贡献者,来取代那些不活跃的甚至完全沉寂的人。 为解决 Django 的发展困境,“改革草案”提议重组 Django 核心团队(也称 Committer,提交者)。James Bennett 解释到,按照 Django 现有的管理模式,任何人都可以提交更改及补丁,但只有 Django 的提交者和技术委员会才有权作出决定。提交者可对项目做出任意更改,只需对其他成员和技术委员会负责。而事实上,很少有提交者直接使用他们的提交权限,决策基本...阅读全文
导语 | kafka3.0的版本已经试推行去zk的kafka架构了,如果去掉了zk,那么在kafka新的版本当中使用什么技术来代替了zk的位置呢,接下来我们一起来一探究竟,了解kafka的内置共识机制和raft算法。一、Kafka简介Kafka是一款开源的消息引擎系统。一个典型的Kafka体系架构包括若干Producer、若干Broker、若干Consumer,以及一个ZooKeeper集群,如上图所示。其中ZooKeeper是Kafka用来负责集群元数据的管理、控制器的选举等操作的。Producer将消息发送到Broker,Broker负责将收到的消息存储到磁盘中,而Consumer负责从Broker订阅并消费消息。(一)Kafka核心组件producer:消息生产者,就是向broker...阅读全文
评审者不需要的特性,那么即使代码做了不错的设计,评审者也应该不予通过。 没有所谓的“完美”代码,只有更好的代码。评审人员不应要求作者在批准前对 CL 的每一小部分过分完美。相反,评审者应该权衡向前继续开发的需求和修改建议的重要性。评审者要求的是持续性地改进,而不是追求完美的代码。CL 作为一个整体,如果它能提升系统的可维护性、可读性和可理解性,那么就不要因为它还不完美而推迟数天或数周更新。 评审者应该经常留下一些评论,以表达能导致更好性能的做法。如果这些做法并不是非常重要的,那么需要加上前缀「Nit:」,从而令代码作者知道这些内容是可以忽略的。 评审指导 代码评审有一个很重要的功能,即教开发者一些开发经验,不论是语言、框架还是一般软件设计准则。留一些评论总会帮助开发者学习一些新的知识,共享知...阅读全文
/log/journal/。请参见 systemd-journald.service(8) 以了解细节;请注意 Debian 中的日志除了默认的 systemd-journal 组外,还可以被 adm 用户组内的成员阅读。这项改动应该不会对任何已有的传统日志守护程序(例如 rsyslog)产生任何干扰,但是不依赖这些守护程序所提供的特别功能的用户应当考虑将传统日志程序卸载并切换到仅使用新的 systemd 日志工具。新的 Fcitx 5 输入法Fcitx 5 是用于中文、日语、韩语和其它许多语言的一个输入法。它是 buster 提供的 Fcitx 4 的后续版本。新版本增加了对 Wayland 的支持并改进了扩展支持。内核 exFAT 支持bullseye 是第一个提供支持 exFAT 文件系统的...阅读全文
=600 \ --title "Whois info for $domain" \ --text-info --filename="${_out}" else ${_zenity} --error \ --text="No input provided" fi 输出: 5. kdialog 命令 这个命令和zenity很想,只不过它是为KDE/QT应用准备的。使用方法如下: kdialog --dontagain myscript:nofilemsg --msgbox "File: '~/.backup/config' not found." 输出 你可以查看 shell scription with KDE Dialogs 来获取更多信息 6. Dialog 这个命令可以在shell脚本中显示文...阅读全文
什么是装饰器? 装饰器(Decorator)相对简单,咱们先介绍它:“装饰器的功能是将被装饰的函数当作参数传递给与装饰器对应的函数(名称相同的函数),并返回包装后的被装饰的函数”,听起来有点绕,没关系,直接看示意图,其中 a 为与装饰器 @a 对应的函数, b 为装饰器修饰的函数,装饰器@a的作用是: 简而言之:@a 就是将 b 传递给 a(),并返回新的 b = a(b) 栗子: 上面使用@dobi来表示装饰器,其等同于:qinfeng = dobi(qinfeng)因此装饰器本质上就是个语法糖,其作用为简化代码,以提高代码可读性,运行上段代码的结果为: 解析过程是这样子的: 1.python 解释器发现@dobi,就去调用与其对应的函数( dobi 函数) 2.dobi 函数调用前要指...阅读全文
拟机有着更好的灵活性,可以供您选择您的操作系统,并在您认为合适的情况下进行升级。相比之下,运行已配置应用程序容器在主机的操作系统升级方面是隔离的。 Linux 容器 vs 虚拟机 – 用例场景 我最喜欢使用容器的原因之一就是使用 Linux 库版本。例如,假设您需要 Python 的特定版本来开发应用程序。然后,当你在运行应用程序的盒子上更新时,突然发现 Python 版本发生了变化,导致应用程序无法正常工作。 使用容器的另一个好处是你可以把一个应用程序放到一个容器中,然后在任何支持你正在运行的容器类型的操作系统上运行它。当你想要一个运行在不同 Linux 发行版应用程序时。通过使用容器,可以在各种不同的发行版上运行类似的应用程序环境。容器提供了可移植性。 容器对于快速的跨发行版部署是更可行...阅读全文
。而且,他还作为 MVP (微软最有价值专家)参与微软产品和策略的各种简报会。 对于近日流行的“微软应该迁移 Windows 系统核心至 Linux 内核”说法,他表示从产品和工程角度来说微软在任何情况下都不可能这么做。 在说明具体原因之前,Barnes 认为在 Slashdot 和 Hacker News 上不断出现这个观点的原因: 能够吸引用户点击对于开源和 Linux 倡导者来说,这是一个很早就存在的幻想。目前,Windows 扮演的角色正在发生变化。尤其是当前 Android、iOS、macOS、Chrome OS 和 Ubuntu 都基于 Linux 的世界里伴随着 Linux 在 Azure 和 WSL 的使用率增加,这种合理性正在不断增加。奥弗顿之窗(The Overton...阅读全文
,Aptitude也很有用。实用的功能特性包括why命令和why-not命令,前者显示依赖某软件包的其他软件包,后者显示什么软件包与某个指定软件包冲突。此外,Resolver菜单列出了可能解决破损软件包的方法,从破坏性最小的那种方法开始。 6. apt-cache apt-cache搜索已安装软件包数据库,寻找信息。它能显示关于单个软件包、依赖项和冲突等方面的信息,以及其他众多信息。 一个特别有用的命令是apt-cache search,它可搜索数据库中的文本字符串。使用这个命令,你就能找到软件包的具体名称,那样可以安装它,还可以找到想要安装的相关软件包。在Debian中,它必不可少,所以默认情况下已安装。 5. dpkg-reconfigure dpkg-reconfigure可改变安装软件包的方法。比如...阅读全文
依靠 Checkpoint 机制,进行二阶段提交,从而保证数据的 Exactly-once 一致性。 具体可以这样说:在 Checkpoint 过程中,每个算子只会进行准备提交的操作。比如数据会提交到外部的临时存储目录下,所有任务都完成这次 Checkpoint 后会收到一个信号,之后才会执行正式的 commit,把所有分布式的临时文件一次性以事务的方式提交到外部系统。 这种算法在当前有限流的情况下,作业结束后并不能保证有 Checkpoint,那么最后一部分数据如何提交? 在 1.14 中,这个问题得到了解决。Task 处理完所有数据之后,必须等待 Checkpoint 完成后才可以正式的退出,这是流批一体方面针对有限流任务结束的一些改进。 三、checkpoint 机制 1. 现有...阅读全文
些AI应用还可令科学家如虎添翼。在他眼中,AI是一个可以孵化出无数工具,推动各行各业前进的基础平台。 随着AI行业的不断进步,AI应用不再只是充斥着行业热词的纸上项目,已经发展为成熟的工具,助力多个行业的生产服务,也必将催生出无数新企业。 各种AI工具已显现出巨大的日常应用潜力,可以实现人类的各种想法,改善人类的工作方式,比如由Stability.ai发布的开源Stable Diffusion模型,Microsoft和OpenAI联合打造的AI编程工具Copilot,OpenAI开发的语言生成模型GPT-3和图像生成平台DALL-E以及爆火的聊天机器人模型ChatGPT。 Sam Altman还表示,5年后,我们应该不会再使用Transformer模型了。虽然Transformer很好,但他...阅读全文
、Hyperloglogs等。 Redis具备LRU淘汰、事务实现、以及不同级别的硬盘持久化等能力,并且支持副本集和通过Redis Sentinel实现的高可用方案,同时还支持通过Redis Cluster实现的数据自动分片能力。 Redis的主要功能都基于单线程模型实现,也就是说Redis使用一个线程来服务所有的客户端请求,同时Redis采用了非阻塞式IO,并精细地优化各种命令的算法时间复杂度,这些信息意味着: Redis是线程安全的(因为只有一个线程),其所有操作都是原子的,不会因并发产生数据异常 Redis的速度非常快(因为使用非阻塞式IO,且大部分命令的算法时间复杂度都是O(1)) 使用高耗时的Redis命令是很危险的,会占用唯一的一个线程的大量处理时间,导致所有的请求都被拖慢。(例如时间复杂度为O(N)的...阅读全文
由于人工智能 / 机器学习日益集成到应用和业务流程中,因此生产级机器学习模型需要更多可扩展的基础设施和计算能力,以用于训练和部署。 现代机器学习算法在大量数据上进行训练,并且需要数十亿次迭代才能使成本函数最小化。这类模型的垂直扩展会遇到操作系统级别的瓶颈,包括可提供的 CPU、GPU 和存储的数量,而且对于这种类型的模型,已经证明效率并不高。更为高效的并行处理算法,例如异步训练和 allreduce 式训练,需要一个分布式集群系统,由不同的 worker (工作器)以协调的方式同时学习。 可扩展性对于在生产环境中服务深度学习模型也非常重要。将单个 API 请求处理到模型预测端点可能会触发复杂的处理逻辑,这将花费大量时间。由于更多用户访问模型的端点,为了有效地处理客户端请求,需要更多服务实例...阅读全文
出现的原因,又是谁在何时报告了某个功能缺陷等等。 使用版本控制系统通常还意味着,就算你乱来一气把整个项目中的文件改的改删的删,你也照样可以轻松恢复到原先的样子。 但额外增加的工作量却微乎其微。 1.1.1集中化的版本控制系统,代表Svn 缺点: 1、依赖中央服务器。 如果宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。 2、如果中心数据库所在的磁盘发生损坏,又没有做恰当备份,将丢失所有数据——包括项目的整个变更历史,只剩下人们在各自机器上保留的单独快照。 3、整个项目的历史记录被保存在单一位置,就有丢失所有历史更新记录的风险 4、必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,效率就很低了。 1.1.2分布式版本控制系统,代表Git...阅读全文
常见做法。 那如何解决侵入性的问题呢?这个问题随着容器编排技术的成熟有了新的解法。Kubernetes可以不侵入应用层,在容器层解决问题,比如K8S Service就具有服务发现、负载均衡的能力,HPA具有动态扩容的能力。随着K8S的快速发展,云原生的概念,也就越来越深入人心,那如何利用好K8S提供的基座能力,将更多的分布式能力下沉,让应用开发回归业务呢?其中Service Mesh提出的Sidecar模式,就很好的解决了微服务架构中网络通信的问题。Sidecar主要就是用来处理诸如服务发现、负载均衡、请求熔断等一系列非业务需求,应用在部署时动态插入Sidecar,服务间的通信通过Sidecar进行代理,以完成对服务间网络通信的接管。 到这里,微服务开发在Service Mesh的帮助下,已...阅读全文
对于云主机与云主机之间,只有轻微差异(小包场景下,pps 会有 3~5% 损耗),而且Pod网络性能各项指标(吞吐量,包量,延迟等)不会随着节点规模增大而削减。而Flannel UDP,VXLan模式和Calico IPIP的模式存在明显的性能消耗。Pod能直通公有云和物理云。对于使用公有云和物理云的用户而言,业务上K8S少了一层障碍,多了一份便利。而Flannel的host gw模式下,容器无法访问公有云和物理云主机。 而CNI的工作流程如下所示。 创建Pod网络过程: 删除Pod网络过程: Pod IP 消失问题的排查与解决 为了测试CNI插件的稳定性,测试同学在UK8S上部署了一个CronJob,每分钟运行一个Job任务,一天要运行1440个任务。该CronJob定义如下...阅读全文
在构建 Docker 容器时,应该尽量想办法获得体积更小的镜像,因为传输和部署体积较小的镜像速度更快。但 RUN 语句总是会创建一个新层,而且在生成镜像之前还需要使用很多中间文件,在这种情况下,该如何获得体积更小的镜像呢? 你可能已经注意到了,大多数 Dockerfiles 都使用了一些奇怪的技巧: FROM ubuntu RUN apt-get update && apt-get install vim 为什么使用&&?而不是使用两个 RUN 语句代替呢?比如: FROM ubuntu RUN apt-get update RUN apt-get install vim 从 Docker 1.10 开始,COPY、ADD 和 RUN 语句会向镜像中添加新层。前面的示例创建了两个层而不是一...阅读全文
去年,相关部门印发《推进互联网协议第六版(IPv6)规模部署行动计划》,提出要在2018年末实现国内IPv6活跃用户数达到2亿,2020年达到5亿。随后,阿里云宣布,将首先在公网接入相关产品,如负载均衡SLB、弹性公网IP(EIP)产品上支持提供IPv6服务。 来自下一代互联网国家工程中心的最新消息,该中心正式宣布推出IPv6公共DNS:240c::6666,这是面向全球免费提供的公共DNS服务。 同时,还有一个备用DNS:240c::6644。 据介绍,北京、广州、兰州、武汉、芝加哥、弗里蒙特、伦敦、法兰克福等地区均有部署递归节点。基于IPv6 BGP Anycast方式部署,让用户可以实现就近访问,降低延迟。 不仅如此,IPv6公共DNS将通过主动同步com/net域名、缓存热点域名等...阅读全文
iptables,MySQL 8.0,MariaDB 10.3,PostgreSQL 10 和 9.6,Redis 4.0等等。主要特性有: 简化应用程序开发 —— 通过减少设置和配置工作,可以更快地编写代码 对于刚接触 Linux 的开发者来说,这是最简单的 RHEL 适用于传统和云/容器的应用程序,两者都有许多新工具 已经提供了许多工具来构建和测试应用程序 下载: 有三种方法可以访问 RHEL 8 beta,这取决于与 Red Hat 的现有关系: 当前的Red Hat开发会员可以通过Red Hat Developer下载。 如果不是开发会员,只需要在上面的链接注册一下即可,不需要费用。 如果是Red Hat Enterprise Linux的合作客户,登录Customer Portal就可以获取客户...阅读全文
形执行的通用抽象,为了获得更好的性能,其图执行器支持并发执行操作和异步 API 调用。在性能测试中,与 TensorFlow 当前的运行时相比,TFRT 将经过训练的 ResNet-50 模型(一种流行的图像识别算法)在图形卡上的推理时间缩短了 28%。 TFRT 仍处在早期开发阶段,它已经与 TensorFlow 集成,最终将成为其默认运行时。关于 TFRT 的更多信息,可查看 TensorFlow 官方博客。...阅读全文
运行时为每个程序包 init 发出一行标准错误,总结其执行时间和内存分配 - 编译器现在可以内联具有未标记的循环、方法值和类型判断的函数 详细内容请查看[更新公告](https://blog.golang.org/go1.16)。...阅读全文
,IPC(每时钟周期指令数)对比Zen2提升19%,而在特定企业级负载、云端负载、HPC高性能计算负载中,更是都可以带来最多大约2倍的性能提升。不过针对数据中心市场,Zen3架构还有一些特定的变化,比如说ISA指令集,就新增了多达7条。加速、加密、解密算法部分扩展了AVX2指令,可以支持到256位。...阅读全文
的主要问题是缺乏对现代密码的支持(如ECDHE和AEAD),在规范中存在支持旧密码的要求,在计算机工程发展的现阶段,其可靠性受到质疑(例如,要求支持 TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA,MD5 和 SHA-1 用于完整性检查和认证)。对传统算法的支持已经导致了ROBOT、DROWN、BEAST、Logjam和FREAK等攻击。然而,这些问题并不是协议的直接漏洞,而是在执行层面上被关闭了。TLS 1.0/1.1协议本身并不包含可以被利用来进行实际攻击的关键漏洞。...阅读全文
2022年1月18日,全球企业级开源解决方案领导者SUSE宣布:NeuVector代码库现已在GitHub上向开源社区开放。将之前的专有技术全部开源是对SUSE开源文化的传承,也践行了SUSE向合作伙伴和客户提供开放、互操作性和创新的解决方案的承诺。基于本次发布,NeuVector成为了业界首个端到端的开源容器安全平台,唯一为容器化工作负载提供企业级零信任安全的解决方案。 三个月前,SUSE完成了对NeuVector的收购;此后,SUSE一直在考虑将这一云原生容器安全平台开源所涉及的技术和法律问题。NeuVector是业界领先的安全和合规解决方案,已被全球知名企业广泛采用;其代码库的开源不仅使NeuVector成为开源社区的首选技术,还为受严格监管的客户(包括政企、金融)提供了更可靠...阅读全文
今天,Debian开发者兼Ububtu成员Julian Andres Klode宣布,他计划在2017年1月1日关闭对APT资源库的SHA-1支持。业界反对SHA-1(安全散列算法)加密已有多时,其被普遍用于签发数字内容、证书吊销列表(CRL)和数字证书。但到2017年1月1日的时候,事情可能会对浏览互联网的老用户产生影响。 需要指出的是,SHA-1加密也被用于签发基于Debian的操作系统的高级包工具(APT)资源库,比如热门的Ubuntu和Linux Mint。 这些经过SHA-1签名的资源,将于明年年初自动被Ubuntu 16.04 LTS(Xenial Xerus)和Ubuntu 16.10(Yakkety Yak)给拒绝。 Julian Andres Klode在邮件公告中称...阅读全文
,IETF QUIC "在TCP上明显优于TLS 1.3的HTTPS"。例如,谷歌搜索延迟降低了2%,而YouTube的重新缓冲时间减少了9%。 因此,该公司在其浏览器中启用了对IETF QUIC的支持,不少于25%的用户从今天起会自动启用。根据谷歌的说法,本次实现是基于29号草案,这不是最新的版本,但在后续的草案中没有突破性的变化。谷歌还没有添加的是对IETF QUIC 0-RTT的支持,它将在以后出现,这将带来更好的性能。 HTTP/3还没有最终确定,目前还不清楚浏览器何时能有一个完全最终确定的实现。...阅读全文
当 Torvalds 将某些代码标记为“dontuse”,通常表明这个问题比较大。在 5.12 首个候选版本更新中,破坏了交换文件(swapfile)的处理。具体来说,更新后的代码会失去指向 swapfile 开头的正确偏移。用 Torvalds 自己的话来说,“交换还是会发生,但它发生在文件系统的错误部分,最终结果显然是灾难性的”。这样 Linux 内核如果想要将内存中的内容分页到磁盘上的时候,数据就会落在相同磁盘和 swapfile 活跃的分区的随机部分上,而且这不是作为文件,而是作为垃圾直接写入到磁盘的原始扇区。这意味着不仅要覆盖现有文件中的数据,还要覆盖相当大块的元数据,这些元数据的损坏很可能会导致整个文件系统无法挂载和使用。Torvalds 继续指出,如果你根本不使用 swap...阅读全文