InfraPub 为您找到相关结果 714

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

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

Linux内存buffer和cache的区别

理内存,当物理内存还有空闲时(还够用),不会释放其占用内存,就算占用内存的程序已经被关闭了,该程序所占用的内存用来做缓存使用,对于开启过的程序、或是读取刚存取过得会比较快。有关linux内存机制参考: Linux 内存机制 Mem:表示物理内存统计。 -/+ buffers/cached:表示物理内存的缓存统计 Swap:表示硬盘上交换分区的使用情况。只有mem被当前进程实际占用完,即没有了buffers和cache时,才会使用到swap。 Mem 行(第一行)说明: Total:1035108KB。表示物理内存总大小。 Used:1008984KB。表示总计分配给缓存(包含buffers 与cache )使用的,但其中可能部分缓存并未实际使用。 Free:26124KB。表示未...阅读全文

Google 宣布新拥堵控制算法 TCP BBR

Google 宣布了 新拥堵控制算法 TCP BBR。Google 官方博客称新算法将 google.com 和 YouTube 的全球网络吞吐平均改进了 4%,在某些国家改进了 14%+。 Google 解释说,现有的 TCP 拥堵控制算法源自 1980 年代,是为低带宽传输设计的,解决拥堵主要考虑丢包,也就是在网络堵塞的时候路由器将会丢弃新的包。BBR 代表 Bottleneck Bandwidth and Round-trip propagation time,它的拥堵控制采用了不同的方法,考虑了网络实际的交付率有多快。根最近测的网络交付率和往返时间构建显示模型,最大化近期可用带宽和最小化近期往返延迟。BBR 使用这些决定发送速率有多快。 Google 已经...阅读全文

博文 2017-07-22 19:42:30 debian.cn

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

最近的互联网线上事故发生比较频繁,9月19日网上爆料出顺丰近期发生了一起线上删库事件,在这里就不介绍了。 这里分享一下最近发生在我公司的事故,以及如何避免,并且如何处理优化。 该宕机的直接原因是使用 Redis 的 keys * 命令引起的,一共造成了某个服务化项目的两次宕机。 间接原因还有很多,技术跟不上业务的发展,由每日百万到千万级是一个大的跨进,公司对于系统优化的处理优先级不高,技术开发人手的短缺。 第一次宕机 2018年9月13日的某个点,公司某服务化项目的 RDS 库实例连接飙升,CPU 升到 100%,拒绝了其他应用的所有请求服务。 整个过程如下: 监控报警,显示RDS的CPU使用率达到80%以上,DBA介入,准备KILL慢SQL 1分钟内,没有发现明显阻塞的SQL...阅读全文

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

Grafana 6.3.3发布 系统指标监控与分析平台

Grafana 6.3.3 发布了,Grafana 是一个功能丰富的指标标准仪表板和图形编辑器,用于分析和监控 Graphite、Elasticsearch、OpenTSDB、Prometheus 和 InfluxDB。 新版本更新主要是 Bug修复,具体如下: Annotations:修复取消时间序列查询时,失败的注释查询 #18532Auth:如果 cookie_samesite 为 none,请不要设置 SameSite cookie 属性 #18462DataLinks:正确地将范围变应用于链接 #18454DataLinks:在图形上下文菜单中显示点的时间戳时,遵守时区 #18461DataLinks:插值变时,正确使用点时间戳 #18459Explore:修复空...阅读全文

博文 2019-08-17 21:20:29 debian.cn

英特尔发布 660p 系列 M.2 2280 NVMe SSD 新品

在三星宣布产 QLC SATA SSD 之后,英特尔这边也宣布了自家的最新竞品 —— 价格媲美 SATA 型号、但支持 NVMe 协议的 660p 系列 SSD 。 Anandtech 所述, 英特尔 660p 采用了自家的 64 层 1-Tb 3D QLC NAND 闪存,容有 512GB / 1TB / 2TB 三档,但性能表现颇为一致。此外,660p 还搭配了大容伪 SLC 缓存机制、辅以 256MB DRAM 。 英特尔 660p 系列 SSD 采用了 M.2 2280 封装规格 悉,512GB 版本可选择调用 6~76GB 的容当做缓存,1TB 版本可动用 12~140GB,2TB 版本则是 24~280GB 。当然,随着的大写入,SLC 缓存机制的效用会明显下...阅读全文

博文 2018-08-08 16:18:49 debian.cn

项目总结报告应该怎么写

每次项目进度都很紧张、项目发版时间总是一延再延、每个版本bug堆积成山、测试期间各种bug总是层出不穷、临近上线发现严重bug,如果项目经理总是被这些问题围绕,那么项目总结迫在眉睫。项目经理如何进行项目总结才能让项目顺利进行,让领导一看就喜欢,今天把经验分享给大家,帮助你做好项目总结。总结的思维模式想写好一份项目总结,总结人员必须具备一定的结构化思维,对问题、进行结构分析,且能够通过结构化思维表达出来。结构化思维具备以下四个特点。​结论:问题比较多的时候,要进行抽象归纳,做到抓大放小,先解决当前最主要的问题。总结的目的✤对项目进行复盘,发现项目中存在的问题,针对问题找到根本原因并提出解决方案;✤提高项目质,让项目“健康”前行;✤通过当前版本的质,对项目整体情况进行评估...阅读全文

