盘点阿里巴巴 33 个开源项目,你用过哪几个?(3)
JStorm 是参考 Apache Storm 实现的实时流式计算框架,在网络IO、线程模型、资源调度、可用性及稳定性上做了持续改进,已被越来越多企业使用。JStorm 可以看作是 storm 的 java 增强版本,除了内核用纯java实现外,还包括了thrift、python、facet ui。从架构上看,其本质是一个基于 zk 的分布式调度系统。 地址:https://github.com/alibaba/jstorm 6. apns4j apns4j 是 Apple Push Notification Service 的 Java 实现! 地址:https://github.com/teaey/apns4j 7. 分布式数据层 TDDL TDDL 是一个基于集中式配置的 jdbc datasource实现,具有主备,读写分离,动态数据库配置等功能。 地址:https://github.com/alibaba/tb_tddl 8. 轻量级分布式数据访问层 CobarClient Cobar Client是一个轻量级分布式数据访问层(DAL)基于iBatis(已更名为MyBatis)和Spring框架实现。 地址:https://github.com/alibaba/cobarclient 9. 淘宝定制 JVM:TaobaoJVM TaobaoJVM 基于 OpenJDK HotSpot VM,是国内第一个优化、定制且开源的服务器版Java虚拟机。目前已经在淘宝、天猫上线,全部替换了Oracle官方JVM版本,在性能,功能上都初步体现了它的价值。 地址:http://jvm.taobao.org 10. Java 图片处理类库 SimpleImage SimpleImage是阿里巴巴的一个Java图片处理的类库,可以实现图片缩略、水印等处理。 地址:https://github.com/alibaba/simpleimage 11. redis 的 java 客户端 Tedis Tedis 是另一个 redis 的 java 客户端。Tedis 的目标是打造一个可在生产环境直接使用的高可用 Redis 解决方案。 地址:https://github.com/justified/tedis 12.开源 Java 诊断工具 Arthas Arthas(阿尔萨斯)是阿里巴巴开源的 Java 诊断工具,深受开发者喜爱。 Arthas 采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。微信公众号:Java后端,发布过此诊断工具的教程,可以关注后获取推送。 地址:https://alibaba.github.io/arthas/ 13.动态服务发现、配置和服务管理平台 Nacos Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。 Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。Nacos 是构建以“服务”为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施。 地址:https://nacos.io/en-us/ 14.Java 解析 Excel 工具 easyexcel Java 解析、生成 Excel 比较有名的框架有 Apache poi、jxl 。但他们都存在一个严重的问题就是非常的耗内存,poi 有一套 SAX 模式的 API 可以一定程度的解决一些内存溢出的问题,但 POI 还是有一些缺陷,比如 07 版 Excel 解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。easyexcel 重写了 poi 对 07 版 Excel 的解析,能够原本一个 3M 的 excel 用 POI sax 依然需要 100M 左右内存降低到 KB 级别,并且再大的 excel 不会出现内存溢出,03 版依赖 POI 的 sax 模式。在上层做了模型转换的封装,让使用者更加简单方便。 地址:https://github.com/alibaba/easyexcel 15.高可用流量管理框架 Sentinel Sentinel 是面向微服务的轻量级流量控制框架,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。 只要通过 Sentinel API 定义的代码,就是资源,能够被 Sentinel 保护起来。大部分情况下,可以使用方法签名,URL,甚至服务名称作为资源名来标示资源。 地址:https://github.com/alibaba/Sentinel 16.基于多维度 Metrics 的系统度量和监控中间件 SOFALookout Lookout 是一个利用多维度的 metrics 对目标系统进行度量和监控的项目。Lookout 的多维度 metrics 参考 Metrics 2.0 标准。Lookout 项目分为客户端部分与服务器端部分。 客户端是一个 Java 的类库,可以将它植入您的应用代码中采集 metrics 信息,客户端更多详情。 服务端代码部分,将于下一版本提供。通过 LOOKOUT 的服务,可以对 metrics 数据进行收集、加工、存储和查询等处理,另外结合 grafana,可做数据可视化展示。 地址:https://github.com/alipay/sofa-lookout 17.基于 Spring Boot 的研发框架 SOFABoot (编辑:ASP站长网) |