GVKun编程网logo

惠普发布新款 Dragonfly G4 笔记本:3:2 OLED 3K 屏,999g 重(惠普zbook g4)

1

本文将带您了解关于惠普发布新款DragonflyG4笔记本:3:2OLED3K屏,999g重的新内容,同时我们还将为您解释惠普zbookg4的相关知识,另外,我们还将为您提供关于10亿月活用户下,快手

本文将带您了解关于惠普发布新款 Dragonfly G4 笔记本:3:2 OLED 3K 屏,999g 重的新内容,同时我们还将为您解释惠普zbook g4的相关知识,另外,我们还将为您提供关于10 亿月活用户下,快手基于 Dragonfly 的超大规模镜像分发实践、DragonFly BSD 3.0 发布、DragonFly BSD 备忘录、Dragonfly 中 P2P 传输协议优化的实用信息。

本文目录一览:

惠普发布新款 Dragonfly G4 笔记本:3:2 OLED 3K 屏,999g 重(惠普zbook g4)

惠普发布新款 Dragonfly G4 笔记本:3:2 OLED 3K 屏,999g 重(惠普zbook g4)

1 月 4 日消息,惠普今天发布新款 Dragonfly G4,搭载了 13 代酷睿处理器,配备了 3:2 OLED 3K 分辨率屏。

小编了解到,这款笔记本搭载 13 代酷睿处理器,具体型号未说明。屏幕方面,Dragonfly G4 配备了 13.5 英寸 3:2

比例的屏幕,可选 3K*2K 的 OLED 面板。

其他方面,这款笔记本最高可选 32GB LPDDR5 内存和 2TB SSD。机身尺寸为 297.4 x 220.4 x 16.4mm,重量为

999g,接口包括两个雷电 4、一个 HDMI、一个隐藏式 USB-A 和耳麦接口。

惠普表示, Dragonfly G4 预计将于今年春季上市,定价将在临近产品上市时提供。

10 亿月活用户下,快手基于 Dragonfly 的超大规模镜像分发实践

10 亿月活用户下,快手基于 Dragonfly 的超大规模镜像分发实践

背景

挑战

快手容器云平台旨在为快手不断增长、不断变化和多样化的业务,提供基于容器化部署的超大规模基础设施服务。为了实现这一目标,快手工程师需要解决弹性、稳定性、效率和无服务器架构等挑战,在这些挑战中,镜像分发的稳定性和效率也是最棘手的问题之一。

解决方案

为了让快手容器云平台的镜像分发更加稳定和高效,快手容器云技术团队携手阿里云、蚂蚁集团在龙蜥社区适配优化落地解决方案。事实证明,Dragonfly 及其子项目 Nydus 是当前场景下合适的解决方案,该方案能够与现有系统很好地兼容,在现有能力基础上平滑过渡,同时也为服务交付带来了大幅的效率提升。

效果

Dragonfly 上线后,整个集群通过 P2P 组建分发网,所有节点帮助中心化镜像仓库缓解网络带宽压力。镜像仓库的网络带宽压力平均缓解 70% 以上,峰值压力缓解 80% 以上,镜像分发系统变得更加稳定、可靠、高效,系统能够同时支持更多数量的镜像并发拉取请求,尤其是在应对 Daemonset 部署和关键、大批量实例业务服务更新的场景中,高并发镜像拉取仓库不再是瓶颈。

使用项目

  • Dragonfly:https://github.com/dragonflyoss/Dragonfly2
  • Nydus:https://github.com/dragonflyoss/image-service
  • containerd:https://github.com/containerd/containerd

相关数据

峰值缓解 80% 以上    

镜像拉取时间节省 90% 以上    

POD 实例服务耗时节省 50%

方案详解

为每月10 亿用户提供稳定性和性能支持

“在快手,Dragonfly 有效解决了海量文件分发问题。” 

——吴宏斌 快手综合运营平台负责人

对于快手的镜像分发系统升级改造来说,最大的挑战不仅仅是镜像仓库峰值压力的缓解和镜像拉取加速,如何让服务分发无缝衔接平滑过渡,尽可能让业务无感、不受系统变化影响同样重要。快手容器云平台工程师通过调研发现,Nydus 与 Dragonfly 系统深度集成,同时也支持传统 OCI 镜像,能够以兼容友好的方式提供快速、稳定、安全、便捷的容器镜像访问,非常容易地就能适配容器云平台已有工作,实现业务从已有镜像使用方式平滑过渡到新镜像格式。平台唯一要做的就是将容器运行引擎从 Docker 切换到 containerd,因为 containerd 与 Dragonfly 的集成体验更好。在快手工程师的努力下,大规模节点的容器引擎平稳切换轻而易举,containerd 和 Dragonfly 均已被快速全面采用。

