InfraPub 为您找到相关结果 675

5G路由器来了:模块化猫设计

距离AT&T宣布“2018年底”推出12城市5G网络的最后期限越来越近。 近日,AT&T 宣布与Cradlepoint建立合作伙伴关系,Cradlepoint提供多种型号的“5G Evolution”路由器。这些路由器现在提供高速4G网络,并承诺在未来支持更快的5G网络。 AT&T将在在全国范围内开始销售5G网络路由器,而无需在特定区域内保证5G网络服务。 5G路由器登(图片来源:venturebeat) 从积极的方面来说,5G Evolution设备承诺的功能和性能可能至少足以满足当前的部署需求。 车载路由器将支持从出租车到应急响应车辆的所有设备,以获得精确的GPS位置和高达1Gbps的数据性能,FirstNet 用户可享受增强的安全性和优先通信。 从公告中不清楚的是...阅读全文

聊聊很重要的内核技术eBPF

中存储任何类型的数据。内核将键和值视为二制 blobs,它并不关心您在映射中保留的内容。 BPF验证程序包括多种保护措施,以确保您创建和访问映射的方式是安全的。当我们解释如何访问这些映射中的数据时,我们也将解释这些保护措施。 当然BPF映射类型有很多,比如哈希表映射,数组映射,Cgroup 数组映射等,分别满足不同的景。 2)验证器 BPF验证程序也是在您的系统上运行的程序,因此,对其行严格审查是确保其正确执行工作的目标。 验证程序执行的第一项检查是对VM即将加载的代码的静态分析。第一次检查的目的是确保程序有预期的结果。为此,验证程序将使用代码创建有向循环图(DAG)。验证程序分析的每个指令将成为图中的一个节点,并且每个节点都链接到下一条指令。验证程序生成此图后,它将执行深度优先搜索...阅读全文

博文 2020-08-16 11:08:44 debian.cn

取代TCP:工程师宣布QUIC协议已完成RFC 9000发布

访问:天猫6·18 “开门红”超级红包活动主会 | 手机版京东6·18“京享红包”25日12点开始领取 最大面额高达18618元 (图 via Orozco 2018)据悉,工程团队中有三位核心成员,且他们对 QUIC 的承诺深信不疑。其中包括 IETF QUIC 工作组只需 Mark Nottingham,协议主要贡献者兼 quicly 创作者 Kazuho Oku,以及核心文档集编辑、杰出工程师 Jana Iyengar 。最新消息是,互联网工程任务组(IETF)已经发布了 RFC 9000,且得到了 RFC 9001 / 9002 / 8999 支持,意味着 QUIC 已从草稿阶段转向了 1.0 正式版。与此同时,基于 QUIC 的 HTTP/3 也有望紧随其后很快发表。对于...阅读全文

Debian GNU/Linux 诞生 27 周年

8月16日,Debian 官方博客发文庆祝 Debian GNU/Linux 诞生 27 周年。 由于 COVID-19 大流行,官方表示今年无法像以往那样组织线下的现庆祝活动,因此他们要求贡献者、开发者、维护者、团队、社区和用户在8月16日(和/或15日)在线宣传 Debian 项目和举办庆祝活动。 如果你所在地区没人组织庆祝活动,或者自己不想参加活动,Debian 团队提议使用 OBS Studio 把自己准备的庆祝活动录制下来然后上传至网络或者直接开直播。 Debian 于1993年8月16日由 Ian Murdock 首次发布,最初将其称为”Debian Linux Release”。当时,他将这封著名的电子邮件发送到 comp.os.linux.development 邮件列表...阅读全文

博文 2020-08-17 08:32:32 debian.cn

Facebook 开源的一组 Linux 内核组件与工具

近日,Facebook 开源了一套解决重要计算集群管理问题的 Linux 内核组件和相关工具,这些项目覆盖了资源控制、资源利用、工作负载隔离、负载均衡、测量和监控等方面:BPF、Btrfs、Netconsd、Cgroup2、PSI、Oomd。 Facebook 表示这些项目现在已大规模用于其所有基础设施生产环境中,并用于其它许多企业组织的环境中。 BPF:https://facebookmicrosites.github.io/bpf/ BPF 是 Linux 内核中一种高度灵活、高效率的代码执行引擎,可以让字节码在各个 hook 点运行,以使用自定义代码。虽然 BPF 已广泛用于数据包过滤,但是 BPF 的指令集具有很强的通用性和灵活性,足以支持和允许除网络之外的众多使用合,比如跟踪和...阅读全文

博文 2018-11-24 09:27:14 debian.cn

谷歌开源 Pigweed:用于提升嵌入式开发效率

中的经典挑战是减少从运行 git clone 到在设备上执行二制文件的时间。对于生产嵌入式项目,往往通常需要一整套工具。而 Pigweed 能够通过虚拟环境提供简化设置的工具,具体来说,Pigweed 的 pw_env_setup 模块中的引导脚本可设置当前的 shell 以访问一组标准化工具——包括 Python 3.8、clang 格式以及 ARM 编译器。所有这些都是在虚拟环境中完成的,因此无需修改系统的默认环境。 在典型的嵌入式开发中,即使添加很小的更改也需要一些额外的手动步骤。而 Pigweed 的 pw_watch 模块直接解决了这种效率低下的问题,它提供了一个监视者(watcher),该监视者可以在保存文件时自动调用构建,还可以运行受代码更改影响的特定测试。这大大缩短了更改的...阅读全文

博文 2020-03-22 08:35:14 debian.cn