西数今年推出20TB HDD硬盘:MAMR革命来临

随着希捷、东芝先后推出16TB容的HDD硬盘,现今的垂直磁道PMR机械硬盘不论容还是技术水平应该是到头了,西计划今年出样18TB及20TB的硬盘,会用上MAMR全新技术。 访问购买页面: 西部自营旗舰店 机械硬盘要想再提高容,现在的磁记录技术已经没多少潜力可挖了,新一代HDD硬盘技术会转向HAMR热磁辅助记录技术,不过西认为HAMR使用激光辅助加热,技术复杂,成本高,可靠性也低,所以他们更倾向于MAMR微波辅助磁记录技术。 根西所说,MAMR硬盘技术的成本和传统垂直记录类似,复杂性、可靠性也都更可控(99.99%的MAMR磁头写入寿命HAMR磁头高出几个级),生态方面也不需要更换新的主机管理损耗均衡。 西最新表态今年底会推出两款MAMR技术的容,一款是18TB容...阅读全文

博文 2019-09-04 21:17:10 debian.cn

influxdb内存消耗分析及性能优化【探索篇】

influxdb会对磁盘文件{{index+data}}按照分片shard维度进行四次压缩(level1,2,3及full),以节约磁盘空间3.堆积的原因在队列堆积的时间点,经过多次对比influxdb的日志:#调用方队列堆积时,influxdb的关键日志如下: #influx开始执行第四次全压缩策略,tsm1_strategy=full ts=2021-01-05T10:30:02.049644Z lvl=info msg="TSM compaction (start)" log_id=0RVRbtjl000 engine=tsm1 tsm1_strategy=full tsm1_optimize=false trace_id=0RWXOKGG000 op_name...阅读全文

博文 2021-10-27 16:06:30 知乎

PostgreSQL 13 正式版发布

PostgreSQL 13 已正式发布,新版本对索引和查找系统进行了重大改进,大型库因此受益甚多,包括节省了空间并提高了索引的性能,使用聚合或分区的查询的响应时间更快,使用增强的统计信息时更好的查询计划(query planning)等。 除了并行化清理(parallelized vacuuming)和增排序(incremental sorting)等呼声较高的功能外,PostgreSQL 13 还为大大小小的工作负载提供了更好的管理体验,并对日常管理进行了优化,为应用开发者提供了更多便利,并增强了安全性。 性能提升 在先前 PostgreSQL 版本的基础上,PostgreSQL 13 可以有效地处理 B 树索引(PostgreSQL 的标准索引)中的重复,从而降低 B 树...阅读全文

博文 2020-10-04 20:07:23 debian.cn

GitHub 发布10月21日系统故障分析报告

GitHub 刚刚通过官方博客发布了 21 日“挂掉”的事件分析。GitHub 指出此次事件发生的原因是在 10 月 21 日 22:52 UTC 进行日常维护——更换发生故障的 100G 光学设备时导致美国东海岸网络中心与美国东海岸中心之间的连接断开。 更具体地,GitHub 分析,虽然两地的连接在 43 秒内恢复,但这次短暂的中断引发了一系列事件,这才导致了长达 24 小时 11 分钟的服务降级。 为了大规模提高性能,GitHub 的应用程序将直接写入每个群集的相关主库,但在绝大多情况下将读取请求委派给副本服务器的子集。GitHub 使用 Orchestrator 来管理 MySQL 集群拓扑并处理自动故障转移,Orchestrator 在此过程中考虑了许多变,并在...阅读全文

三个简单而优秀的 Linux 网络监视器

PROGRAM DEV SENT RECEIVED 7690 carla /usr/lib/firefox wlan0 12.494 556.580 KB/sec 5648 carla .../chromium-browser wlan0 0.052 0.038 KB/sec TOTAL 12.546 556.618 KB/sec Nethogs 选项很少:在 kb/s、kb、b 和 mb 之间循环;通过接收或发送的包进行排序;并调整刷新之间的延迟。请参阅 man nethogs,或者运行 nethogs -h。 vnstat vnstat 是最容易使用的网络收集器。它是轻级的,不需要 root 权限。它作为守护进程运行,并记录你网络统计信息。它默认显示所有的网络接口。使用 -i 选项选择单个...阅读全文

博文 2017-11-07 00:07:38 debian.cn

Kong发布新项目Kuma 通用的服务网格

