首页 文章 精选 留言 我的

精选列表

搜索[AI替代],共10004篇文章
优秀的个人博客,低调大师

CentOS 替代方案 AlmaLinux 开源其构建系统 ALBS

AlmaLinux 开源了其构建系统 ALBS (AlmaLinux Build System),该工具被用于构建最近发布的 AlmaLinux 8.6 和 AlmaLinux 9.0,支持所有的架构,包括x86_64、aarch64 和 ppc64le。 AlmaLinux 是开放源码、社区驱动的项目,它从红帽企业版 Linux (RHEL) 的源码编译而来。AlmaLinux 跟 RHEL 8 完全在二进制上兼容,它由 CloudLinux OS 的创建者打造。AlmaLinux 团队承诺永久免费提供 AlmaLinux 操作系统,项目永久开源且不采取任何限制,不收取任何费用,支持至 2029 年。 AlmaLinux 团队表示,开源其构建系统是为了提升项目的透明度,让大众了解构建软件包的更多细节,以及目前正在构建的内容、构建日志等。此外,AlmaLinux 开发者希望开源 ALBS 能推动社区进行更大的协作和贡献。 下图展示了 ALBS 工作流程: Build System 的 Master Service通过API接口与 UI & CLI 工具进行交互。 Build Node向 Master Service 发送请求并接收 Build Tasks,然后构建软件包。构建完成后,这些软件包保存到Artifact Storage中。 Test System发送请求并接收Test Tasks (builds)以测试来自 Artefact Storage 的构建包。Test System 通过 Test Nodes(例如具有不同架构的 Docker 或 OpenNebula)来测试软件包,并将测试工件或测试日志和报告发送回 Artifact Storage。 签名服务器发送请求并接收签名任务以使用 PGP 密钥对包进行签名。 Release System发送请求并接收发布任务以将签名包上传到公共仓库。 Git 服务器通过 API 向 Master Service 发送更新。它在两个服务的帮助下完成:gitea-listener和 git-cacher。 AlmaLinux 已将 ALBS 代码托管到 GitHub,此外还开放了支持匿名、只读访问他们实际部署的构建系统:https://build.almalinux.org/。 AlmaLinux 团队还宣布,他们正在努力通过 CodeNotary 集成和 RBAC 系统为包构建添加 SBOM 支持,让更多维护者和贡献者能够访问他们的构建系统来构建软件包。AlmaLinux 团队希望在 7 月份完成这两项工作。同时,在 AlmaLinux 的 ALBS 之外,他们正在研究 COPR 支持、自动化 VM 和容器映像构建/发布,以及构建系统中的组织/SIG 命名空间。

优秀的个人博客,低调大师

作者停止维护,Emacs 替代品正式开源

4coder 官方社交平台于 16 个小时前发布推文,宣布 4coder 编辑器现已完全开源。 4coder 是一个基于 Emacs 的现代文本编辑器,由开发者 Allen Webster 和 Yuval Dolev 开发完成。4coder 的主要目标是最大限度地提高扩展的能力和便利性,4coder 也高度重视性能和可移植性。 4coder 扩展是用 C/C++ 编写的,并编译成可以链接到核心的 .dll 或 .so 文件。与 Emacs 的 elisp 相比,这样做的缺点是必须重新编译扩展,因此用户需要单独设置他们的编译器。而其优点是:首先 C/C++ 允许更多的性能导向的定制代码,其次任何经常使用 C/C++ 的用户将能够在他们的 4coder 扩展中使用自己的代码。 在回复网友询问时,作者表示项目已经停止维护,并且 4coder 的代码已经非常古老,接下来他们会尝试开发一些新的东西,因此决定开源 4coder。 目前 4coder 的代码已经托管至 GitHub 平台,包含项目 2014 年至 2022 年的所有代码,并基于非常宽松的 MIT 协议分发。 由于项目已经停止维护,作者也明确表示不会在这个仓库中接受 PR 或进行任何其他形式的贡献。作者在开源 4coder 的同时,也归档了该仓库,其意图是让依赖 4coder 的用户可以选择 fork 代码库、修复他们的问题,或者根据他们自己的愿景将 4coder 带向新的方向。