稳定高效的镜像分发

对于稳定、高效的镜像分发,Dragonfly 给出了完美的答案。在快手,有许多重要的服务需要在短短几分钟内扩容到成千上万个实例,例如快手的818 购物节或双 11 活动的业务扩容需求。这种缩放需要数千 GB 带宽才能直接从镜像仓库下载。在另外一些场景中,预测模型和搜索业务需要定期更新模型参数文件和索引文件来保证推荐效果和检索效果,这在技术上意味着必须立即将数百 GB 的文件分发到每个相关实例。

快手工程师在所有容器云主机部署了 Dragonfly 组件:Dfdaemon 和 Dfget,通过 P2P 算法拉取文件。同时,在每个 AZ 部署了独立的超级节点集群,为 Dfget 设计了 Schedule Server,选择合适的超级节点来避免跨 AZ 或者跨 Region 的流量。更重要的是,工程师基于 Dragonfly 独特的片管理 P2P 算法实现了数据流 P2P 传输,降低了磁盘负载。得益于 Dragonfly,数以万计的实例可以同时拉取镜像或下载文件,而不会增加时间成本和磁盘负载。

“先进的技术就是第一生产力,快手容器云平台拥抱 Dragonfly 和 Nydus 后,应用交付效率大幅提升,给业务创新带来了更多可能。”

——孙寅 快手容器云负责人

由于拉取镜像是容器生命周期中比较耗时的步骤之一,为了进一步加速镜像分发和服务启动,工程师们又继续启用了 Nydus 镜像懒加载项目。快手有许多服务有数千个 Pod 实例,其中一些有超过 20G 或更大的镜像,当这些服务升级或扩容时,巨大的镜像和启动时间会严重减慢服务启动。快手需要一种能够显著提高服务启动速度的解决方案,特别是因为某些服务将其训练模型放入镜像中,这对于服务启动来说可能是灾难性的。

由于快手在 Dragonfly 项目上的应用和实施,工程师们很早就了解到 Nydus 项目。Nydus 是一个强大的开源文件系统解决方案,可以为云原生工作负载,例如容器镜像,构建高效的镜像分发系统。

得益于 Nydus 全新的镜像设计,每个 Pod 可以在几秒钟内完成启动,这样可以大量节省服务部署实例的启动时间,让应用尽快为用户提供服务。对于每个集群节点,支持Nydus的工作并不复杂,通过容器引擎无损切换(指无需 POD 驱逐)、配置变更即可顺利完成。

在实践中, 针对快手容器云平台的全局镜像仓库中心,我们做了以下事情:

  1. 容器引擎从 Docker 无损切换到 containerd;
  2. 在镜像构建阶段支持使用 Nydus 标准构建镜像;
  3. 在集群节点间,使用 Dragonfly 的 P2P 技术支持镜像分发;
  4. containerd通过配置Dragonfly 的 P2P 代理拉取镜像,并使用 Nydus 镜像启动容器。

当然,以上所有的变动,都继续兼容当前已有的 OCI 镜像格式以及系统已有功能。

综上所述,Dragonfly 和 Nydus 一起为快手容器云平台提供了处理镜像分发问题的最佳解决方案。数以万计的快手服务大大减少了部署时间,业务线研发工程师在更新服务时也更加轻松容易。

Dragonfly 和 Nydus 都是来自 CNCF 的优秀开源项目,更进一步说,快手也将继续对该项目进行更多投入,并与社区展开深入合作,使它变得更加强大和可持续。云原生技术是基础设施领域的一场革命,尤其是在弹性和无服务器方面,我们相信 Dragonfly 一定会在云原生生态中扮演重要角色。

DragonFly BSD 3.0 发布

DragonFly BSD 3.0 发布

DragonFly BSD 3.0 今日发布;新的版本带来了 MP系统(此发行中MP内核成了默认的内核)上性能的提升, TrueCrypt兼容的磁盘加密,增强的POSIX兼容性以及其他改进。该项目下一件大事将是HAMMER文件系统(HAMMER 2)的重大改进。DragonFly 创始人Matthew Dillon 表示,尽管按计划完全实现要到2013年, 但它将成为他接下来整年的主要工作中心。



转载请注明:Linux人社区> 英文资讯翻译专版.编译