平面和先进的控制平面,极大地降低了各团队使用的难度。Kuma 可以在 Kubernetes、虚拟机、容器、裸机和传统环境等任意平台上运行,以落实整个组织中的云原生体验。 得益于成熟的控制平面,Kuma 开箱即用地使得下层网络安全、可靠和可观测,而无需更改代码。Kuma 高效的平面和先进的控制平面,允许用户通过少的 Kubernetes 原生 CRD 或者 RESTful API 请求来方便地设置权限,暴露监控和设置路由规则。 Kuma 的主要功能包括: 软件定义安全(Software Defined Security):Kuma 支持所有第四层流的双向 TLS(mutual TLS)。用户可以通过简单的权限设置来实现访问控制。强大的生产力功能 :Kuma 使得用户能快速实现...阅读全文

深入学习golang — channel

. }() doSomethingForAWhile() <-c // Wait for sort to finish; discard sent value. 上面的示例中,在子goroutine中进行排序操作,主goroutine可以做一些别的事情,然后等待子goroutine完成排序。 接收方会一直阻塞直到有到来。如果channel是无缓冲的,发送方会一直阻塞直到接收方将取出。如果channel带有缓冲区,发送方会一直阻塞直到被拷贝到缓冲区;如果缓冲区已满,则发送方只能在接收方取走后才能从阻塞状态恢复。 3. 消息传递 我们来模拟一下经典的生产者-消费者模型。 func Producer (queue chan<- int){ for i:= 0; i < 10; i++ { queue <- i } } func...阅读全文

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

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