优秀的个人博客,低调大师

ReactOS 0.4.14 发布,Windows 系统的开源替代方案

ReactOS 0.4.14 现已发布。此版本的改进范围包括有 FreeLoader 修复、Shell 功能、内核修复、NetKVM VirtIO bringup、Xbox 端口的进一步工作以及对 NEC PC-9800 的支持。公告指出,开发团队花了一年多的时间来完善此版本并修复回归问题。 此版本的一些更新亮点如下: 此版本的主要亮点之一是对 Shell 组件所做的大量改进,它构成了 ReactOS 用户体验的重要组成部分。各种 user-interface/shell 改进,包括 context menus 中的“Send To”支持、“Open Command Prompt”支持和其他附加功能。 致力于能够在 NEC PC-9800 (PC-98) 计算机上启动 ReactOS。NEC PC-9800是 NEC 开发制造的 16 位和 32 位日本计算机系列。由于这种类型的硬件基于 x86 处理器,所以它是一个相对容易移植的目标。 更好地支持 Internet 控制消息协议 (ICMP)。ICMP 协议的实现了很多改进,包括从 IOCTL_ICMP_ECHO_REQUEST I/O 控制代码的实现到 Icmp** 例程的完全重写。 ReactOS 内核具有更好的稳定性和其他各种改进。内核已经在改进内存管理、物理地址扩展 (PAE) 处理、CRT 异常处理、更好的即插即用和驱动程序工作方面进行了初步工作。 支持用于虚拟机联网的 NetKVM VirtIO 接口。 从系统中删除过时的字体以减少新 ReactOS 版本的二进制大小,也减少了 RAM 消耗。 针对各种开源组件进行更新。 更多详情可查看官方公告:https://reactos.org/project-news/reactos-0414-released/

优秀的个人博客,低调大师

Mattermost 5.14 发布,Slack 的开源替代品

Mattermost是一个灵活的、开放源码的消息传递平台,它支持安全的团队协作。5.14 已经发布,包括可访问性改进、增强的 Jira 集成、LDAP 组同步升级等,内容如下: 更高效的使用屏幕阅读器和键盘导航增强功能 使用更深层次的 Jira 集成,在不离开 Mattermost 的情况下完成更多工作 通过系统控制台中的 ldap 组同步管理团队和成员 在 Web 应用程序上查找未读消息会节省时间,因为当用户打开频道时,用户会自动定位在他们从未阅读过的旧的帖子上 详情见发布说明 下载地址:https://mattermost.com/download

优秀的个人博客,低调大师

Android 开发者应该使用 FlatBuffers 替代 JSON ?