当 Atom 遇见 VSCode:微软将对 GitHub 做的 6 件事

cloud, intelligent edge ” ,对 GitHub 的收购将对此目标发挥重要作用。Friedman 表示,云是开发者的核心需求,微软将致力于不仅仅将自己的 Azure 云服务插入到 GitHub 中,还会集成其他平台(如 AWS 和 Google 云平台)以帮助开发者。 5、驻 GitHub Marketplace 针对 GitHub Marketplace ,微软有着许多的规划。Friedman 表示,微软计划利用该市使开发者社区中的所有人都可以使用微软的所有开发工具和服务。 6、集成 Visual Studio Code 最后,Friedman 表示,微软将直接将其开源的 Visual Studio Code 开发环境的功能整合到 GitHub 中,为开发者提供“更加无缝...阅读全文

博文 2018-06-06 11:08:17 debian.cn

大起底:揭开亚马逊云计算丰厚利润的秘密 - 电子商务

访问:百度网盘联合会员买1得5:QQ音乐、优酷视频…… 2020年,云计算实现了130亿美元的运营利润,从而帮助亚马逊在当年实现了210亿美元的净利润。怪不得亚马逊创始人贝索斯从首席执行官职位卸任之后,他把指挥公司的大权交给了云计算掌门人安迪·贾西。在全球云计算市,阿里巴巴、Google、IBM、微软和甲骨文公司都在挑战亚马逊。而和阿里巴巴和Google不同的是,亚马逊云计算业务已经盈利。今年第二季度是贾西执掌亚马逊云计算的最后一个季度,该季度云计算实现了40亿美元的运营利润,同比增长了25%,超出了分析师预期,另外营业收入则增长了37%。七月份,云计算业务另外一位高管亚当·塞林普斯基(Adam Selipsky)接替了贾西的职务,此人曾经在亚马逊云计算工作11年,后来创业,并且把数据软...阅读全文

博文 2021-09-07 11:41:54 cnBeta.COM

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

TLC闪存旗鼓相当。 注:每Cell单元存储数据越多,单位面积容量就越高,但同时导致不同电压状态越多,越难控制,导致颗粒稳定性越差,寿命低,利弊都有。 不得不承认,TLC闪存的出现大大提升了SSD的容量,并在一定程度上降低了SSD的价格。不过,依旧没解决SSD价格的难题,大容量SSD仍旧贵。小容量SSD+大容量HDD的存储方案,终究没有单纯大容量SSD来得好。 当QLC 闪存的诞生,也许既廉价又拥有超大容量的SSD,从理想变为现实。 QLC与TLC之间的区别: 1、寿命 前段时间,东芝称其QLC NAND拥有多达1000次左右的P/E编程擦写循环,打破100-150次魔咒,可以与TLC闪存颗粒寿命想媲美。如果真的达到这个标准,那么QLC SSD就能够“理直气壮”入市了。 1000次寿命,对于...阅读全文

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

希捷HAMR硬盘即将商用:目标100TB

看着SSD气势汹汹,机械硬盘丝毫不敢懈怠,唯有不断推陈出新大容量产品,同时把容价比做到更低。据说淘宝上出现了一批全新/充新HGST 8T企业盘,由不景气的乐视云内部流出,居然只要千元出头。 就目前而言,西数、东芝均发布了14TB,前者使用SMR(叠瓦式磁记录),后者使用传统的PMR(垂直磁记录),9碟充氦。 而且,巨头均规划了16TB硬盘,预计明年推向市。 近日,知名存储服务商Backblaze刊文报道,希捷CTO(首席技术官)Mark Re介绍称,HAMR(热辅助磁记录)存储技术硬盘已经越来越接近商用了。 今年10月的容量密度还是2Tbpsi(每平方英寸容量),Mark Re此次透露,目前已经达到5Tbpsi,是当下希捷最大的12TB硬盘(PMR)1.3Tbpsi的3.8倍,而HAMR...阅读全文

Parrot 4.5 发布:基于 Debian 的 Linux 发行版

Parrot 是一个基于 Debian 的 GNU/Linux 发行版,其设计上主要考虑安全性和隐私性。 Parrot 通常被用于渗透测试、计算机取证、反向工程、攻击、云计算渗透测试、隐私/匿名、密码等合。它包含你在网上开发自己的软件或保护隐私所需的一切。 Parrot 4.5 正式发布,其主要变化在引擎层面。Parrot 4.5 放弃了对 32 为应用程序和架构的支持,不在为 i386 体系的机器提供任何更新。现在,32 位的计算机已不再能够运行完整的 Pentest 活动,也不能为我们的安全保护系统提供硬件加速支持。 Parrot 4.5 下一步是支持 OVA 格式的虚拟设备,这些虚拟设备支持倒入 VirtualBox、VMWare 和其他著名的虚拟化环境的程序文件。这些虚拟环境仍然...阅读全文

博文 2019-01-23 13:31:32 debian.cn

C++20 最新进展:已完成设计,加入模块和协程

C++ 委员会于上周在夏威夷科纳举办了一官方 ISO 会议,以确定下一个国际标准 C++20 的功能集。 根据会议报告,C++20 的功能设计现已完成。计划于 2019 年 7 月在科隆举行的会议上,完成 C++20 的规范并发送一份委员会草案以供审查。 上周会议确定添加至 C++20 草案的新特性: Modules!Coroutines!static, thread_local, and lambda capture for structured bindings.std::polymorphic_allocator<>.std::midpoint and std::lerp.std::execution::unseq execution policy.std::ssize...阅读全文