英文原文:
DragonFly BSD 3.0 released
posted by ddc_ on Wed 22nd Feb 2012 21:49 UTC
DragonFly BSD 3.0 was released today, bringing the improved performance on MP systems (MP kernel became the default one in ths release), TrueCrypt-compatible disk encryption, enhanced POSIX compatibility and other improvements. The next big thing for the project will be the major revision of the HAMMER file system (HAMMER2). The DragonFly founder Matthew Dillon said it to be the main focus of his effort for the whole yaer, though the full implementation is expected only in 2013.           

DragonFly BSD 备忘录

DragonFly BSD 备忘录

1.//dhcp 配置

1. vi /etc/resolv.conf ##添加DHCP server
nameserver 192.168.1.1

2. vi /etc/rc.conf 添加DHCP
ifconfig_dc0="DHCP" #将 dc0 替换为希望自动配置的网络接口的名字(可用ifconfig查询)
dhcp_program="/sbin/dhclient"
dccp_flags=""

3. reboot

2.// 安装

安装文档:http://www.dragonflybsd.org/docs/newhandbook/Installation/

安装方式 (适用其他 bsd):

下载最新的 img 镜像文件(img 是写入到 U 盘的镜像,iso 是刻录 CD 的)。

在 * nix(Linux、BSD 或 Mac OS X)下用 dd 命令刻录到 U 盘(要求大于 2G),Windows 平台可以用 ImageWriter 等类似软件

Dragonfly 中 P2P 传输协议优化

Dragonfly 中 P2P 传输协议优化

文|孙珩珂

上海交通大学

本文1987字 阅读 10 分钟

01 优化背景

此前 Dragonfly 的 P2P 下载采用静态限流策略,相关配置项在 dfget.yaml 配置文件中:

# 下载服务选项。
download:  
# 总下载限速。  
totalRateLimit: 1024Mi  
# 单个任务下载限速。  perPeerRateLimit: 512Mi

其中 perPeerRateLimit 为单个任务设置流量上限, totalRateLimit 为单个节点的所有任务设置流量上限。

静态限流策略的理想情况是: perPeerRateLimit 设置为20M , totalRateLimit 设置为 100M ,且该节点目前运行了 5 个或更多的 P2P 下载任务,这种情况下可以确保所有任务总带宽不会超过 100M ,且带宽会被有效利用。

这种限流策略的缺点是:若perPeerRateLimit 设置为 20M , totalRateLimit 设置为 100M ,并且当前该节点只运行了一个下载任务,那么该任务的最大下载速度为 20M ,和最大带宽 100M 相比,浪费了 80% 的带宽。

因此,为了最大限度地利用带宽,需要使用动态限流来确保任务数量少时能能充分利用总带宽,而任务数量多时也能公平分配带宽。最终,我们设计出一套根据上下文进行动态限流的算法,其中上下文指各任务在过去一秒内使用的带宽,此外,算法还考虑到了任务数量、任务剩余大小、任务保底带宽等因素,性能相比原来的静态限流算法有显著提升。

02 相关代码分析

perPeerRateLimit 配置项最终赋值给 peerTaskConductor 的pt.limiter ,由 peerTaskConductor 的 DownloadPiece() 函数里进行限速,pt.waitLimit() 进行实际限流工作,底层调用 Go 自带的限流函数 WaitN() 。

TotalRateLimit 配置项则在创建 Daemon 时被赋值给 pieceManager 的pm.limiter ,在 pieceManager 的 DownloadPiece() 和 processPieceFromSource() 函数中用到的 pm.limiter ,而这两个函数都会由 peerTaskConductor 调用,也就是说 P2P 下载会先进行总限速,之后再进行每个任务单独限速。

根据以上分析,Dragonfly 进行任务限速的逻辑为,每个peer task(peerTaskConductor)会有单独的限速 perPeerRateLimit ,同时 pieceManager 会有 TotalRateLimit 的总限速,以此达到单任务单独限流,同时限制所有任务总带宽的效果。

03 优化方案

为了解决此前静态限流算法总带宽利用率不佳的缺点,需要将其改进为动态限流算法,即总带宽限速仍恒定,但每个任务的单独带宽限速需要根据上下文适度、定期调整,已达到最大化利用总带宽、同时相对公平分配带宽的目的。

在经过数个改版后,最终我们确定了根据上下文进行限流的 sampling traffic shaper 动态限流算法。具体方案为,每个任务的单任务限流交由 TrafficShaper 组建进行统一管理, TrafficShaper 维护当前正在运行的所有任务,并且定期(每秒)更新这些任务的带宽。

