Writing in the front

Take away don’t thank, conveniently leave a concern and a point of praise, hey, hey, nonsense not to say, directly on the resources.

One-stop solution for distributed application service development

Alibaba is committed to providing one-stop solution for distributed application service development. This project contains the necessary components for developing distributed application services that developers can easily use through the Spring Cloud programming model. Relying on Spring Cloud Alibaba, you only need to add some annotations and a little configuration, you can plug Spring Cloud application into Alibaba distributed application solution, and quickly build distributed application system through Ali middleware.

Ant DesignAnt Design

Ant DesignAnt Design is an enterprise-class front-end Design language and React based front-end framework implementation developed and used by Ant Financial. Its characteristics: the interactive language and visual system of enterprise-level financial products; React UI component; React based componentized development mode; NPM biosphere; Webpack-based debug build solution, ES6 support.

Druid

Project address JDBC connection pool, monitoring component Druid. Druid is a JDBC component.

  • Monitor database access performance.
  • Provides an efficient, powerful and scalable database connection pool.
  • Encrypts database passwords.
  • SQL execution logs.

fastjson

Java JSON processor Fastjson, FastJSON is a very good Performance Java language implementation of JSON parser and generator, from Alibaba engineers development. Key features: FAST FAST (faster than any other Java-based parser and generator, including Jackson); Powerful (support for normal JDK classes including any Java Bean Class, Collection, Map, Date, or enum); Zero dependencies (no dependencies on any other library except JDK).

Service framework Dubbo

Project address Apache Dubbo (incubating) | alibaba is a high-performance, lightweight open source Java RPC framework, it provides three main core competencies: an interface of remote method invocation (rmi), intelligent fault tolerance and load balancing, and automatic registration and discovery of services.

Enterprise class streaming computing engine JStorm

JStorm is a real-time streaming computing framework based on Apache Storm. It has made continuous improvements in network IO, thread model, resource scheduling, availability and stability, and has been used by more and more enterprises. JStorm can be seen as a Java enhanced version of Storm, including Thrift, Python, facet UI, in addition to a pure Java kernel implementation. From the point of view of architecture, its essence is a distributed scheduling system based on ZK.

apns4j

Apns4j is a Java implementation of the Apple Push Notification Service.

AntV – G2

Antv-g2, G2 is a set of graphics syntax based on visual coding, data-driven, with a high degree of ease of use and scalability, users do not need to pay attention to all kinds of tedious implementation details, a single statement can build a variety of interactive statistical charts. G2 is also The most important component of AntV, starting with The visual coding syntax system described in The Grammar of Graphics (hence The name of The G2 project).

Dawn

Project address Front-end construction and engineering tool Dawn, Dawn means “Dawn, Dawn”, originally a front-end construction and engineering tool within “Ali Cloud · Business operation team”, now fully open source. It abstracts the development process into relatively fixed phases and limited operations through Pipeline and Middleware, simplifying and unifying the daily build and development-related tasks of developers.

Distributed data layer TDDL

TDDL is a JDBC datasource implementation based on centralized configuration, with active/standby, read/write separation, dynamic database configuration and other functions.

CobarClient, a lightweight distributed data access layer

Cobar Client is a lightweight distributed Data Access Layer (DAL) based on iBatis(renamed MyBatis) and Spring framework implementation.

The Java image-processing library SimpleImage

SimpleImage is a Java image processing library of Alibaba, which can realize image thumbnail, watermarking and other processing.

Tedis, Redis’s Java client

Project address Tedis is another Java client of Redis. Tedis’ goal is to create a highly available Redis solution that can be used directly in a production environment.

Arthas, an open source Java diagnostic tool

Arthas is an open source Java diagnostics tool from Alibaba that developers love. Arthas uses command line interaction and rich Tab completion functionality to further facilitate problem location and diagnosis.

Nacos

Project address Dynamic service discovery, configuration, and service management platform Nacos is dedicated to helping you discover, configure, and manage microservices. Nacos provides an easy-to-use feature set to help you implement dynamic service discovery, service configuration management, and service and traffic management. Nacos helps you build, deliver, and manage microservices platforms more agile and easily. Nacos is the service infrastructure for building modern “service” centric application architectures (e.g., microservices paradigm, cloud native paradigm).

easyexcel