博文 2019-02-24 09:34:07 debian.cn

AMD抢先发布7nm芯片"米兰":只为抢更多服务器市场份额

,IPC(每时钟周期指令数)对比Zen2提升19%,而在特定企业级负载、云端负载、HPC高性能计算负载中,更是都可以带来最多大约2倍的性能提升。不过针对数据中心市,Zen3架构还有一些特定的变化,比如说ISA指令集,就新增了多达7条。加速、加密、解密算法部分扩展了AVX2指令,可以支持到256位。...阅读全文

博文 2021-03-16 10:06:31 cnBeta.COM

华为正式发布 openEuler 系商业发行版操作系统

统的实现,深度参与到社区的创新和实践。除标准组件外,此次openEuler社区还孵化了A-Tune和iSula两个开源子项目:A-Tune是智能性能优化系统软件,即通过机器学习引擎对业务应用建立精准模型,再根据业务负载智能匹配最佳操作系统配置参数组合,实现系统整体运行效率提升;iSula是一种云原生轻量级容器解决方案,可通过统一、灵活的架构满足ICT领域端、边、云景的多种需求。 开发者可以通过访问如下链接,获得相关代码和文档,供参考学习、了解openEuler操作系统的架构和源代码, https://gitee.com/openeulerhttps://gitee.com/src-openeuler...阅读全文

博文 2020-03-27 11:10:15 debian.cn

[图]ARM推出全新armv9架构:预估五年内装备3000亿颗芯片

访问:2021阿里云上云采购季:采购补贴、充值返券、爆款抢先购云通信分会:爆款产品低至7.2折,短信低至0.034元/条 ARM 首席执行官 Simon Segars 表示:“当我们展望由人工智能定义的未来时,我们必须奠定一个领先的计算基础,为应对未来的独特挑战做好准备。armv9 就是答案,它将会成为下个 3000 亿台 ARM 芯片的最前沿,其驱动力是建立在通用计算的经济性、设计自由度和可获得性基础上的普遍的专业化、安全和强大的处理需求”。armv9 架构有两个核心侧重点:人工智能和安全。ARM 表示到 21 世纪中叶,将会有超过 80 亿台语音辅助设备,90% 的应用将包含 AI 元素。ARM 与富士通合作创建了可扩展矢量扩展(SVE),现在,SVE2 是 armv9 的一部分,用...阅读全文

博文 2021-03-31 10:20:33 cnBeta.COM

Backblaze多年研究发现:SSD可靠性远超机械硬盘

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 个...阅读全文

AMD 2020处理器产品线曝光: Zen2 APU与Zen 3锐龙4000

Ryzen嵌入式G系列芯片,代号River Hawk,Zen 2架构,最高4核8线程。 第三季度的产品最富竞争力,毕竟Zen 3架构将新鲜登,首秀是代号Milan的第三代EPYC,最高64核128线程。8月份将是锐龙4000桌面处理器和锐龙APU产品,前者当然升级到Zen 3,代号Vermeer(维米尔),最高16核,延续AM4接口;后者则升级为Zen 2架构,采用Ryzen 4000G/GE的命名,Zen 2架构+Navi。 同年第四季度是线程撕裂者4000产品,最高64核128线程。这一路线图也呼应了本周一则消息,AMD最快10月份推出第三代线程撕裂者,最高48核?...阅读全文

博文 2019-07-21 19:05:34 debian.cn

三星谈论下一代DRAM解决方案:GDDR7、DDR5、LPDDR5X和V-NAND

LPDDR5X DRAM和36Gbps GDDR7 DRAM,它们将为数据中心、HPC、移动、游戏和汽车市领域带来新的功能。除了传统的DRAM之外,三星还强调了定制的DRAM解决方案的重要性,如HBM-PIM、AXDIMM和CXL,它们可以推动系统级创新,更好地处理全球数据的爆炸性增长。2030年达到1000多个V-NAND层自十年前成立以来,三星的V-NAND技术已经发展了八代,带来了10倍的层数和15倍的比特增长。三星最新的512Gb第八代V-NAND的比特密度提高了42%,达到了迄今为止512Gb三层单元(TLC)存储器产品中的行业最高比特密度。世界上最高容量的1Tb TLC V-NAND将在今年年底前提供给客户。该公司还指出,其第九代V-NAND正在开发中,并计划于2024年行大规模生产。到...阅读全文

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

我们很高兴在今年之内行第四次——也是最后一次版本更新公告,即Kubernetes 1.9的诞生! 今天发布的版本在发展水平方面更加突出,功能越来越丰富,稳定性更为强大,社区贡献也更加令人瞩目。作为今年年内的第四次成果发布,我们希望借此机会回顾Kubernetes项目在各个关键性领域取得的展。其中特别值得一提的是Apps Workloads API正式发布通用稳定版。这将确保潜在用户切实获得运行关键性任务工作负载时所必需的功能稳定性。项目的另一大重要里程碑则在于以测试版本形式提供Windows支持能力,这为众多仅面向Windows的应用程序与工作负载开启了一扇通往Kubernetes的大门,从而显著扩展了Kubernetes的实施景与企业就绪水平。 Workloads API通用版本...阅读全文

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

Node.js Vs. PHP:你应该选择哪一个

