Netpoll 是由 字节跳动 开发的高性能 NIO(Non-blocking I/O) 网络库,专注于RPC场景。

Netpoll 是由 字节跳动 开发的高性能 NIO(Non-blocking I/O) 网络库,专注于RPC场景。 RPC 通常有较重的处理逻辑,因此无法串行处理 I/O。而 Go 的标准库net设计了BIO(Blocking I/O) 模式的API,使得 RPC 框架设计上只能为每个连接都分配一个goroutine。 这在高并发下,会产生大量的goroutine,大幅增加调度开销。此外,net.Conn 没有提供检查连接活性的API,因此 RPC 框架很难设计出高效的连接池,池中的失效连接无法及时清理。 另一方面,开源社区目前缺少专注于 RPC 方案的Go网络库。类似的项目如:evio , gnet等,均面向 Redis,HAProxy这样的场景。 因此Netpoll应运而生,它借鉴了evio和 netty的优秀设计,具有出色的 性能,更适用于微服务架构。 同时,Netpoll还提供了一些 特性,推荐在RPC设计中替代net。 | #框架

相关推荐

封面图片

在 Go 中构建高性能数据集成框架

在 Go 中构建高性能数据集成框架 数据集成是一个 30+ 年的问题,从 API 中提取数据,对其进行规范化并将其加载到各种不同的目的地,例如数据库、数据湖和文件。在过去的20年里,这个问题已经变得尖锐,特别是在营销和业务分析领域,但最近在基础设施领域,随着云供应商和基础设施服务的爆炸式增长。 尽管数据集成是一个老问题,永远不会完全解决(至少在SaaS服务在拥有一致的机器可读API方面没有变得更好),但我们相信有很大的机会大规模解决这个问题并实现新的本地最优,现在可以完成。 解决这个问题带来了重大挑战。在这篇文章中,我将介绍这些挑战,为什么它们很难,以及我们在CloudQuery设计中采用的解决方案。 ||| #框架

封面图片

go-zero(收录于 )是一个集成了各种工程实践的web和rpc框架。通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战

go-zero(收录于 )是一个集成了各种工程实践的web和rpc框架。通过弹性设计保障了大并发服务端的稳定性,经受了充分的实战检验。 go-zero包含极简的API定义和生成工具goctl,可以根据定义的 api 文件一键生成Go, iOS, Android, Kotlin, Dart, TypeScript, JavaScript代码,并可直接运行。 使用go-zero的好处: - 轻松获得支撑千万日活服务的稳定性 - 内建级联超时控制、限流、自适应熔断、自适应降载等微服务治理能力,无需配置和额外代码 - 微服务治理中间件可无缝集成到其它现有框架使用 - 极简的API描述,一键生成各端代码 - 自动校验客户端请求参数合法性 - 大量微服务治理和并发工具包 || #框架

封面图片

开源 API 开发者工具包,让你在不牺牲性能的情况下更快、更安全地构建应用程序

开源 API 开发者工具包,让你在不牺牲性能的情况下更快、更安全地构建应用程序 功能概述 1.用于任意数量 API 的无冲突合并的API 命名空间 2.使用 OpenID Connect (OIDC) 进行身份验证 3.身份验证感知数据获取,使数据获取变得容易 4.授权 - 声明注入,因此您可以轻松构建安全的应用程序 5.授权 - 基于角色的访问控制以保护操作 6.JSON-RPC让 GraphQL 更加安全和高性能 7.TypeSafe Hooks可轻松添加自定义业务逻辑 8.模拟以便于开发 9.本地开发:本地开发,轻松全球部署 10.用于增强安全性的JSON 模式验证 11.数据库到即时 API,可从您最喜欢的数据库即时生成 API 12.生成的客户端为您提供端到端类型安全的出色开发人员体验 13.用自动内容重新验证进行缓存以提高应用程序性能 14.实时订阅,让您的 UI 自动更新 15.开箱即用的CSRF 保护以保护突变 16.基础设施即代码,通过代码轻松配置您的应用程序 17.文件上传到 S3 兼容的存储提供程序以轻松上传文件 18.缓存:安全且高性能的 GraphQL 缓存 19.Cross API JOINs:在单个查询中连接来自多个 API 的数据 ||||| |#API #工具

封面图片

英特尔展示首次全面融合的Optical I/O Chiplet