Project address Java Excel parsing tool EasyExcel, Java parsing, Excel generation is more famous framework Apache POI, JXL. Poi has a SET of SAX mode API, which can solve some problems of memory overflow to a certain extent. However, POI still has some defects. For example, the decompression and storage after decompression of 07 Version Excel are completed in memory, which still consumes a lot of memory. Easyexcel rewrites poI for 07 version of Excel parsing, can originally a 3M Excel with POI SAX still needs about 100M memory reduced to KB level, and then the large Excel will not overflow memory, Version 03 relies on POI’s SAX schema. The model transformation is encapsulated in the upper layer to make the user more simple and convenient.

Sentinel high availability traffic management framework

Sentinel is a lightweight flow control framework for micro-services, which protects the stability of services from multiple dimensions, such as flow control, fuse downgrading and system load protection. Any code defined through the Sentinel API is a resource that can be protected by Sentinel. In most cases, resources can be identified using method signatures, urls, and even service names as resource names.

Lookout

Based on SOFALookout, a system measurement and monitoring middleware based on multidimensional Metrics, Lookout is a project that uses multidimensional Metrics to measure and monitor target systems. Lookout’s multidimensional metrics refer to the Metrics 2.0 standard. The Lookout project is divided into client and server parts. The client is a Java class library that can be incorporated into your application code to collect metrics information and more details on the client. The server code portion will be provided in the next release. The LOOKOUT service collects, processes, stores, and queries metrics data, and in conjunction with Grafana, visualizes the data.

SOFABoot

SOFABoot is ant Financial’s open source Spring Boot-based RESEARCH and development framework. Based on Spring Boot, SOFABoot provides the Readiness Check, class isolation, Log space isolation and so on. In addition to enhancing Spring Boot, SOFABoot provides the ability to easily use Sofastack-related middleware in Spring Boot.

Distributed link tracking middleware SOFATracer

SOFATracer is a component used for distributed system call tracing. It records all network calls in the invocation link in a log through unified traceId to achieve the purpose of perspective network calls. These logs can be used for quick fault discovery and service governance.

SOFARPC

Item Address High-performance Java RPC framework SOFARPC is a highly scalable, high-performance, production-level Java RPC framework. Ant Financial SOFARPC has gone through more than a decade and five generations of version development. SOFARPC is committed to simplifying RPC calls between applications and providing convenient, transparent, stable and efficient point-to-point remote service invocation solutions for applications. For users and developers to easily extend functionality, SOFARPC provides a rich model abstraction and extensible interface, including filters, routing, load balancing, and more. At the same time around SOFARPC framework and its peripheral components to provide a wealth of micro services governance solutions.

SOFABolt

SOFABolt is a network communication framework based on Netty developed by Ant Financial Services Group. In order to enable Java programmers to pay more attention to the implementation of business logic based on network communication, rather than too much entanglement in the implementation of NIO at the bottom of the network and deal with difficult to debug network problems, Netty came into being. SOFABolt was created to allow middleware developers to focus more on product features rather than building the wheels of a communication framework over and over again.

JVM-Sandbox

Project address Dynamic non-invasive AOP solution JVM-Sandbox, JVM Sandbox, a non-invasive runtime AOP solution based on the JVM.

OpenMessaging, a cloud-oriented standard for distributed messaging

OpenMessaging was initiated by Alibaba and co-founded with Yahoo, Didi Chuxing and Streamlio, aiming to establish application development standards in the field of distributed message and flow processing independent of vendor and platform.

Dragonfly

P2P file distribution system Dragonfly, a P2P file distribution system developed by Alibaba, is used to solve problems such as time-consuming distribution, low success rate and bandwidth waste in large-scale file distribution scenarios. Services such as release deployment, data preheating, and large-scale container image distribution are greatly improved. The open source version of Dragonfly can be used for P2P file distribution, container image distribution, local speed limiting, disk capacity prechecking, and more. It supports a variety of container technologies, without any transformation of the container itself, image distribution can be up to 57 times faster than natVIE mode, and the outbound traffic of Registry network can be reduced by more than 99.5%.

LayoutManager Customizes the layout scheme vLayout

VirtualLayout is a LayoutManager extension for RecyclerView, which mainly provides a set of layout schemes and reuse of components between layouts.

Java code specification scan plug-in P3C

The project includes three parts: PMD implementation, IntelliJ IDEA plug-in and Eclipse plug-in