PHP 是一种编程语言,Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js VS PHP,哪一方可以赢得这战争取决于你构建的网站类型。比方说,如果你想构建一个实时的聊天应用程序,那么选择 Node.js 是明智的,因为它可以轻松处理大量的客户端请求。但是,这并不意味着PHP 不可以,请看完 Node.js VS PHP 后再决定用谁构建你的网站。 1.性能: 在性能方面,Node.js 显然赢了这一局。由于 Node.js 遵循事件驱动的非阻塞I/O模型,与传统的后端技术相比,Node.js 能够处理大量的服务器请求。PHP 遵循一个阻塞模型,其中在服务器端创建多个线程来处理多个客户端请求,如果代码没有被优化,它会导致高服务器负载和响应时间...阅读全文

博文 2017-12-23 23:15:39 debian.cn

使用 Go 语言的三个原因

定不是提供这些安全保障的第一个主流语言,Java(1995)可能是该冠军的竞争者。关键是,世界对不安全的编程语言没有胃口,所以人们默认认为,Go 是内存安全的。 开发人员生产力 从 20 世纪 70 年代末,开发人员的时间变得比硬件所耗费的时间更昂贵了。开发人员的生产力是一个不断扩展的话题,但它归结为这一点:你花了多少时间做有用的工作,又有多少时间等待编译器或者失望地迷失在外部代码库中。 有个笑话说 Go 是在等待 C ++ 程序编译 时开发的。快速编译是 Go 的一个重要功能,也是吸引新开发人员的关键工具。虽然编译速度仍然是一个 永久的战 ,但公平地说,在其他语言中需要几分钟的编译,在 Go 中只需要几秒钟。 Go 程序员意识到生产力的更根本的问题是代码是 为了读而写的 ,所以将 代码的...阅读全文

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

总结系统设计中的33个黄金法则

Refer to https://www.linkedin.com/pulse/system-design-rules-navneet-kumar-p6n7f/ 系统设计很复杂,它需要设计者有深厚的计算机知识和专业知识,没有一种通用的设计可以适应所有业务景。尽管如此,还是有一些比较通用的规则可以供你设计系统时参考,也能帮助你在面试中摆脱困境。 1. 对于数据密集型系统 — 考虑使用缓存。 2. 对于写入量大的系统 — 使用消息队列行异步处理 3. 对于低延迟要求 — 考虑使用缓存和 CDN。 4. 需要𝐀原子性、𝐂一致性、𝐈隔离性、𝐃耐用性兼容数据库 — 选择 RDBMS/SQL 数据库。 5. 对于非结构化数据——可以选择NoSQL...阅读全文

如何重启 Kubernetes 中的 Pods

在使用 Docker 时,我们可以使用 docker restart container_id 来非常方便的重启容器,但是在 kubernetes 中并没有重启 pod 的命令。有时 Pod 意外终止时,我们希望重启 pod,来行排障或者尝试恢复服务。这时我们会发现蛋有点疼,没有一个很直观的方式来重启 pod。 这里我总结了几种重启 Pod 的方式,分两种情况讨论如何重启 K8S 中的 Pod,希望对大家有所帮助。 第一种方式:Deployment方式下重启Pod 大多数生产环境,使用的是 Deployment 方式部署应用。这种景下,我们可以直接删除对应的 Pod,让k8s去完成 pod 重建,命令: kubectl delete pod {podname} -n...阅读全文

博文 2020-07-13 21:23:30 debian.cn

轻量级发行版 Alpine Linux 介绍

Alpine Linux 操作系统是由社区开发的,面向安全的轻型 Linux 发行版,它和其他常见的 Linux 发行版不同。Alpine 采用了 musl libc 和 busybox 以减小系统体积和运行时的资源消耗,功能上要比 busybox 完善的多,因此得到开源社区越来越多的青睐。 在保持瘦身的同时,Alpine 提供了自己的包管理工具 apk,可以在官方网站上查询包信息,也可以通过类似 apt 和 yum 的方式,在命令行查询或安装软件。 Alpine 支持广泛的景,它特别为资深/重度Linux用户而优化,关注安全,性能和资源利用率,是一个优秀的可适用于生产环境的基础系统。 Alpine Docker 镜像继承了 Alpine Linux 发行版的这些优势。相比于其他...阅读全文

博文 2018-06-16 13:48:00 debian.cn

2017年的Linux内核防护依然脆弱

"Linux 内核 “社区” 对待安全的优先级并不高,虽然经历了 2000 年代的多次大规模漏洞利用事件但并没有让 Linus Torvalds 本人改变 "A bug is bug" 的哲学,由于 Linux 内核的安全问题逐渐影响到了 Android 和 IoT 设备,一次 华盛顿邮报的曝光促使了 KSPP(Linux 内核自防护项目)的成立。 KSPP 是由 Linux 基金会旗下的 CII(基础架构联盟)管理,其吸纳了来自诸多大厂商(Google, RedHat, Intel, ARM 等)的工程师行联合工作,可惜的是两年的时间过去了,KSPP 大多时候只是在重复的抄袭 PaX/Grsecurity 的各种特性以获得各自雇主那里的 KPI 和 credit,各种混乱的代码合并到了...阅读全文

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

细数k8s支持的4种类型的container - 侃豺小哥

截止目前k8s1.18,k8s已经支持标准容器,sidecar容器,init 容器,ephemeral 容器 4种类型的containers。本文我们详细介绍一下这4种容器的特性已经使用景。 Ephemeral 容器 临时容器与其他容器的不同之处在于,它们缺少对资源或执行的保证,并且永远不会自动重启,因此不适用于构建应用程序。临时容器使用与常规容器相同的 ContainerSpec 段行描述,但许多字段是不相容且不允许的。 临时容器没有端口配置,因此像 ports,livenessProbe,readinessProbe 这样的字段是不允许的。 Pod 资源分配是不可变的,因此 resources 配置是不允许的。 有关允许字段的完整列表,请参见临时容器参考文档。 临时容器是使用...阅读全文