、Hyperloglogs等。 Redis具备LRU淘汰、事务实现、以及不同级别的硬盘持久化等能力,并且支持副本集和通过Redis Sentinel实现的高可用方案,同时还支持通过Redis Cluster实现的自动分片能力。 Redis的主要功能都基于单线程模型实现,也就是说Redis使用一个线程来服务所有的客户端请求,同时Redis采用了非阻塞式IO,并精细地优化各种命令的算法时间复杂度,这些信息意味着: Redis是线程安全的(因为只有一个线程),其所有操作都是原子的,不会因并发产生异常 Redis的速度非常快(因为使用非阻塞式IO,且大部分命令的算法时间复杂度都是O(1)) 使用高耗时的Redis命令是很危险的,会占用唯一的一个线程的大处理时间,导致所有的请求都被拖慢。(例如时间复杂度为O(N)的...阅读全文

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

Kubernetes 部署 Nacos 1.4 集群 · 小豆丁

!版权声明:本博客内容均均为原创,每篇博文作为知识积累,写博不易,转载请注明出处。 目录[-] 参考地址: Nacos 官方文档 系统环境: Nacos 版本:1.4.1 Mysql 版本:8.0.19 Kubernetes 版本:1.20.1 项目示例地址: Kubernetes 中部署 Nacos 的部署文件 Kubernetes 中部署 Mysql 库部署文件 如果该文章对你有帮助,别忘了 Github 帮忙点颗星哦~ 一、什么是 Nacos Nacos 是阿里开源的服务注册中心与配置中心组件,能够帮助开发人员快速实现动态服务发现、服务配置、服务元及流管理。同时能够与 SpringCloud、Kubernetes、Dubbo 等开源生态无缝集成。 Nacos 支持如下核心特...阅读全文

博文 2021-02-24 10:10:29 www.mydlq.club

欧洲核子研究组织(CERN)是如何使用 Linux 和开源的 - 云+社区

CERN 无需过多介绍了吧。CERN 创建了 万维网(World Wide Web)(WWW)和 大型强子对撞机(Large Hadron Collider)(LHC),这是世界上最大的 粒子加速器(particle accelerator),就是通过它发现了 希格斯玻色子(Higgs boson)。负责该组织 IT 操作系统和基础架构的 Tim Bell 表示,他的团队的目标是“为全球 13000 名物理学家提供计算设施,以分析这些碰撞,了解宇宙的构成以及是如何运转的。”CERN 正在进行硬核科学研究,尤其是大型强子对撞机,它在运行时 生成大。“CERN 目前存储大约 200 PB 的,当加速器运行时,每月有超过 10 PB 的产生。这必然会给计算基础架构带来极大的挑战,包...阅读全文

博文 2021-11-29 13:20:55 腾讯云

Hadoop 核心 - HDFS 分布式文件系统详解

1. HDFS概述 Hadoop 分布式系统框架中,首要的基础功能就是文件系统,在 Hadoop 中使用 FileSystem 这个抽象类来表示我们的文件系统,这个抽象类下面有很多子实现类,究竟使用哪一种,需要看我们具体的实现类,在我们实际工作中,用到的最多的就是HDFS(分布式文件系统)以及LocalFileSystem(本地文件系统)了。 在现代的企业环境中,单机容往往无法存储大,需要跨机器存储。统一管理分布在集群上的文件系统称为分布式文件系统。 HDFS(Hadoop Distributed File System)是 Hadoop 项目的一个子项目。是 Hadoop 的核心组件之一, Hadoop 非常适于存储大型 (比如 TB 和 PB),其就是使用 HDFS 作为存...阅读全文

都是颗粒 为什么SSD有寿命、内存却没有?

。 SSD则是外部存储,用来长久保存,属于非易失性存储,断电后还在,但是相对速度慢、延迟高,HDD机械硬盘、U盘、光盘等也是此类。 SSD的存储介质是NAND闪存颗粒,需要施加不同的电压、改变内部状态来存储,随着时间的流逝、读写次的增加,会出现物理性的损耗,最终不可用。 NAND闪存的寿命一般用P/E编程擦写次来描述,写满一次容就损失一次P/E。 SLC大约是10万次,MLC只有5000次左右,TLC就只大概2000次,QLC仅为1000次上下,所以不得不依靠更多管理技术和算法来辅助,以保持寿命。 但另一方面,SLC、MLC、TLC、QLC的存储密度越来越大,SSD容也越来越大,写满的概率越来越低,所以整个SSD的实际寿命其实并没有大大缩短,一般应用无需过分担忧寿命问题。...阅读全文

英特尔发布P4500数据中心SSD新品:外形12英寸 容量32TB

英特尔刚刚发布了迄今为止最为密集的 SSD 产品,它就是面向中心应用的 P4500 。为了将 32TB 的容纳入单块 SSD,尽管其身材依然纤薄(宽高 1.5×0.3 英寸 / 3.8×0.8 厘米),但长度已经达到了丧心病狂的 12 英寸(30.5 厘米)。存储颗粒方面,其选用了 64 层堆叠的 3D NAND 架构。不过英特尔表示,它只需一半的气流,即可满足运行时的散热需求。 Intel P4500 是当前最密集的 SSD,将 32TB 容纳入 12 英寸“标尺”外形。32 组 P4500 SSD 可纳入一个标准服务器插槽,总容达到 1PB(1024TB)。 这些 3D NAND SSD 的功耗只有 1PB SATA 机械硬盘的 10%,空间占用更是只有 5% 。对于 IBM...阅读全文

博文 2018-08-09 13:24:47 debian.cn

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

在这个互联网时代,游戏、电影、照片等越来越大,硬盘容将会面临着前所未有的挑战。虽然传统的机械硬盘可以解决容问题,但是速度太慢,体验糟糕,并不是最优的个人存储解决方案。我们渴求大容的SSD,不过超过TB大容SSD动不动就几千元的售价,对于支付能力有限用户实际上没有意义。SSD的成本主要来源于闪存,在TLC闪存能够实现TB容可惜价格未能降下来。只有不断开发新类型的闪存,解决容与价格的矛盾,才能让SSD真正在大时代发挥应有作用。 这时,QLC 闪存就应运而生, 目前,东芝和西先后宣布成功开发基于四比特单元3D NAND闪存芯片,即QLC闪存,这也意味着QLC SSD将要来临。那么,它与TLC闪存又有什么区别,能否取代TLC成为SSD主流闪存之选? 先来了解一下什么是TLC...阅读全文

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

Ceph 12.2.0 正式版本发布, 代号 Luminous

。 BlueStore支持Ceph存储的所有的完整的和元校验。 BlueStore内嵌支持使用zlib,snappy或LZ4进行压缩。(Ceph还支持zstd进行RGW压缩,但由于性能原因,不为BlueStore推荐使用zstd)。 EC池现在完全支持覆盖,允许它们与RBD和CephFS一起使用。 ceph-mgr: ceph-mgr是一个新的后台进程,这是任何Ceph部署的必须部分。虽然当ceph-mgr停止时,IO可以继续, 但是度不会刷新,并且某些与度相关的请求(例如,ceph df)可能会被阻止。我们建议您多部署ceph-mgr的几个实例来实现可靠性。 ceph-mgr守护进程daemon包括基于REST的API管理。注:API仍然是实验性质的,目前有一些限制,但未来会成为API管理的基础...阅读全文

博文 2017-08-31 13:36:49 debian.cn

RethinkDB的简单介绍

,TokyoTyrant及Schooner Membrain等。RethinkDB为各种应用压力下提供高性能和高可靠性 支持,主要应用在下面一些场景: 用来处理一些其它方案无法解决的服务负载(如:要求快速的服务启动,在超出内存大小后还要有高的性能,处理各种不稳定的读写压力,处理大等) 提供性能与稳定性之间的精细调控 大大提高你的缓存层和key-value存储的性能,在你现有的硬件条件下,能支持更高的应用负载。 使用费用 RethinkDB目前提供两个版本的支持,一个免费版的,一个商用版的。商用版本的价格是每年每台机器$1500。免费版提供目前所有功能,提供后续所有安全相关的升级。但是新功能的升级只保证在付费版本中保持更新,另外商用版本还提供技术支持。...阅读全文

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

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

AMD表示,公司最新发布的“米兰”服务器芯片比目前最好的中心芯片处理速度更快。悉,AMD完成该芯片的设计,并委托台积电采用7nm芯片制造工艺来实现产。很快,Intel也要反击,其将在未来几周推出最新的“冰湖”(Ice Lake)服务器芯片,这将是首款采用Intel 10nm制造工艺产的服务器芯片(说性能相当于7nm制造工艺的“米兰”芯片)。无论这两款芯片的速度如何,但AMD仍有望拥有一些优势,比如每个芯片上的计算内核更多,这使得芯片可以同时处理更多的软件应用程序。AMD服务器业务部门高级副总裁兼总经理丹·麦克纳马拉(Dan McNamara)表示,如果公司继续将客户反馈整合到新一代芯片中,就能保住领先地位。第三代EPYC 7003系列采用和锐龙5000系列同款的Zen3架构...阅读全文

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

Intel 傲腾 DDR4 内存价格曝光,单条 128GB 仅约 5600 元

本周的 Intel 创新大会上,傲腾持久内存正式发布,采用 DDR4 接口和协议,既可以当纯粹的 DDR4 内存,又可以做存储型缓存盘。 Intel 借助 3D Xpoint 技术实现了 DRAM 和 NAND Flash 共享同一种存储芯片,即傲腾(Optane)。按照 Intel 公布的信息,傲腾内存条容目前提供 128GB、256GB、512GB。 虽然 Intel 没有公布价格,但美国采购商已经偷跑, 其中 128GB 在 842~893 美元(约最低 5656 元),256GB 在 2668~2850 美元(约最低 1.79 万元),512GB 还不详(预计 6000~7000 美元)。 显然,比起同容的 SSD 着实贵了不少,但比起企业级内存条(128GB 要 4500...阅读全文

博文 2019-04-07 20:25:18 debian.cn

MySQL 8 第一个正式版发布:更好的性能

MySQL 8.0 系列的首个正式版 8.0.11 已发布,官方表示 MySQL 8 要比 MySQL 5.7 快 2 倍,还带来了大的改进和更快的性能! 需要注意的是从 MySQL 5.7 升级到 MySQL 8.0 仅支持通过使用 in-place 方式进行升级,并且不支持从 MySQL 8.0 降级到 MySQL 5.7(或从某个 MySQL 8.0 版本降级到任意一个更早的 MySQL 8.0 版本)。作为替代方案,在升级之前请对进行全备份。 本文简要介绍 MySQL 8 中值得关注的新特性和改进。 1. 性能:MySQL 8.0 的速度要比 MySQL 5.7 快 2 倍。MySQL 8.0 在这些方面带来了更好的性能:读/写工作负载、IO 密集型工作负载、以及高竞争...阅读全文

博文 2018-04-20 10:40:18 debian.cn

阿里巴巴版 JDK 首发 GA 版 生产环境可用

增强和安全修复,主要针对的场景是中心大规模 Java 应用部署情况下,Java 应用稳定性、效率以及性能的优化与提高。从目前公开的功能和披露的规划上来看,Dragonwell 8 具有下述三大重要特性: JwarmUp JwarmUp 是为了解决双十一抢购场景下,阿里巴巴 Java 系统 warmup 的痛点。以普通的 Java 应用举例,JVM 需要经过解释执行 (interpreter) 找到热点,然后通过 JIT 编译器来加速热点方法的运行。对于高并发场景,应用启动之后会有很长时间处于寻找热点、编译热点的状态。这时,很多性能指标 (CPU 使用率、TPS 吞吐、 RT 响应时间) 不是非常理想。换句话说,当 Java 应用启动并提供服务之后,在相当长的时间内处于 warmup 状...阅读全文

博文 2019-07-11 10:24:52 debian.cn

Kafka生产问题总结以及性能优化

消费消息需要紧急处理,可以修改消费端程序,让其将收到的消息快速转发到其他topic(可以设置很多分区),然后再启动多个消费者同时消费新主题的不同分区。 2)由于消息格式变动或消费者程序有bug,导致消费者一直消费不成功,也可能导致broker积压大未消费消息。 此种情况可以将这些消费不成功的消息转发到其它队列里去(类似死信队列,kafka没有死信队列,需要自己写),后面再慢慢分析死信队列里的消息处理问题。 2.1.5 延时队列 kafka没有延时队列,需要自己实现;延时队列存储的对象是延时消息。所谓的“延时消息”是指消息被发送以后,并不想让消费者立刻获取,而是等待特定的时间后,消费者才能获取这个消息进行消费,延时队列的使用场景有很多, 比如 : 1)在订单系统中, 一个用户下单之后通常...阅读全文

