12 Alibaba Techs made Open-source in 2017

Part I: Distributed systems that are high performance and available to all

Image for post
Image for post
Image for post
Image for post

Building High-performance Distributed Systems

Though mainframe systems require fewer node configurations and are easier to deploy, they are expensive and over-reliant on single points. This has led to the rise of distributed systems, which offer the advantages of improved concurrency, scalability, and reliability, all while reducing overall costs. Alibaba continues to help develop open-source distributed system technologies by releasing projects and updates.

1. Dubbo

Dubbo is a highly acclaimed Java-based Remote Procedure Call (RPC) framework that was first released in 2012. Extremely popular with open-source enthusiasts, Dubbo saw a major upgrade in 2017 to better serve its large user base and stay relevant to RPC technology trends. The design principles for this overhaul focused on stability, scalability, performance, easy communication, and flexibility in use with open-source protocols and peripheral systems. The upgrade also addresses system defects and gaps across versions 2.5.4 to 2.5.8, and now supports Netty 4 and Java 8.

2. RocketMQ

RocketMQ is a third-generation distributed message-oriented middleware launched in 2012, with an enterprise version used by over a hundred companies and institutes. Host to all of Alibaba’s circulation messages for the Singles’ Day sales on November 11, RocketMQ delivered 1.2 trillion messages for the 2017 event, peaking at 170,000 per second.

Image for post
Image for post

3. Druid and Fastjson

The only database connection pool in use by Alibaba, Druid easily supports and monitors extreme scenarios such as the Singles’ Day sales. Built and evolved over the course of six years, Druid is a key part of the solutions offered by many technical companies.

4. ApsaraCache

A Redis branch of Apsara DB used by the Alibaba Cloud, Alibaba open-sourced ApsaraCache 2.8 with certain v3.0 functionalities to provide a stable, smooth performance to users. Even prior to being made open-source in October 2017, ApsaraCache was commonly used across various web categories, including live broadcast (Miaopai, Yizhibo, Inke and CNTV), gaming (Immomo Game, Longyuan Network, LongTu Game and Changyou), and lifestyle (news platform Jinri Toutiao, AutoNavi, Ant Financial, and DJI Innovations).

5. Pouch and Dragonfly

Pouch is a rich container technology developed in-house by Alibaba for various system services offering safety-isolation protection and isolation dimensions. Currently, over hundreds of thousands of Pouch containers support large-scale co-location of internal offline and online operations.

Image for post
Image for post
The Pouch and Dragonfly architecture

The Client Side of the Internet Age

Along with the evolution of Web2.0 and Web3.0, performance-based improvement of wireless terminal hardware and advocacy for user experience concepts, websites and apps are becoming more important and more complex. This is reflected in the evolution of JavaScript, from its modest beginnings in 1995 to its current, staggering, levels of popularity. There are around 230,000 open-source JavaScript projects in GitHub’s repositories, 2.3 times as many as open-source Python projects, and much higher than the number of open-source Java and PHP projects put together. JavaScript’s popularity can be attributed to the extraordinary performance of AJAX in front-end development, and the compelling potential Node.js presents for server-side programming with JavaScript.

6. Ant Design

Ant Design is the result of middle and back-end design experiences from the development of Ant Financial. Its product interaction and visual style aims to be “inconspicuous, definite and cheerful”, and improve user and designer experiences. Abundant, flexible and valuable base components are accumulated to provide solutions for frequently asked questions. TypeScript supports complete type definition, and the high-quality out-of-the-box React components are based on npm + webpack + dva enterprise-class development frameworks.

7. Egg

Egg is an enterprise-class, basic web framework developed to overcome deficiencies found with Node.js. When micro-service architecture is adopted, specific tasks such as service granularity, API interface and development maintenance are involved, and the front and back-end face the conflict of flexible user experience vs. back-end service general utility. Node.js has managed to overcome this widely-criticized weakness, and npm package is now the most popular peer, with vast improvement in single-threaded problems, avoidance of burdensome callbacks with the help of ES norm, a type system based on mature TypeScript, and better overall performance.

8. Atlas

Atlas, a flexible Android development framework, was created to assist with internal issues at Alibaba. With the continuous development of mobile Taobao, the R&D team became larger and functions more complicated, which required the fast iteration of end-side businesses. On the other hand, the problems encountered during development, operation and maintenance continually increased, which also required fixing online bugs. As such, the mobile Taobao team began to think about how to simplify the complicated problems and conduct dynamic deployment to improve mobile development efficiency.

Image for post
Image for post

Best Practice Reference Specifications

The following two technologies made open-source by Alibaba last year concern specific best practice reference specifications.

9. Alibaba Java Development Specifications

Alibaba’s development of Java specifications and corresponding automatic testing tools (DE test plug-in components [IDEA, Eclipse]), is the result of a wide-spread collaboration between a number of senior Alibaba technical staff, has enabled developers to implement specifications more conveniently and quickly.

10. OpenMessaging

The OpenMessaging project was initiated by Alibaba in cooperation with Yahoo, Didi Chuxing and Streamlio. Its main aim is to create an app development standard for distributed messaging and stream processing that is company- and platform-neutral. The longer-term standpoint is that, with the evolution of standards, more internet and cloud computing companies will participate into the project and ecosystem.

Image for post
Image for post

The era of IoT

Though the earliest conceptual origins of IoT lie in 1982 when Carnegie Mellon University began exploring the interconnections between intelligent devices, it wasn’t until 2005 that it began to gain traction with the International Telecom Union’s (ITU) report on the internet. Indeed, ITU should be commended for its foresight- a little over a decade later in 2016, Gartner put the number of IoT devices in use at 6.4 billion, expecting the figure to balloon to 20.41 billion by 2020.

11. AliOS Things

Today, there is more attention on IoT than ever before. However, the operation systems market in highly fragmented, and the systems themselves feature several drawbacks, such as high development and maintenance costs, difficult deployment of cloud-integrated apps, systemic and security risks, and inadequate hardware ecosystems, development tools, and functional components.

12. AliOS Lite

Alibaba will soon be open-sourcing AliOS Lite, a lightweight version of aliOS based on JavaScript that supports all intelligent processes for IoT devices with lower CPU performance capacities, such as smart watches and cameras.

Alibaba Tech

First hand and in-depth information about Alibaba’s latest technology → Search “Alibaba Tech” on Facebook

First-hand & in-depth information about Alibaba's tech innovation in Artificial Intelligence, Big Data & Computer Engineering. Follow us on Facebook!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store