博文 2021-08-20 11:45:32 博客园

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

描和打印使用 CUPS 打印以及使用 SANE 扫描对于越来越多的硬件型号已经可以实现无需任何驱动程序(通常是非自由驱动程序)即可正常操作,尤其是过去五年以来出现在市上的新设备。CUPS 和无驱动打印使用以太网或无线网络连接的现代打印机已经可以使用无驱动打印功能,由 CUPS 和 cups-filters 软件包提供支持,此功能已在 Debian buster 发行注记中描述。Debian 11 “bullseye” 提供了新软件包 ipp-usb;它使用许多现代打印机所支持的、供应商中立的 IPP-over-USB 协议,且 cups-daemon 推荐安装该软件包。它使得 USB 设备可被视作网络设备,以将无驱动打印扩展至包括 USB 连接的打印机。在 ipp-usb 软件包中包含的...阅读全文

DevOps 越来越流行,2019 年这八大趋势值得关注

写代码并通过自动化脚本来测试各种案例的测试人员的需求将大幅增长。如果你是测试人员并且在是否学习编码方面处于两难境地,我们建议你还是学习编码吧。了解不同的 DevOps 工具和自动化脚本在当今的软件开发中起着至关重要的作用,并且将在 2019 年占据主导地位。 如果测试人员不学习编写代码和自动化测试脚本,就有可能被淘汰。手动测试将在 2019 年过时,因为它们需要耗费大量的时间。测试自动化不仅可以提高效率,还可以确保更快地将功能交付给市。 微服务架构采用率增加 DevOps 和微服务将齐头并。微服务是独立的实体,因此在出现问题时不会给其他系统造成破坏。微服务架构可以帮助公司轻松部署和添加新功能。预计更多的企业将会转向微服务架构,以改他们的在线运行时间和有效交付。不要只是因为别人采用了微服...阅读全文

博文 2018-12-10 22:49:57 debian.cn

案例:Redis命令不当 引起数据库雪崩 造成数百万损失

中删除。同时还可以提供一个守护程,当发现备份队列中的消息过期时,可以重新将其再放回到主消息队列中,以便其它的消费者程序继续处理。 7.谨慎全量操作Hash、Set等集合结构 在使用HASH结构存储对象属性时,开始只有有限的十几个field,往往使用HGETALL获取所有成员,效率也很高,但是随着业务发展,会将field扩张到上百个甚至几百个,此时还使用HGETALL会出现效率急剧下降、网卡频繁打满等问题【时间复杂度O(N)】,此时建议根据业务拆分为多个Hash结构;或者如果大部分都是获取所有属性的操作,可以将所有属性序列化为一个STRING类型存储!同样在使用SMEMBERS操作SET结构类型时也是相同的情况! 8.根据业务景合理使用不同的数据结构类型 目前Redis支持的数据库结构类型...阅读全文

博文 2018-10-27 10:18:18 debian.cn

架构师详解 Nginx 架构

引言:众所周知,Nginx 服务器是一个高性能的 Web 和反向代理服务器。Nginx 在激烈的 Web 服务器竞争中依旧保持良好的发展势头,一度成为 Web 服务器市的后期之秀,这一切跟 Nginx 的架构设计是分不开的。 一. Nginx 模块化设计 高度模块化的设计是 Nginx 的架构基础。Nginx 服务器被分解为多个模块,每个模块就是一个功能模块,只负责自身的功能,模块之间严格遵循“高内聚,低耦合”的原则。 核心模块 核心模块是 Nginx 服务器正常运行必不可少的模块,提供错误日志记录、配置文件解析、事件驱动机制、程管理等核心功能。 标准 HTTP 模块 标准 HTTP 模块提供 HTTP 协议解析相关的功能,如:端口配置、网页编码设置、HTTP 响应头设置等。 可选...阅读全文

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

为什么 Django 能持续统治 Python 开发世界

码的困境结束,从而实现更快的开发。 简而言之,Web框架可以简化Web开发。 如果您想深入了解Web框架及其优点,请点击此处。 为什么Django是Python开发者的最佳选择 Django是一个Python编写的,高级的,MVC风格的开源库。 Django也被称为“完美主义者的最终框架”,它最初是为新闻网站设计的,因为它允许开发人员编写数据库驱动的Web应用程序,而无需从头开始编码。 除了更快完成常见的Web开发任务,Django还可以保持设计干净且实用。 Django是Python Web开发新人的最佳选择,因为官方文档和教程是几个(同类)软件开发框架中最好的。 技术市充斥着一系列网络框架,但Django在最受欢迎的服务器端Web框架里处于顶峰位置。设计Django背后的座右铭很简单...阅读全文

博文 2017-07-21 14:15:11 debian.cn

悼念声明 缅怀创始人 Ian Murdock

和开源社区文化的过程中做正取的事情,不管是技术上,还是道德上。每一次准备好的系统发布,都包含着对自由软件和自由精神立的坚定支持。 Ian 对开源的忠诚奉献一直引导着他的工作,不管是在 Debian 还是在后来的年月里,一直伴随他朝着最好的未来。Ian 的梦想一直都在发扬和纪旭,Debian 社区仍然非常活跃,成千上万的开发者们用数不清的工作时间带给世界一个安全可靠的操作系统。 这段特殊时期,Debian 社区的精神会一直陪伴着 Ian 的家庭,会陪伴一起共度难关。 他的家庭同时也请求大家在这个艰难的时刻留给他们一些隐私空间,我们对此非常尊重,同时也号召大家尊重 Ian 家人的愿望,来自 Debian 社区和开源社区的关心他的人们的慰问,可以发送到这个专属邮箱(in-memoriam-ian...阅读全文

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

Intel:当下绝大多数用户不会受益PCIe 4.0技术

在AMD发布的7nm锐龙3000处理器及Navi架构RX 5700显卡中,PCIe 4.0都是重要的技术升级,而且是消费级首发支持,这对AMD来说很重要,因为以往引领新平台技术升级的主要是Intel,这次不一样了,AMD要夺回“技术发展的C位。 对于PCIe 4.0技术的好处,AMD日前开始强调该技术的三大优势: 速度更快,x16 双向带宽达到了 32GB/s,是 PCIe 3.0 的两倍。向下兼容,PCIe 4.0 能兼容 PCIe 3.0 设备。更多连接,PCIe 4.0 带宽高,1条顶2条,可以连接更多设备而不需要担心性能下降。 面对AMD在PCIe 4.0上的宣传,Intel这边也坐不住了,日前在一活动中开始怼PCIe 4.0,Intel表示绝大多数用户从PCIe 4.0技术都不...阅读全文

Debian 安装包的简单制作

在Linux分发软件有两种形式,一种是源码,一种是安装包。当目标机器不带有编译环境,且不能联网时,安装包就是唯一的方案了。 Linux 下的安装包有多种格式,不同Linux使用的格式并不完全相同。市上主流的安装包格式是*.deb *.rpm 其中deb是debian系列的安装包,rpm是CentOS系列的安装包。 本文主要介绍的是一种简单的deb安装包的制作方法,使用范围有限。如需了解更多可以阅读Debian 新维护人员手册 所需工具 如果没有安装dpkg工具包的话,就先安装(一般是默认安装的) sudo apt-get install dpkg 文件结构 example-package ├── DEBIAN (必须) │ ├── control (必须) │ └── md5sums...阅读全文

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

美国东海岸大范围断网 谷歌、亚马逊等公司服务受影响 - 通信运营商

题已经解决。该公司早些时候曾表示,正在调查与一家互联网供应商的连接问题,该问题导致AWS服务和许多依赖AWS的在线服务中断。谷歌的一位发言人表示,该公司已经了解到有关影响其部分产品访问问题的报道,但尚未发现其服务存在问题。据Downdetector.com报道,零售交易平台嘉信理财(Charles Schwab Corp)和罗宾汉(Robinhood)的用户也连续第二天报告了市交易中的操作问题。“今天上午早些时候,我们遇到了银行余额不能准确显示的问题,这个问题已经得到了解决。交易功能没有受到影响,”嘉信理财发言人表示。美国散户投资平台Robinhood表示,由于威瑞森的网络中断,其东海岸的客户可能在接入互联网方面遇到了问题,但其平台仍在运行。...阅读全文

互联网协议正在发生变化

当上世纪九十年代互联网开始被广泛使用的时候,其大部分的通讯只使用几个协议:IPv4 协议路由这些数据包,TCP 协议转发这些包到连接上,SSL(及后来的 TLS)协议加密连接,DNS 协议命名那些所要连接的主机,而 HTTP 协议是最常用的应用程序协议。 多年以来,这些核心的互联网协议的变化几乎是微乎其微的;HTTP 增加了几个新的报文头和请求方式,TLS 缓慢地行了一点小修改,TCP 调整了拥塞控制,而 DNS 引入了像 DNSSEC 这样的特性。这些协议看起来很长时间都一成不变(除了已经引起网络运营商们的大量关注的 IPv6)。 因此,希望了解(甚至有时控制)互联网的网络运营商、供应商和决策者对这些协议采用的做法是基于其原有工作方式 —— 无论是打算调试问题,提高服务质量,或施加政策...阅读全文

Linux系统诊断-内存基础

谈及linux内存,很多时候,我们会关注free,top等基础命令。当系统遇到异常情况时,内存问题的根因追溯,现诊断时,缺乏深层次的debug能力。本篇幅不做深层讨论,能把当前系统的问题描述清楚,是每个SRE应该具备的最基础能力。free========2.1 free命令原理free是通过查看 /proc/meminfo 来获取内存的使用情况。但是 /proc/meminfo 这个文件又是怎么来的?我们先了解下 /proc 目录:/proc 是一个虚拟文件系统,该目录下的所有文件都是伪文件,该类文件只存在于内存中,并不占用空间——使用 du -sh 即可验证,该模具路下的磁盘占用都是0。/proc 下的所有文件都是内核调用proc_create() 接口来创建的虚拟条目。/proc 中...阅读全文

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

深度解密基于 eBPF 的 Kubernetes 问题排查全景图

去。这是 Kubernetes 的第一道防线,第二道防线是云厂商针对节点高频异常景设计的节点自愈组件,如阿里云的node repairer:发现问题节点后,执行排水驱逐、置换机器,从而做到自动化地保障业务正常运行。即便如此,节点在长期使用过程中不可避免地会产生各种奇奇怪怪的问题,定位起来比较费时耗力。常见问题分类和级别:​针对这些繁杂的问题,总结出如下排查流程图:​以一个 CPU 打满为例:1、节点状态 OK,CPU 使用率超过了 90%​2、查看对应的 CPU 的三元组:使用率、TopN、时序图,首先每个核的使用率都很高,而导致整体 CPU 使用高;接下来我们自然要知道谁在疯狂地使用 CPU,从 TopN 列表来看有个 Pod 一枝独秀地占用 CPU;最后我们得确认下 CPU 飙高是什...阅读全文

博文 2022-03-21 09:11:51 joseph

深入学习golang — channel

Channel 1. 概述 “网络,并发”是Go语言的两大feature。Go语言号称“互联网的C语言”,与使用传统的C语言相比,写一个Server所使用的代码更少,也更简单。写一个Server除了网络,另外就是并发,相对python等其它语言,Go对并发支持使得它有更好的性能。 Goroutine和channel是Go在“并发”方面两个核心feature。 Channel是goroutine之间行通信的一种方式,它与Unix中的管道类似。 Channel声明: ChannelType = ( "chan" | "chan" "<-" | "<-" "chan" ) ElementType . 例如: var ch chan int var ch1 chan<- int //ch1只能写...阅读全文

博文 2021-01-25 12:39:17 博客园

Apollo 配置中心简单介绍

- 框架类组件配置,比如CAT客户端的配置。虽然这类框架类组件是由其他团队开发、维护,但是运行时是在业务实际应用内的,所以本质上可以认为框架类组件也是应用的一部分。这类组件对应的配置也需要有比较完善的管理方式。 2、Why Apollo 正是基于配置的特殊性,所以Apollo从设计之初就立志于成为一个有治理能力的配置管理平台,目前提供了以下的特性: 统一管理不同环境、不同集群的配置 Apollo提供了一个统一界面集中式管理不同环境(environment)、不同集群(cluster)、不同命名空间(namespace)的配置。同一份代码部署在不同的集群,可以有不同的配置,比如zk的地址等通过命名空间(namespace)可以很方便的支持多个不同应用共享同一份配置,同时还允许应用对共享的配置行覆...阅读全文

博文 2021-04-09 17:53:51 CSDN

Redis 命令、特性介绍与性能调优

value值自增指定的整型数值,并返回自增后的值。只对可以转换为整型的String数据起作用。时间复杂度O(1) DECR/DECRBY:同INCR/INCRBY,自增改为自减。 INCR/DECR系列命令要求操作的value类型为String,并可以转换为64位带符号的整型数字,否则会返回错误。 也就是说,行INCR/DECR系列命令的value,必须在[-2^63 ~ 2^63 – 1]范围内。 前文提到过,Redis采用单线程模型,天然是线程安全的,这使得INCR/DECR命令可以非常便利的实现高并发景下的精确控制。 例1:库存控制 在高并发景下实现库存余量的精准校验,确保不出现超卖的情况。 设置库存总量: SET inv:remain "100" 库存扣减+余量校验: DECR...阅读全文

博文 2018-10-27 10:37:55 debian.cn

Golang 操作 Kafka 样例

)、consumer(消息消费者)都可以是分布式的。 在消息的生产时可以使用一个标识topic来区分,且可以行分区;每一个分区都是一个顺序的、不可变的消息队列, 并且可以持续的添加。 同时为发布和订阅提供高吞吐量。据了解,Kafka每秒可以生产约25万消息(50 MB),每秒处理55万消息(110 MB)。 消息被处理的状态是在consumer端维护,而不是由server端维护。当失败时能自动平衡 1.1.3. 常用的景 监控:主机通过Kafka发送与系统和应用程序健康相关的指标,然后这些信息会被收集和处理从而创建监控仪表盘并发送警告。 消息队列: 应用程度使用Kafka作为传统的消息系统实现标准的队列和消息的发布—订阅,例如搜索和内容提要(Content Feed)。比起大多数的消息系统来说,Kafka...阅读全文