博文 2023-01-05 23:16:48 CSDN博客

DPDK Graph Pipeline 框架简介与实现原理

libgraph 的参照对象。因为 VPP 项目整体是一个非常全面的解决方案,从中剥离核心的设计框架为其它轻级项目所用就变得很有意义。这也是 Libgraph 的产生背景。虽然它目前还是DPDK 中相对比较新的 lib,但是其优秀的设计思想还是值得学习参考。 下面将首先介绍 libgraph 架构的核心概念:标和向包处理(scalar vs vector packet processing)以及它们之间的区别。然后再介绍 libgraph 中的核心组件,以及它们之间的联系和交互方式。最后,我们将介绍 libgraph 的具体用例以及优缺点。 背景 DPDK libgraph 是一个向包处理的框架。与传统的标包处理模型(一系列函负责处理一个包,重复直到所有包处理完毕)相比,向包处理...阅读全文

博文 2023-02-09 07:13:55 掘金

单条512GB!Intel 开始部署傲腾非易失性内存条

10 月 31 日消息,Intel 宣布,已经为广泛部署傲腾中心用、非易失性内存条(Optane DC persistent memory)做好了准备。 目前,Beta 项目已经启动,参与的 OEM(原始设备制造商,如华为、联想等)和 CSP 伙伴(云服务伙伴,如谷歌、阿里巴巴、亚马逊、微软等)可以更早地向客户接入由傲腾非易失性内存条驱动的系统, 从而为 2019 年上半年批上线奠定基础。 傲腾非易失性内存基于 3D Xpoint 技术,和目前的傲腾 SSD 共享存储芯片,从而弥补了传统 DDR4 内存不具备的永固和大容特性, 单条最大 512GB,可配合 Xeon Scalable 处理器使用。 特别的,Intel 此次为傲腾 DC 非易市内存提供应用模式和内存模式,前者可理...阅读全文

