您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件开发专栏 > 开发技术 > 正文

2022年最佳开源软件出炉

发表于:2022-11-15 作者:奇酷教育 来源:今日头条

InfoWorld 公布了 2022 年最佳开源软件榜单。

InfoWorld 是致力于引领 IT 决策者走在科技前沿的国际科技媒体品牌,每年 InfoWorld 都会根据软件对开源界的贡献,以及在业界的影响力评选出当年的 “最佳开源软件” (InfoWorld's Best of Open Source Software Awards, 简称 Bossies),该奖项评选已经延续了十多年。

InfoWorld 的 2022 年 Bossie 奖旨在表彰年度最重要和最具创新性的应用程序开发、devops、数据分析和机器学习工具。

接下来具体看看每一个项目。

AlmaLinux

AlmaLinux 是开放源码的、社区驱动的项目,一开始是作为 CentOS 的替代品,由 CloudLinux OS 的创建者打造 。它从红帽企业 Linux (RHEL) 的源码编译而来,跟 RHEL 8 完全在二进制上兼容。

项目地址:

​https://www.oschina.net/p/almalinux​

podman

Podman 是一个无守护进程的容器引擎,用于在 Linux 系统上开发、管理和运行 OCI 容器。容器既可以以 root 身份运行,也可以在无 root 模式下运行。

Podman 是 Libpod 的一部分,它的定义可以简单用这个命令表示:`alias docker=podman`。

项目地址:

​https://www.oschina.net/p/podman​

Play with Docker (PWD)

Play with Docker (PWD) 是一个 Docker 学习平台,在浏览器中提供免费的 Alpine Linux 虚拟机体验。(不过需要登录和注册,而且每次登录创建的实例都有有时间限制,到时间需要重新登录)

你可以在 Play with Docker 中构建和运行 Docker 容器,训练自己操作 Docker 的能力(默认已搭建好环境),甚至在 Docker Swarm 模式下创建集群, Docker-in-Docker (DinD) 用于提供多个 VM/PC 的效果。

项目地址:

​https://www.oschina.net/p/play-with-docker​

Vaadin

Vaadin 是一个可在 Java 中实现 Web 用户界面的 Web 框架,无需编写任何 HTML 或 JavaScript 代码。Vaadin 包含一个服务器端的结构,主要的应用逻辑都在服务器端运行,浏览器端通过 Ajax 技术跟服务器端进行交互。

项目地址:

​https://www.oschina.net/p/vaadin​

JHipster

JHipster 是一个全栈的 Java 应用程序开发平台,可用来创建基于 Maven + Spring + AngularJS 的项目,提供完全热加载的 Java 和 JavaScript 代码。

JHipster 提供了包含 CLI 工具在内的许多组件,用于处理脚手架生成并针对异构技术堆栈工作:以 Vue.js UI 为前端的 MongoDB,以 React 为前端的 Postgres 等等...

项目地址:

​https://www.oschina.net/p/jhipster​

SolidJS

SolidJS 是一个用于构建用户界面的声明式、高效且灵活的 JavaScript 库。它不使用虚拟 DOM。相反,它选择将其模板编译为真实的 DOM 节点,并将更新包装在细粒度的 React 中。

项目地址:

​https://www.oschina.net/p/solid-js​

Redwood

Redwood 是一个全栈 Web 框架,它将 React、GraphQL、Prisma、TypeScript、Jest 和 Storybook 的最佳部分结合在一起。

Redwood 采用类似 Rails 的方法来满足数据建模和脚手架等重复性需求,也解决了安全性和跟踪、集成等需求。Redwood 允许针对各种部署环境,包括 Vercel 和 Netlify 等无服务器平台。

项目地址:

​https://www.oschina.net/p/redwood​

Next.js

Next.js 是一个用于服务器渲染的通用 JavaScript Web 应用程序的小型框架,该框架基于 React、Webpack 和 Babel 构建,为该网站提供了强大的支持。

项目地址:

​https://www.oschina.net/p/next-js​

Wasmtime

Wasmtime 是 WebAssembly 和 WASI 的小型高效运行时,采用 Rust 编写,构建于编译器 Cranelift 之上。Wasmtime 完全开源,符合 WASI 标准,还支持与 C/C++、Python、.NET、Go 和其他编程语言集成,可运行在 Windows/Linux/macOS 等平台。

项目地址:

​https://www.oschina.net/p/wasmtime​

PyScript

PyScript 是一个开发框架,为开发者提供了在标准 HTML 中嵌入编写 Python 代码的能力、使用 Python 调用 JavaScript 函数库,以及创建 Python Web 应用。PyScript 旨在提供 “一等公民 (first-class)” 的编程语言,它具有一致的风格化规则、更具表现力且更易于学习。

项目地址:

​https://www.oschina.net/p/pyscript​

OpenFGA

OpenFGA 是一种适用于细粒度授权的开源授权解决方案,允许开发人员使用易于阅读的建模语言和友好的 API 构建精细的访问控制系统。

它应用了 ReBAC 的概念,由 Auth0 FGA 团队创建,并受到 Zanzibar 的启发,专为大规模的可靠性和低延迟而设计。

项目地址:

​https://www.oschina.net/p/openfga​

Sentry

Sentry 是一个实时的事件日志和聚合平台,基于 Django 构建。Sentry 可以帮助你将 Python 程序的所有 exception 自动记录下来,然后在一个简单好用的 UI 上呈现和搜索。

项目地址:

​https://www.oschina.net/p/sentry​

Appsmith

Appsmith 是一个开源低代码框架,用于构建管理面板、CRUD 应用程序和工作流。它允许拖放组件来构建仪表板、使用 JavaScript 对象编写逻辑并连接到任何 API、数据库或 GraphQL 源。

项目地址:

​https://www.oschina.net/p/appsmith​

Spinnaker

Spinnaker 是一个持续交付平台,它定位于将产品快速且持续的部署到多种云平台上。

Spinnaker 主要特性:配置一次,随时运行;随地部署,集中化管理;开源。

项目地址:

​https://www.oschina.net/p/spinnaker​

Hypertrace

Hypertrace 是一个开源的分布式跟踪和可观察性引擎,能够从庞大的云原生架构中的大量服务中摄取和处理大量实时性能数据。

Hypertrace 监控应用程序和微服务,跨多个接触点跟踪分布式事务,并将所有这些信息提炼成服务指标和应用程序流程图,并显示在完全可定制的仪表板中。

项目地址:

​https://www.hypertrace.org/​

Gravitee

Gravitee API 网关是基于 Vert.X 开发的高性能接口网关,支持 Swagger 导入接口、文档管理、性能分析、操作审计、日志,负载均衡等功能。

项目地址:

​https://www.oschina.net/p/gravitee-gateway​

OpenTelemetry

OpenTelemetry 是一项高质量的便携式遥测技术,可用于检测、生成、收集和导出遥测数据(指标、日志和跟踪),以帮助分析软件的性能和行为。

OpenTelemetry 通常可跨多种语言使用,且易于与流行的库和框架集成,例如 Spring、 ASP.NET Core、 Express、Quarkus 等。

项目地址:https://opentelemetry.io/

Grafana

Grafana 是 Graphite 和 InfluxDB 仪表盘和图形编辑器,同时也是开源的、功能齐全的度量仪表盘和图形编辑器,支持 Graphite,InfluxDB 和 OpenTSDB。

Grafana 主要特性:灵活丰富的图形化选项;可以混合多种风格;支持白天和夜间模式;多个数据源;Graphite 和 InfluxDB 查询编辑器等等。

项目地址:

​https://www.oschina.net/p/grafana​

Dapr

Dapr(Distributed Application Runtime ,分布式应用运行时)是微软新推出的,一种可移植的、serverless 的、事件驱动的运行时,它使开发人员可以轻松构建弹性,无状态和有状态微服务,这些服务运行在云和边缘上,并包含多种语言和开发框架。

项目地址:

​https://www.oschina.net/p/dapr​

Redpanda

Redpanda 是 Kafka 的插件替代品,主要用 C++ 编写,使用 Seastar 异步框架和 Raft 共识算法用于其分布式日志。

它可以提供高达 10 倍的平均延迟降低和高达 6 倍的 Kafka 事务速度,同时运行在更少的资源上。

项目地址:https://redpanda.com/

Apache lceberg

Iceberg 是一种用于大型分析表的高性能格式。Iceberg 为大数据带来了 SQL 表的可靠性和简单性,同时让 Spark、Trino、Flink、Presto、Hive 和 Impala 等引擎能够同时安全地使用相同的表。

项目地址:

​https://iceberg.apache.org/​

Apache Druid

Druid 是一个高性能实时分析数据库。它是为大型数据集上实时探索查询的引擎,提供专为 OLAP 设计的开源分析数据存储系统,它的设计意图是在面对代码部署、机器故障以及其他产品系统遇到不测时能保持 100% 正常运行。它也可以用于后台用例,但设计决策明确定位线上服务。

项目地址:

​https://www.oschina.net/p/druid_analytics​

JAX

JAX 是一个 TensorFlow 的简化库,它结合了 Autograd 和 XLA,专门用于高性能机器学习研究。

凭借 Autograd,JAX 可以求导循环、分支、递归和闭包函数,并且它可以进行三阶求导。通过 grad,它支持自动模式反向求导(反向传播)和正向求导,且二者可以任何顺序任意组合。

项目地址:

​https://www.oschina.net/p/jax​

nbdev

nbdev 是一个 Jupyter Notebooks 驱动的开发平台。只需使用轻量级标记编写 Jupyter Notebooks ,即可获得高质量的文档、测试、持续集成和打包.

比起传统编程环境,nbdev 的代码调试和重构容易得多,因为始终可以轻松获得活动对象。

项目地址:https://nbdev.fast.ai/

Accelerate

Accelerate 是一个库,只需添加四行代码,即可在任何分布式配置中运行相同的 PyTorch 代码!

简而言之, Accelerate 使得大规模的训练和推理变得简单、高效和强适应性。

项目地址:

​https://huggingface.co/docs/accelerate/index​

Stable Diffusion

Stable Diffusion 是一种文本到图像的 AI 模型,可以生成质量惊人的图像。

世界各地的爱好者都在围绕这个项目进行改进工作,以加快图像生成速度,支持在内存较低的 GPU 上运行,并添加画内和画外支持,他们甚至在 M1 驱动的 MacBook 上运行了 Stable Diffusione。

项目地址:

​https://github.com/CompVis/stable-diffusion​

EleutherAI

严格来说,EleutherAI 是一群致力于实现开源人工智能研究的 AI 研究人员,旗下有多款预训练模型,包括 GPT-NeoX-20B,一个与 CoreWeave 合作训练的 200 亿参数模型;GPT-J-6B ,在 Pile 上训练的 60 亿参数模型...

项目地址:https://www.eleuther.ai/

以上是 2022 年度 InfoWorld Bossie Awards 的所有得奖项目,关于每个项目具体的入选评语等详细信息,可查看网站原文:

​https://www.infoworld.com/article/3637038/the-best-open-source-software-of-2021.html#slide1​