博文 2023-01-10 13:46:09 掘金

bmon:一个强大的网络带宽监视和调试工具

用 proc 输入模块运行 bmon: $ bmon -i proc -p enp1s0 如何使用 bmon 输出模块 bmon 也使用输出模块显示或者导出上面输入模块收集的统计数据,输出模块包括: curses - 这是一个交互式的文本用户界面,它提供实时的网上估计以及每个属性的图形化表示。这是默认的输出模块。 ascii - 这是用于用户查看的简单可编程文本输出。它能显示网卡列表、详细计数以及图形到控制台。当 curses 库不可用时这是默认的备选输出模块。 format - 这是完全脚本化的输出模式,供其它程序使用 - 意味着我们可以在后面的脚本和程序中使用它的输出值行分析。 null - 停用输出。 像下面这样通过 help 选项获取更多的模块信息。 $ bmon -o...阅读全文

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

本田 40GB 数据险遭泄漏 因云端数据库未设密

近日,一位安全研究员在博客上表示发现了本田公司的云端数据库未设密码,这可能导致 1.34 亿份文档,约 40GB 数据被泄漏,其中包括机器主机名、MAC 地址、内部 IP 及操作系统版本等。在收到该研究员的提醒后,本田方面已对漏洞行修复。 本田 1.34 亿份文档,40GB 数据险遭泄漏 根据安全研究员 Justin Paine 的说法,自 2019 年 7 月 1 日起,他就发现了本田对外暴露的 ElasticSearch 数据库未设置任何密码,内部包含大约 1.34 亿份文档,这些文档可以转换为大约 40GB 数据,而这些数据的日期最早可以追溯至 2019 年 3 月左右。 最初,Justin Paine 以为这些数据来自本田的一家经销商,但他很快否定了这一想法,因为这些文档包含了本...阅读全文