具体来说,上下文指每个任务在上一秒使用的带宽、每个任务的剩余大小、任务数量、任务保底带宽(不能低于 pieceSize )等因素, TrafficShaper 会根据这些上下文公平地、效率最大化地为每个任务分配其下一秒的带宽(具体分配方案详见下一小节),实现动态限流的效果。

04 优化实现

定义 TrafficShaper 接口如下:

// TrafficShaper allocates bandwidth for running tasks dynamically
type TrafficShaper interface {
   // Start starts the TrafficShaper
   Start()   
   // Stop stops the TrafficShaper
   Stop()   
   // AddTask starts managing the new task
   AddTask(taskID string, ptc *peerTaskConductor)
   // RemoveTask removes completed task
   RemoveTask(taskID string)   
   // Record records task''s used bandwidth
   Record(taskID string, n int)
   // GetBandwidth gets the total download bandwidth in the past second
   GetBandwidth() int64
}

该接口有两种实现,第一种是 samplingTrafficShaper 即基于上下文的 traffic shaper ,第二种是 plainTrafficShaper 只记录带宽使用情况,除此之外不做任何动态限流工作,用于和 samplingTrafficShaper 对比性能提升。

同时,将相关配置项修改为如下内容:

# 下载服务选项。
download:  
# 总下载限速。
totalRateLimit: 1024Mi
# 单个任务下载限速。
perPeerRateLimit: 512Mi
# traffic shaper类型,有sampling和plain两种可选  trafficShaperType: sampling

Traffic shaper 的具体运行逻辑为,由peerTaskManager维护trafficShaper,在创建peerTaskManager时,根据配置初始化trafficShaper,并且调用Start()函数,启动trafficShaper,具体来说,新建time.NewTicker,跨度为 1 秒,也即每秒trafficShaper都会调用updateLimit()函数以动态更新所有任务的带宽限流。

updateLimit() 函数会遍历所有运行中的任务,得出每个任务上一秒消耗的带宽以及所有任务消耗的总带宽,随后根据任务上一秒使用的带宽、任务剩余大小等因素,按比例分配带宽,具体来说首先根据上一秒该任务使用带宽以及该任务剩余大小的最大值确定下一秒该任务带宽,接着所有任务带宽根据总带宽按比例缩放,得到下一秒的真实带宽;同时需要确保每个任务的带宽不低于该任务的 pieceSize ,以免出现持续饥饿状态。

在 peerTaskManager 的 getOrCreatePeerTaskConductor() 函数中,若新建任务,需要带宽,那么调用 AddTask() 更新所有任务的带宽,即按照已有任务的平均任务分配带宽,然后再根据总带宽上限将所有任务的带宽等比例进行缩放;根据平均带宽分配新任务带宽的优势为,避免了已经有一个任务占满了所有带宽,有新任务进来时,带宽会被压缩到很小 **的情况;同时,不是平均分配带宽,而是按需等比例分配,可以确保带宽需求量大的任务仍然带宽最多。在 peerTaskManager 的 PeerTaskDone() 函数中,任务完成,不再占用带宽,调用 RemoveTask() 按比例扩大所有任务的带宽。

最后, peerTaskManager 停止时,调用 Stop 函数,停止运行 traffic shaper 。

05 优化结果

测试 traffic shaper 相比原有的静态限流策略在单个任务、多个任务并发、多个任务交错等多种情况下的性能提升,测试结果如下:

注:若不特殊注明,单任务限流为4KB/s,总限流为10KB/s

可以看到, traffic shaper 在单任务、多任务不相交、单任务低带宽等情况下相比静态限流策略性能提升明显,为 24%~59% 。在多个任务并发、多个任务交错等情况下和静态限流策略性能相当。综上,实验证明 sampling traffic shaper 能很好地解决任务数量较少时总带宽被大量浪费的情况,同时在任务数量较多以及其他复杂情况时依旧能保证和静态限流算法持平的效果。

PR 链接(已合并): https://github.com/dragonflyoss/Dragonfly2/pull/1654

本周推荐阅读

Dragonfly 基于 P2P 的文件和镜像分发系统

深入 HTTP/3(2)|不那么 Boring 的 SSL

Go 代码城市上云——KusionStack 实践

MOSN 反向通道详解

关于惠普发布新款 Dragonfly G4 笔记本:3:2 OLED 3K 屏,999g 重惠普zbook g4的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于10 亿月活用户下,快手基于 Dragonfly 的超大规模镜像分发实践、DragonFly BSD 3.0 发布、DragonFly BSD 备忘录、Dragonfly 中 P2P 传输协议优化的相关信息,请在本站寻找。

本文标签: