点击上方“深度学习技术前沿”,选择“星标”公众号
资源干货,第一时间送达
经过 22 天的投票评选,今天 2019 年度最受欢迎中国开源软件产生了。
开源中国(OSCHINA)是目前国内为数不多深耕于围绕“开源/自由软件”为开发者分享开源业内事、传播开源价值观的平台。
为了更好地展示国内开源现状,探讨国内开源趋势,激励国内开源人才,促进国内开源生态完善,开源中国每年会在年底举办一年一度的最受欢迎中国开源软件评选活动,该活动目前已成功举办五届。
由于对参选项目设置了分类竞争,可以看到今年获得年度最受欢迎中国开源软件的项目更加多元化,涵盖了基础软件、开发框架和基础组件、开发工具与应用软件等领域,下边来看看每一个获奖项目。
基于参数服务器理念的机器学习框架——Angel
Angel 是一个基于参数服务器(Parameter Server)理念开发的高性能分布式机器学习平台,它基于腾讯内部的海量数据进行了反复的调优,并具有广泛的适用性和稳定性,模型维度越高,优势越明显。
Angel 的核心设计理念围绕模型。它将高维度的大模型合理切分到多个参数服务器节点,并通过高效的模型更新接口和运算函数,以及灵活的同步协议,轻松实现各种高效的机器学习算法。
企业级的 UI 设计语言和 React 实现——Ant Design
Ant Design 是一套企业级前端设计语言和基于 React 的前端框架实现。
分布式 RPC 服务框架——Apache Dubbo
Apache Dubbo 是阿里开源的一款高性能 RPC 框架,特性包括基于透明接口的 RPC、智能负载均衡、自动服务注册和发现、可扩展性高、运行时流量路由与可视化的服务治理。
时序数据管理引擎——Apache IoTDB
Apache IoTDB 是针对时间序列数据收集、存储与分析一体化的数据管理引擎。它具有体量轻、性能高、易使用的特点,完美对接 Hadoop 与 Spark 生态,适用于工业物联网应用中海量时间序列数据高速写入和复杂分析查询的需求。
消息中间件——Apache RocketMQ
RocketMQ 是一款分布式消息系统,基于高可用分布式集群技术,提供低延时的、高可靠的消息发布与订阅服务。同时,广泛应用于多个领域,包括异步通信解耦、企业解决方案、金融支付、电信、电子商务、快递物流、广告营销、社交、即时通信、移动应用、手游、视频、物联网与车联网等。
Java 诊断工具——Arthas
Arthas(阿尔萨斯)是一个 Java 诊断工具,可以用于解决一系列开发问题,包括:
这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?
我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
是否有一个全局视角来查看系统的运行状况?
有什么办法可以监控到JVM的实时运行状态?
怎么快速定位应用的热点,生成火焰图?
后台集成解决方案——avue
Avue.js 是基于现有的 element-ui 库进行的二次封装,从而简化一些繁琐的操作,核心理念为数据驱动视图,主要的组件库针对 table 表格和 form 表单场景,同时衍生出更多企业常用的组件,达到高复用,容易维护和扩展的框架,同时内置了丰富了数据展示组件,让开发变得更加容易。
开源 GUI 引擎——AWTK
AWTK 全称为 Toolkit AnyWhere,是一套基于 C 语言开发的 GUI 框架。旨在提供一个功能强大、高效可靠、简单易用、可轻松做出炫酷效果的 GUI 引擎,并支持跨平台同步开发,一次编程,终生使用。
研发运营一体化开源项目——BlueKing
BlueKing(蓝鲸)是一套基于 PaaS 的技术解决方案,提供了完善的前后台开发框架、调度引擎与公共组件等模块,可以帮助业务的产品和技术人员快速构建低成本、免运维的支撑工具和运营系统。
可视化服务平台——Davinci
Davinci 是一个 DVAAS(Data Visualization as a Service)平台解决方案,面向业务人员/数据工程师/数据分析师/数据科学家,致力于提供一站式数据可视化解决方案。既可作为公有云/私有云独立部署使用,也可作为可视化插件集成到三方系统。用户只需在可视化 UI 上简单配置即可服务多种数据可视化应用,并支持高级交互/行业分析/模式探索/社交智能等可视化功能。
深度操作系统——Deepin
深度操作系统(Deepin)包含深度桌面环境(Deepin Desktop Environment)和近 30 款深度原创精品应用,及数款来自开源社区的应用软件,广泛用于支撑用户日常的学习和工作。另外,通过深度商店还能够获得近千款应用软件的支持,满足用户对操作系统的更多应用场景的特定需求。
深度操作系统不仅长期保持活跃,还面向全球用户发布。深度操作系统采用滚动更新方式,每个月在线发布必要的功能和 bug 更新,每 3 个月进行一次可累积发布 ISO 的大更新。并使用新功能和性能优化交替进行的更新方式,保障深度操作系统不仅在美观和易用方面不断进步,在稳定和流畅方面也同样不断得带改善和优化。而无论是更新还是版本发布,深度操作系统都提供 32 种不同语言的版本,用于更新和升级的镜像站也遍布全球六大洲 33 个国家 100 多个站点。
JavaScript 图表库——ECharts
ECharts 是一款基于 JavaScript 的数据可视化图表库,提供直观、生动、可交互、可个性化定制的数据可视化图表。
基于 Vue 2.0 的组件库——Element
Element 是一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库,提供了配套设计资源,帮助开发者的网站快速成型。
Java 实现的 JSON 解析器和生成器——fastjson
fastjson 是一个性能很好的 JSON 解析器和生成器,
主要特点:
快速
强大,支持普通 JDK 类,包括任意 Java Bean Class、Collection、Map、Date 与 enum
零依赖
简洁的后台管理系统——Guns
Guns 是一个基于 Spring Boot 的后台管理系统,项目代码简洁、注释丰富、上手容易,同时包含许多基础模块,可以直接作为一个后台管理系统的脚手架。
Java 工具集——Hutool
Hutool 是一个 Java 工具集,针对项目中 util 包进行开刀,抽象大量的工具方法,旨在减少项目中工具类的数量,将开发者的编码工作专注在业务上。Hutool 对文件、流、加密解密、转码、正则、线程、XML、日期、Http 客户端等 JDK 方法进行封装,组成各种 Util 工具类。
企业级 PHP 协程框架——Hyperf
Hyperf 是基于 Swoole 4.4+ 实现的高性能、高灵活性 PHP 协程框架,内置协程服务器及大量常用的组件,性能较传统基于 PHP-FPM 的框架有质的提升,提供超高性能的同时,也保持着极其灵活的可扩展性,标准组件均基于 PSR 标准 实现,基于强大的依赖注入设计,保证了绝大部分组件或类都是可替换与可复用的。
敏捷测试管理软件——itest(爱测试)
itest 是一款敏捷测试管理软件,旨在打造最懂测试人的开源测试管理软件。
基于代码生成器的 J2EE 开发平台——Jeecg-Boot
Jeecg-Boot 是一款基于代码生成器的 J2EE 快速开发平台,采用前后端分离架构,强大的代码生成器让前后端代码一键生成,无需写任何代码。Jeecg-Boot 引领新的开发模式(Online Coding 模式-> 代码生成器模式-> 手工 MERGE 智能开发), 帮助解决 Java 项目 70% 的重复工作,让开发更多关注业务逻辑。
低代码快速开发平台——JEPaaS
JEPaaS 是一款低代码快速开发平台,可视化的开发环境,低代码拖拽式配置开发,操作极其简单,可以大幅度帮助企业缩减人力和时间成本。支持工作流、IM 即时通讯、bi 图表报表、APP 开发、对接微信、钉钉等。
自动化测试平台——LuckyFrameWeb
LuckyFrameWeb 是一款自动化测试平台,最大的特点是全纬度覆盖了接口自动化、WEB UI 自动化与 APP 自动化,并且支持分布式测试、测试关键字驱动,同时集成了质量管理相关的一些功能。
Mybatis 增强工具包——Mybatis-Plus
MyBatis-Plus 是 Mybatis 的增强工具包,可以简化 CRUD 操作。启动加载 XML 配置时注入单表 SQL 操作 ,为简化开发工作、提高生产率而生。
面向云的分布式消息领域标准——OpenMessaging
OpenMessaging 旨在创立厂商无关、平台无关的分布式消息及流处理领域的应用开发标准。除了做到可以链接跨平台、跨语言、跨产品和跨云的标准之外,OpenMessaging 将提供 Cloud Native 的能力,面向云计算、混合云架构,实现多云平台无缝迁移,致力于提供金融、电子商务、IoT 及大数据等领域的一站式解决方案。
若依权限管理系统——RuoYi
RuoYi 是一个基于 Spring Boot 的权限管理系统,易读易懂、界面简洁美观。核心技术采用Spring、MyBatis 与 Shiro,没有任何其它重度依赖。可以用于所有的 Web 应用程序,如网站管理后台、网站会员中心、CMS、CRM 与 OA。所有前端后台代码封装过后十分精简易上手,出错概率低。同时支持移动客户端访问。
B2C 商城系统——ShopXO
ShopXO 是一个 B2C 商场系统,支持 PC+H5、支付宝小程序、微信小程序、百度小程序、头条&抖音小程序与 QQ 小程序。
SaaS 微服务开发平台——SpringBlade
SpringBlade 是一个微服务开发平台,特点包括:
集成 Sentinel 从流量控制、熔断降级、系统负载等多个维度保护服务的稳定性。
注册中心、配置中心选型 Nacos,为工程瘦身的同时加强各模块之间的联动。
使用 Traefik 进行反向代理,监听后台变化自动化应用新的配置文件。
极简封装了多租户底层,用更少的代码换来拓展性更强的 SaaS 多租户系统。
轻量级 PHP 开发框架——ThinkPHP
ThinkPHP 是一个快速、简单的轻量级 PHP 开发框架,ThinkPHP 从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性,同时拥有众多的原创功能和特性。
基于 Vue.js 的跨平台框架——uni-app
uni-app 是一个使用 Vue.js 开发的跨平台应用前端框架。开发者通过编写 Vue.js 代码,uni-app 将其编译到 iOS、Android、微信小程序与 H5 等多个平台,保证其正确运行并达到优秀体验。
渐进式 JavaScript 框架——Vue.js
Vue.js 是一套构建用户界面的渐进式框架,与其它重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与单文件组件和 Vue 生态系统支持的库结合使用时,Vue 也完全能够为复杂的单页应用程序提供驱动。
开源 IaaS 软件——ZStack
ZStack 是全新的 IaaS 软件,它的诞生是为了解决困绕 IaaS 软件的几大难题:复杂度、稳定性、可伸缩性和灵活性。ZStack 已经提供了大部分 IaaS 的基本功能,包括:虚拟机管理、存储卷管理、存储卷快照与各种网络服务(DHCP、DNS、SNAT、EIP、PortForward 以及 Security Group)。
今年是开源界动荡的一年,也是中国开源界最为热闹的一年,今年我们国内制定了第一个开源 License——“木兰宽松许可证(MulanPSL)”;我们有更多企业拥抱开源;今年中国公司与开发者成为贡献开源的生力军;目前我们第一个开源基金会也正在筹备中。恭喜以上项目在这样一个大背景下获得 2019 年度最受欢迎中国开源软件奖项,也希望中国的开源事业能越来越好。