Apollo 分布式配置中心详解

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理景。 本文简单从功能特点做介绍,更详细的说明请参考Apollo配置中心介绍。本地快速部署可以参考这里。线上的演示环境从这里可以访问到: 106.54.227.205 (账号/密码: apollo/admin) Apollo 配置中心产生背景 大多情况下程序随着功能的复杂,程序的配置也会增多:包括各种功能开关、参数配置、服务地址信息配置等,同时开发人员对程序配置的期望值也越来越高:配置修改后实时生效,灰度发布,分环境、分集群的管理配置、权限控制、审核机制等。 在这样的大环境下,传统的通过配置文件、数据库...阅读全文

博文 2020-04-12 12:16:26 debian.cn

我要彻底放弃 Debian 操作系统!-Michael Stapelberg

,包括大型软件工程项目的工作原理,而且我也明白自己多么地喜欢我的计算机系统。我非常清楚这些日子以来的闲暇时间我是如何度过的。 我会在以下各小节中逐一介绍我所面临的主要困难,讨论顺序不分先后。其中有些困难有一些相互影响——例如,如果改动后的效果更好,那么我们就有机会将包转换成更方便的机器读取。 Debian的变更流程 最近几年,我目前的团队在整个代码库中行了各种大大小小的重构(涉及数千个项目),因此在关于如何有效地行这些变更方面,我们学到了很多宝贵的经验。令我苦恼的是,Debian在各方面的工作方式几乎完全相反。我理解每个组织都不同,但我认为我的很多观点确实适用于Debian。 在Debian中,包的推送必须严格遵守一个文档——叫做Debian策略,还有个程序lintian用来保证该策略的实...阅读全文

博文 2019-03-22 17:01:23 Michael Stapelberg

协议介绍之深入了解 gRPC

HTTP header。HTTP header 各个 fields 使用 \r\n 分隔,然后跟 body 之间使用 \r\n\r\n 分隔。解析完 header 之后,我们才能从 header 里面的 content-length 拿到 body 的 size,从而读取 body。 这套流程其实并不高效,因为我们需要读取多次,才能将一个完整的 HTTP 请求给解析出来,虽然在代码实现上面,有很多优化方式,譬如: 一次将一大块数据读取到 buffer 里面避免多次 IO read 读取的时候直接匹配 \r\n 的方式流式解析 但上面的方式对于高性能服务来说,终归还是会有开销。其实最主要的问题在于,HTTP/1.x 的协议是 文本协议,是给人看的,对机器不友好,如果要对机器友好,二制协议才是更好的...阅读全文

博文 2017-06-22 11:08:48 debian.cn

Sam Altman的成功学|OneFlow

潜能。 询问自身诉求,你通常不能得偿所愿,而且被拒绝的滋味往往不好受。但若一旦成功,效果就会好得出奇。 那些声称“我将永不言弃,直到梦想成真,不论前方有多少艰难险阻,我也会迎难而上”,并将其付诸行动的人,最后几乎总能大获成功。因为他们坚持了足够久,所以最终迎来了幸运之神的眷顾。 在这方面,爱彼迎(Airbnb)是我认为的行动标杆。业内流传着许多有关爱彼迎的逸闻趣事,虽然我并不推崇他们的做法(比如透支信用卡、每顿都吃一元店买的麦片、乐此不疲地与强劲的对手行较量等等)但是正因为他们足够坚持,最后终于时来运转。 只有保持乐观才能足够坚定,而乐观这种性格特征是可以通过练习逐步提升的,要知道悲观者是很难成功的。 10 保持强劲的市竞争力 大多数人都明白,企业竞争力越强,价值就越高。这点至关重要,而...阅读全文

Golang Context 探究

&valueCtx{parent, key, val} } // context.valueCtx 中存储的键值对与 context.valueCtx.Value 方法中传入的参数不匹配 // 就会从父上下文中查找该键对应的值直到在某个父上下文中返回 nil 或者查找到对应的值 func (c *valueCtx) Value(key interface{}) interface{} { if c.key == key { return c.val } return c.Context.Value(key) } 在 context 传递数据的景一般很有限,比较常见的使用景是传递请求对应用户 token 以及用于行分布式追踪的 trace id。不建议用来传递请求参数。 我用下面这种图来展示...阅读全文

博文 2021-02-25 09:27:27 lxkaka

五款流行开源的 HIDS 系统简单介绍

(NSM)平台,则由于其友好的向导,此工具便是答案。在安装之前,您需要知道Security Onion仅支持64位硬件。您也可以在官方文档中找到详细的技术要求。Security Onion的安装步骤非常简单。阅读文档(包括要求和发行说明)后,您需要下载ISO映像。如果时间紧迫,安全洋葱是最好的选择,但它也有一些缺点。首先,它不支持Wi-Fi来管理网络。另外,您将必须学习如何使用不同的工具来学习提高分发效率。除此之外,它不会自动备份规则以外的配置。为此,您需要使用第三方实用程序。此屏幕快照说明了使用Security Onion(Sguil)行实时事件检测:​图4对于现代组织而言,部署基于主机的入侵检测系统至关重要。市上有许多具有不同功能的HIDS。为了帮助您缩小范围,我们选择了五个开源工具,使您...阅读全文

博文 2023-01-26 11:07:43 joseph