博文 2018-10-31 22:13:41 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...阅读全文

国产 Java 开源博客 Solo 2.5.0 发布,支持数据导出

Solo 是一款 一个命令 就能搭建好的 Java 开源博客系统,如果你想开个独立博客,请一定不要错过!2.5.0 版本主要支持了 Markdown/JSON 格式导出,并改进了 Markdown 渲染。 另外,我们 新的博客产品 Pipe(golang 开发)已经开源 ,欢迎大家来围观! 安装 下载 安装包 解压后执行 java -cp WEB-INF/lib/*;WEB-INF/classes org.b3log.solo.Starter 从 2.4.0 升级只需将已有的配置拷贝覆盖即可,启动后会自动升级。 文档 用户指南 :安装、配置、备份以及常见问题 开发指南 :开发环境、项目结构、框架说明 皮肤开发 :开发步骤、模版变 插件开发 :插件机制、处理流程 项目...阅读全文

博文 2017-12-21 09:48:36 debian.cn

Vultr日本节点VPS主机使用小结

Vultr是一家性价比非常高的VPS提供商,多达15个库中心可以选择,并且全部使用SSD硬盘、KVM架构。网上有很多与DigitalOcean、Linode对比的文章,这篇文章主要是分享一下Vultr日本节点的使用感受。 之前看到很多文章对洛杉矶和日本节点进行了测试,不过最近从个人测试来看,电信到Vultr洛杉矶节点目前已经绕路一大圈,丢包也是惨不忍睹,估计是电信又在调整的原因,不知后期是否能恢复正常。 Vultr日本节点以前是限制200G流,不过现在流已经增加至400G/月,如果只是安心放网站是完全足够的,最便宜的配置只需要5$/月,1CPU、768MB内存、15GB存储、1000M共享带宽,性价比是非常不错的。 性价比虽不错,那对国内环境来说网络情况又如何,下面是不同运营商的...阅读全文

博文 2015-11-11 22:48:03 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

得物云原生全链路追踪Trace2.0-采集篇 - OSCHINA

,Trace 被认为是 Span 的有向无环图(DAG)。官方也例举了以下 8 个 Span 的因果关系和他们组成的单 Trace示例图: 在当时, OpenTracing 相关的开源社区也是异常活跃,它使用 Jaeger 来解决的收集,调用链则使用了甘特图展示: 在 OpenTracing 生态中,我们对链路的采样使用头部采样策略, 对于指标 Metrics,OpenTracing 并没有制定它的规范,但在 Google SRE Book 里,关于 Monitoring Distributed System 章节中提到了四类黄金指标: 吞吐:如每秒请求,通常的实现方式是,设定一个计器,每完成一次请求将自增。通过计算时间窗口内的变化率来计算出每秒的吞吐。 延迟:处理请求的耗时。 错误率/错...阅读全文

博文 2022-12-10 06:50:41 中文开源技术交流社区

多达 95% 的 HTTPS 链接能被黑客劫持

HSTS 是一个被当前大多 Web 浏览器所支持的 Web 安全策略,它可以帮助 Web 管理员保护他们的服务器和用户避免遭到 HTTPS 降级、中间人攻击和 Cookie 劫持等 HTTPS 攻击的危害。由于服务器管理员没能正确设置 HTTP Strict Transport Security (HSTS),现今大的 HTTPS 流都能被轻松劫持。 95% 的 HTTPS 连接处于风险中 最近的 Netcraft study 报告显示,当前多达 95% 的服务器所运行的 HTTPS 没有正确地设置 HSTS 或其它配置,以至于将 HTTPS 连接暴露于上述攻击风险之中。 更值得注意的是,Netcraft 在三年前进行的同样扫描,不正确配置的 HSTS 比例仍同现在一样。这表明...阅读全文

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

开源 IP 地址定位库 ip2region 1.9.0 发布

ip2region 是准确率 99.9% 的 IP 地址定位库,0.0x 毫秒级查询,提供了 Java、PHP、C、Python、Node.js、Golang、C#、Rust、Lua 的查询绑定和 Binary、B 树、内存三种查询算法,妈妈再也不同担心我的 IP 地址定位! ip2region 1.9 更新如下: 升级至 2019/05/02 的版本,国外的增加了大城市级别的,ip2region.db 增长到 7MB。开源了 ip2region.db 的生成程序,目前提供了 java 语言的实现,在${ip2region_root}/maker 目录下,便于对 ip2region 的研究或者更改自定义生成配置等,后期会提供 C 语言的实现。 下载地址: Gitee...阅读全文

博文 2019-05-05 20:56:16 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 掘金

聊聊很重要的内核技术eBPF

Viljoen在其中介绍了Netronome SmartNIC上每个FPC每秒达到300万个包,每个SmartNIC有72到120个FPC,可能最大支持eBPF吞吐4.3 Tbps!(理论上) eBPF 触发了新一代网络、安全性、应用程序配置/跟踪和性能故障排除等领域的工具开发,这些工具不再依赖现有的内核功能,而是在不影响执行效率或安全性的情况下主动重新编程运行时行为。 那我们看看有哪些基于 eBPF 的工程,这些工程或许你已经知道,或是已经经常使用。 基于eBPF的项目 1:bcc BCC是用于创建基于eBPF的高效内核跟踪和操作程序的工具包,其中包括一些有用的命令行工具和示例。 BCC简化了用C进行内核检测的eBPF程序的编写,包括LLVM的包装器以及Python和Lua的前端。它还提供了用于...阅读全文

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

Rust 1.37.0 稳定版发布

-Guided Optimization) rustc 编译器现在通过 -C profile-generate 和 -C profile-use 标志提供了对配置文件引导优化(PGO)的支持。 Profile-Guided Optimization 允许编译器根来自实际工作负载的反馈优化代码。它的工作方式是编译程序,在两个步骤中进行优化: 首先,程序是用编译器插入的工具构建的。这是通过将 -C profile-generate 标志传递给 rustc 来完成的。然后,需要在示例上运行检测程序,并将分析写入文件之后,重新构建程序,这一次使用 -C profile-use 标志将收集到的分析反馈回 rustc。此构建将利用收集到的,使编译器能够对代码放置、内联和其他优化做出更好的决定 在...阅读全文

博文 2019-08-17 21:17:23 debian.cn

Prometheus 常用 PromQL 语句样例

: sum(my_metric_name)根方法和路径标签维度进行求和: sum by(method, path) (my_metric_name)without 用于从计算结果中移除列举的标签,而保留其它标签,by 则正好相反,结果向中只保留列出的标签,其余标签则移除: sum without(method, path) (my_metric_name)其他常用的聚合运算符:sum(), min(), max(), avg(), stddev(), stdvar(), count(), count_values(),bottomk(), topk(), quantile()。序列间的学计算将两个相同标签的序列相加: left_metric + right_metric只将匹配...阅读全文

博文 2021-02-09 11:07:15 51CTO博客

SQLite 3.30.0 发布,使用最广泛的数据库引擎

SQLite 3.30.0 发布了,SQLite 是一个 C 实现的 SQL 库引擎,它的特点是小型、快速、自包含、高可靠性和功能齐全。SQLite 嵌入在所有手机和大多计算机中,也捆绑在为众多的其它应用中,是世界上使用最大的库引擎。 此版本更新内容包括: 添加对聚合函的 FILTER 子句的支持添加对 ORDER BY 子句中的 NULLS FIRST 和 NULLS LAST 语法的支持增强了 index_info和index_xinfo 编译指示,以提供有关 WITHOUT ROWID 表在磁盘上的表示形式的信息新增 sqlite3_drop_modules() 接口,使应用程序可以禁用不需要的自动加载的虚拟表改进 CLI 中的 .recover dot...阅读全文

博文 2019-10-06 12:03:42 debian.cn

WireGuard简明介绍及使用指引

,在不使用的情况下默认不会传输任何 UDP 包,所以比常规VPN省电很多,可以像ShadowSocks一样一直挂着使用。 WireGuard协议的速度几乎秒杀其它VPN协议,测试结果如下图; WireGuard 受到 Linus 本人的推荐,将整合到最新版Linux Kernel中,安装部署更方便。WireGuard 总共几千行代码,只需十分钟就能搞定一台WireGuard服务器。 Wireguard安全性高。极佳的VPN漫游特性,设备支持广泛。内核级别的端对端隧道加密技术,拥有良好的加密特性。Wireguard配置文件由两部分组成:interface和peer。服务器端、客户端互为平等关系。支持预共享密钥preshared key加密,防止子计算攻击。 国际著名项目,开源代码审...阅读全文

博文 2019-11-28 12:44:00 debian.cn

Golang 中的 channel 通道详解

channel通道golang的并发模型是序列通信处理CSP(communicating sequential process)——使用通信来共享内存 ,避免goroutine因竞争共享内存频繁加锁产生的性能问题。基本结构golang中提供了一个特殊的类型channel实现goroutine之间的通信。channel类似于队列,先进先出。channel结构源码在src/runtime/chan.go下。chan 使用 hchan 表示,它的传参与赋值始终都是指针形式,每个 hchan 对象代表着一个 chan。hchan 中包含一个缓冲区 buf,它表示已经发送但是还未被接收的缓存。buf 的大小由创建 chan 时的参来决定。qcount 表示当前缓冲区中有效的总...阅读全文

Java 12 / JDK 12 正式发布

CDS Archives 默认类共享归档文件344Abortable Mixed Collections for G1 可中止的 G1 Mixed GC346Promptly Return Unused Committed Memory from G1 G1 及时返回未使用的已分配内存 下边分别来看看: Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) Shenandoah:低暂停时间的 GC(实验性功能) 新增了一个名为 Shenandoah 的 GC 算法,通过与正在运行的 Java 线程同时进行 evacuation 工作来减少 GC 暂停时间。使用 Shenandoah 的暂停时间与堆大小无关,这意味着无论堆是...阅读全文

博文 2019-03-20 12:46:27 debian.cn

谷歌公开了内部管理Infra层的两个工具的Paper

库?服务需要支持多大的流? 这些都是很重要的问题,但服务是动态并且变化的:二进制版本不断更新,实例被添加和删除。架构也就需要随之演进:可能需要在某个特定的集群添加新的缓存,移除一些过时的日志等等。 在2014年,我们发现自己不能充分地适应服务的灵活性。对于绝大多服务,我们使用人工编制的工作流来变更基础架构:推送x,然后y;手动执行不常见的变更。 但是团队通常需要管理十个服务,每个服务都有很多job,库,配置以及自定义的管理流程。已有的解决方案因为如下两大原因无法扩展: 基础架构配置和API是异构的,并且很难连接在一起——比如,不同的服务使用不同的配置语言,抽象级别,存储和推送机制等等。因此,基础架构不一致,很难确定出通用的变更管理。生产变更管理的流程很脆弱,不理解变更之间的联系...阅读全文

博文 2023-01-08 11:23:20 CSDN博客

希捷预告120TB机械硬盘:全新介质、单碟容量达10TB

这些年,机械硬盘容的提升速度十分缓慢,大有被SSD全面赶超的趋势,不过每个季度,希捷、西部都会更新路线图,展望机械硬盘在技术、容上的发展趋势,尤其是希捷。近日,希捷更是公布了详细的未来技术路线图,计划在2026年左右达到50TB左右,2030年则可以超过120TB。机械硬盘最近几年普遍基于PMR(垂直存储技术),但即便经过各种优化加强,也已经逼近极限,新的存储技术、机械结构迫在眉睫。比如希捷研发近20年的HAMR(热辅助磁记录),终于已经开花落地,去年底交付了20TB HAMR硬盘,同时新的多传动器(Muti-Actuator)结构也已经基本成熟,二者结合可让机械硬盘的容跨上新台阶,2026年达到50TB就靠它们了。类似未来的半导体工艺制程,要想实现更进一步的突破,全新的存储介质...阅读全文

SonarQube 8.4 发布,分析时间最多可减少 80%

。 更快地分析 C#、C、C++ 和 Objective-C 在此版本中,通过消除分析过程中不必要和多余的工作,加快了针对 C、C++、Objective-C 和 C# 的分析速度。对于 C、C++ 和 Objective-C,测试显示分析时间最多可减少 80%,具体取决于项目使用的外部依赖项的,而 C# 分析显示,时间平均缩短了 25%。 热备份,更快的启动 现在可以进行库备份而无需关闭 SonarQube,不必担心损坏。SonarQube 在问题索引编制完成之前接受并处理分析报告。这意味着,即使在接口完全可用之前,Quality Gate 的状态也将被更新,并发送 webhooks 和拉取请求。同时,一旦索引了每个项目,就可以浏览每个项目。简而言之,当启动在后台进行时,开发生命周...阅读全文

博文 2020-07-13 12:55:22 debian.cn

Python Web 框架 Flask 1.0 正式发布

多线程处理开发过程中的并发请求。 之前不推荐使用的 flask.ext 已被完全删除。 在调试模式下访问 request.form 的缺失密钥时会显示更有用的错误提醒,以避免开发者混淆常见的错误来源。 app.logger 的行为已大大简化,更容易定制。 test_client 新增用于发布 JSON 的 json 参,Response 对象新增 get_json 方法来在测试中将解码为 JSON 。 新增 test_cli_runner ,用于测试应用程序的 CLI 命令。 大文档已被重写,更清晰明了。这是一项长期持续的工作。 教程和相应的示例已被重写。新的示例使用结构化布局并详细介绍每个方面,以帮助新用户更好地规避常见问题并适应 Flask 。 细节请查阅发行说明...阅读全文

博文 2018-04-27 23:21:17 debian.cn