英特尔展示首次全面融合的Optical I/O Chiplet 英特尔的OCI芯片组通过在数据中心和高性能计算 (HPC) 应用的新兴AI基础设施中实现共同封装的光输入/输出 (I/O),代表了高带宽互连的一次飞跃。英特尔称,我们在融合光电科技到高速数据传输方面实现一个革命性的里程碑。功能方面,这款首款OCI芯片支持64个独立通道,每个通道能够以32千兆位/秒 (Gbps)的速率传输数据,并在长达100米的光纤上高效传输数据,有望满足AI基础设施对更高带宽、更低功耗和更长传输距离日益增长的需求。它增强了集群中CPU与GPU之间的连接,并支持创新的计算架构,如一致性内存扩展和资源解耦。新一代光学I/O技术推动了计算平台的革新,以适应日益增长的AI工作负载随着AI技术的飞速发展,自动驾驶、高级数据分析和虚拟助手等应用在全球范围内日益普及,对计算资源的需求急剧增加。特别是大型语言模型如GPT,以及生成式AI技术的快速发展,极大地推动了AI技术的应用。然而,这些先进的AI模型需要处理和生成的数据量巨大,对计算资源和数据传输提出了极高的要求。随着机器学习模型的规模不断扩大,它们在AI加速工作中的作用也变得越来越复杂,需要极高的计算能力和数据处理能力才能有效运行。这种对高性能计算平台的需求正在推动输入/输出(I/O)带宽的指数级增长和数据传输距离的延伸。为了应对这一挑战,数据中心正在向更大的处理单元集群,如CPU、GPU和IPU的使用,以及更高效的资源利用架构,如xPU解耦和内存池化方向发展。这些技术的实施将提高处理效率,降低系统延迟,并优化资源配置,从而支持更广泛的AI计算和应用。尽管传统的电子I/O系统在传输大量数据时表现出高带宽密度和低功耗的优点,但其最大的弱点是传输距离短,通常仅限于一米内。这严重限制了数据中心内部的设备布局,使得组件之间的连接受到严格的空间限制。为了突破这一限制,数据中心和早期AI集群开始采用可插拔光学模块技术,这种技术能够提供比电子I/O更长的传输距离。然而,随着AI应用对资源的不断增加,光学模块在成本和能耗方面的压力也随之增大。为了应对这些挑战,新一代光学I/O技术应运而生。这种技术将光学I/O与处理器(如CPU、GPU或IPU等,统称为xPU)共封装,不仅大幅提高了带宽,还优化了芯片内部的光和电信号传输,显著降低了能量消耗,还大幅减少了数据传输过程中的延迟,对于需要快速响应的AI应用来说至关重要。更令人兴奋的是,这项技术支持的传输距离远超以往,为数据中心的设计提供了更大的灵活性,使得系统能够适应更广泛的扩展需求。光学I/O技术的推广不仅解决了数据传输的痛点,也为AI和机器学习的未来发展铺平了道路。打个比方,传统的电子I/O连接,类似于旧式马车,在短距离传输中效率较高,但面对大量数据的长距离传输需求时,却显得力不从心。而英特尔的OCI芯片等光学I/O技术,如同现代的汽车和卡车,不仅能在更长的距离上传输更多的数据,而且保持数据的完整性,大大超越了传统电子I/O的性能。随着AI和ML模型需求的不断扩大,光学I/O凭借其卓越的传输能力和高效能源利用,成为推动未来AI技术发展的关键力量。就像汽车和卡车满足了现代社会对快速、大规模物流的需求一样,光学I/O使得数据能够更快、更高效地在更长的距离上传输,这对于扩展AI基础设施至关重要。英特尔在硅光子学领域处于领导地位凭借超过25年的深厚研究基础,英特尔实验室在集成光子学领域取得了开创性的成就。英特尔不仅是首家成功开发并大规模生产硅光子连接产品的企业,更是以其卓越的产品可靠性,赢得了全球主要云服务提供商的信赖。英特尔的核心竞争力在于其独特的混合激光器晶圆上技术和直接集成工艺,这些技术不仅提高了产品的可靠性,还降低了成本。这种独特的方法使得英特尔能够在保持高效率的同时,提供卓越的性能。到目前为止,英特尔的强大生产平台已经出货超过800万片集成电路芯片,这些芯片集成了超过3200万个芯片级激光器。其激光器的故障率极低(故障率小于0.1),这一指标在业界广泛认可,表明故障率极低。这些芯片被封装在可插拔的收发器模块中,并在大型数据中心网络中得到部署,服务于多家大型云服务提供商,用于100Gbps、200Gbps和400Gbps的应用。目前,英特尔还在开发下一代200Gbps每通道的芯片,以支持即将到来的800Gbps和1.6Tbps的应用。在制造工艺上,英特尔引入了全新的硅光子制造工艺节点,这一工艺不仅提升了设备性能,还实现了更高的集成度和更佳的耦合效率,同时显著降低了成本。英特尔在芯片激光器和SOA性能、成本控制以及能效优化方面不断取得突破,芯片面积减少了超过40%,能耗降低了超过15%,进一步巩固了其在硅光子技术领域的领先地位。英特尔目前的OCI芯片模块尚处于原型阶段。展望未来,英特尔正在与特定客户合作,将OCI与他们的系统级芯片(SoCs)一起封装,开发一种创新的光学输入/输出解决方案。 ... PC版: 手机版:

封面图片