你可能会问,既然我们已经有很标准的JSON以及转换库比如GSON和Jackson,为什么还要使用新的工具呢? 不妨先试一下FlatBuffers,然后你就会发现它比JSON快得多。 FlatBuffers是什么? FlatBuffers是一个高效的跨平台序列化类库,可以在C++、C#、C、Go、Java、JavaScript、PHP和Python中使用。是Google开发的,是为了应用在游戏开发,以及其他注重性能的应用上。 为什么要使用FlatBuffers? 不需要解析/拆包就可以访问序列化数据 — FlatBuffers与其他库不同之处就在于它使用二进制缓冲文件来表示层次数据,这样它们就可以被直接访问而不需解析与拆包,同时还支持数据结构进化(前进、后退兼容性)。 内存高效速度快 — 访问数据时只需要访问内存中的缓冲区。它不需要多余的内存分配(至少在C++是这样,其他语言中可能会有变动)。FlatBuffers还适合配合 mmap或数据流使用,只需要缓冲区的一部分存储在内存中。访问时速度接近原结构访问,只有一点延迟(一种虚函数表vtable),是为了允许格式升级以 及可选字段。FlatBuffers适合那些花费了大量时间和空间(内存分配)来访问和构建序列化数据的项目,比如游戏以及其他对表现敏感的应用。可以参 考这里的基准。 灵活 — 由于有可选字段,你不但有很强的升级和回退兼容性(对于历史悠久的游戏尤其重要,不用为了每个版本升级所有数据),在选择要存储哪些数据以及设计数据结构时也很自由。 轻量的code footprint — FlatBuffers只需要很少量的生成代码,以及一个表示最小依赖的很小的头文件,很容易集成。细节上可以看上面的基准页。 强类型 — 编译时报错,而不需要自己写重复的容易出错的运行时检查。它可以自动生成有用的代码。 使用方便 — 生成的C++代码允许精简访问与构建代码。还有可选的用于实现图表解析、类似JSON的运行时字符串展示等功能的方法。(后者比JSON解析库更快,内存效率更高) 代码跨平台且没有依赖 — C++代码可以运行在任何近代的gcc/clang和VS2010上。同时还有用于测试和范例的构建文件(Android中.mk文件,其他平台是cmake文件)。 都有谁使用FlatBuffers? BobbleApp,印度第一贴图App。我们在BobbleApp中使用FlatBuffers后App的性能明显增强。 Cocos2d-x,第一开源移动游戏引擎,使用FlatBuffers来序列化所有的游戏数据。 Facebook使用FlatBuffers在Android App中进行客户端服务端的沟通。他们写了一篇文章来描述FlatBuffers是如何加速加载内容的。 Google的Fun Propulsion Labs在他们所有的库和游戏中大量使用FlatBuffers。 App性能有多大提高? 解析速度 解析一个20KB的JSON流(这差不多是BobbleApp的返回大小)需要35ms,超过了UI刷新间隔也就是16.6ms。如果解析JSON的话,我们就在滑动时就会因为要从磁盘加载缓存而导致掉帧(视觉上的卡顿)。 解析器初始化 一个JSON解析器需要先构建字段映射再进行解析,这会花100ms到200ms,很明显的拖缓App启动时间。 垃圾回收 在解析JSON时创建了很多小对象,在我们的试验中,解析20kb的JSON流时,要分配大约100kb的瞬时存储,对Java内存回收造成很大压力。 FlatBuffers vs JSON 我尝试使用FlatBuffers和JSON解析4mb的JSON文件。 FlatBuffers花了1-5ms,JSON花了大约2000ms。在使用FlatBuffers期间Android App中没有GC,而在使用JSON时发生了很多次GC。在使用JSON时UI完全卡住,所以真实使用时只能在后台线程进行解析。 如何使用FlatBuffer呢? 我在我的GitHub中写了一个示例,里面手把手教你如何使用FlatBuffer。 文章转载自 开源中国社区[http://www.oschina.net]

优秀的个人博客,低调大师

用 ResizeObserver 替代 window.resize 监听元素尺寸变化

做后台管理系统时,图表容器经常需要根据父级宽高自适应。早些年我会挂一个 window.addEventListener('resize', handler),然后在回调里读 container.offsetWidth 重新渲染。这个做法在简单布局里能跑,但一旦遇到侧边栏折叠、标签页切换、flex 容器内部尺寸变化这些场景,就完全不灵了——窗口大小根本没变,元素尺寸却变了。另一种常见处理是轮询 setInterval 去比对尺寸,内存和 CPU 都不划算,还容易在组件销毁时漏掉清理。浏览器原生提供的 ResizeObserver 就是为这类需求设计的,它可以监听任意元素的内容盒或边框盒尺寸变化,并在布局完成后以微任务级别触发回调。这篇文章会从实际场景出发,讲清楚它的用法、和 window.resize 的差异、回调里为什么容易写出无限循环、以及怎么跟 Vue/React 的生命周期配合,同时也会提到兼容性边界和降级思路。

资源下载

更多资源
Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册