代码暗示苹果即将更新iPad产品线 包括新款Mini和M5 Pro高性能机型

代码暗示苹果即将更新iPad产品线 包括新款Mini和M5 Pro高性能机型 最近发现的后台代码可能揭示了苹果即将推出的几款 iPad 机型,尽管苹果最近推出了采用 M4 芯片的 iPad Pro 2024 和两种尺寸的 iPad Air 2024。该代码由尼古拉斯-阿尔瓦雷斯(Nicolás Álvarez)发现,由Aaronp613在 X 上发布。这些帖子提供的细节很少,但苹果观察家们已经根据公布的代码把这些点联系起来。诚然,其中有些内容令人困惑。例如,代码中包含了一款配备 M3 处理器的 iPad Pro,尽管最新机型配备的是 M4 芯片。一种说法是,这是一款正在开发的设备,但后来被取消了。列出的前四款是 iPad15,7、iPad15,8、iPad16,1 和 iPad16,2。这可能是指具有两种连接选项的两款机型仅 WiFi 和带蜂窝网络的 WiFi。另外还提到了 iPad17,x。苹果公司在研发产品的过程中一贯忠实地遵循类似的代码标识符,代码的数值往往低于设备内部的芯片,这一点很有帮助。也许最引人关注的是,这表明苹果可能会在下一代 iPad Pro 上采用下一代 M5 芯片。目前的 M4 iPad Pro 使用的标识符是 iPad16,5 和 iPad16,6,因此 iPad17,x 顺理成章地指向 M5 型号。据报道,苹果工程师在设计M5 时采用了台积电的先进封装技术,包括混合系统集成芯片(SoIC)设计。据称,库比蒂诺打算将这种芯片用于未来的 Mac 和以人工智能为重点的云服务器。该公司的目标是在 2025 年或 2026 年开始量产,因此我们至少要到 2025 年初才能看到 M5 iPad Pro。有传言称,苹果今年将更新整个 iPad 产品线。由于 Pro 和 Air 已经更新,我们可以推测今年推出的两款设备将是第 11 代 iPad 和第 7 代 iPad mini。根据这篇帖子,iPad 应该采用 A16 处理器,而 iPad mini 则可能采用 A17 芯片。如果属实,这将意味着比以前的机型跃升了两代。不过,下一代 iPad mini 也有可能采用 2024 年款 iPad Air 目前搭载的 M2 芯片,因为苹果通常会为其较小的平板电脑提供与 iPad Air 相同的功能和价位。按照惯例,苹果会在 10 月份发布新款 iPad 和 iPad mini,因此该公司可能会在 9 月份发布 iPhone 16 系列的同时宣布这些机型。另一种观点认为,由于苹果今年发布了新版 iPad,因此新机型更有可能在 2025 年发布。 ... PC版: 手机版:

封面图片

新代码库显示Android 15将可以更好地处理WebView崩溃问题

新代码库显示Android 15将可以更好地处理WebView崩溃问题 这个问题最终由谷歌发布 WebView 新版本解决,得益于 WebView 通过 Google Play 更新,因此遇到问题解决时也不算是太麻烦。然而崩溃问题就比较烦了:尽管 WebView 已经通过模块化然后通过 Google Play 发布更新,但用于集成 WebView 核心框架的 API 还是由 OEM 来处理,这部分谷歌无法直接更新。这个问题也是在 WebView 出现异常时导致应用程序反馈崩溃的原因之一,按照正常的工程设计逻辑,如果 WebView 发生崩溃那么应用应该可以检测到并弹出通知,而不是导致整个应用都反复崩溃。将框架 API 也放到 Google Play 更新:AndroidPolice 注意到,在 Android 15 中谷歌在 AOSP 中添加了 WebViewBootstrap 的新 Project Mainline 模块,用来对系统组件进行模块化更新,而不依赖于常规的 OTA 更新。消息源称谷歌计划将大量的 WebView API 相关的代码都放到这个新模块中,以便在未来,紧急情况下也可以快速完成更新,例如在 WebView 彻底无法启动时。值得注意的是谷歌并不准备在常规情况下使用 WebView API 修改内容,谷歌仅仅只是将这个功能预留用来应对紧急情况,所以这个 API 不会有什么明显的变更,开发者几乎不需要重新进行适配。报错更新问题:如上文所说出错应该弹窗提醒而不是直接崩溃,让用户完全搞不清楚发生了什么。谷歌计划在新模块中预留一些功能,旨在用来检测 WebView 组件无法启动,如果检测到无法启动那么还会弹出一些友好通知用来提醒用户。这个新模块将与 Android 15 一起发布,不过在 Android 15 里,OEM 应该是可选是否执行该模块,而到 Android 16 中谷歌将要求 OEM 强制执行该模块以便后续可以处理紧急问题。 ... PC版: 手机版:

🔍 发送关键词来寻找群组、频道或视频。

启动SOSO机器人