Collection | 15 developer tools commonly used by Alibaba programmers (2020 version)

1. Java Project Scaffolding Java Initializr

Official website: https://start.aliyun.com/bootstrap.html

Introduction: In 2020, the customized version of Java engineering scaffold released by the Alibaba middleware team can quickly build engineering applications.

Tool usage scenarios:

Do I need to tailor existing projects every time I create a project?
Introducing new components requires searching everywhere, and the coordinates of the components are really hard to remember!
The online case works, why can’t I follow it?
To use the components, I need to build a complete project and running environment on my own computer, which is really troublesome!
Supports all the functions of Spring official scaffolding, and adds a wealth of typical configurations and use cases. A variety of standard application architectures are available, allowing you to write code directly after generating the project. The browser-based operating environment further reduces the complexity of functional experience and trial.

2. Java online diagnostic tool Arthas

Official website: https://arthas.aliyun.com/doc/

Introduction: Arthas is a Java online diagnostic tool open sourced by Alibaba in September 2018.

Usage scenarios of the tool:

Which jar package is this class loaded from? Why are various types of related Exception reported?
Why is the code I changed not executed? Is it because I didn't commit? Wrong branch?
I can’t debug online if I encounter a problem, can I only republish it by adding a log?
I encountered a problem with the data processing of a certain user online, but it was also unable to debug online, and it could not be reproduced offline!
Is there a global perspective to view the health of the system?
Is there any way to monitor the real-time running status of the JVM?
Arthas supports JDK 6+, Linux/Mac/Windows, adopts a command line interactive mode, and provides a wealth of Tab auto-completion functions to further facilitate problem location and diagnosis.

3. Java Toolset Dragonwell

Official website: https://www.aliyun.com/product/dragonwell

Introduction: Alibaba Dragonwell is a free, production-ready Open JDK release that provides long-term support, including performance enhancements and security fixes. Alibaba has the richest Java application scenarios, covering e-commerce, finance, logistics and many other fields, and is one of the largest Java users in the world. As the cornerstone of Java applications, Alibaba Dragonwell supports all Java businesses in Ali's economy. Alibaba Dragonwell is fully compatible with the Java SE standard. You can develop Java applications on any common operating system (including Linux, Windows and macOS). Choose Alibaba Dragonwell for the runtime production environment.

4. Java code specification scanning plugin

Official website: https://github.com/alibaba/p3c

Introduction: This plug-in is used to detect irregularities in Java code and give tips. The protocol plug-in is developed in Kotlin language.

5. Application of real-time monitoring tool ARMS

Official website: https://www.aliyun.com/product/arms

Introduction: ARMS is an APM monitoring tool that provides three types of monitoring options: front-end, application, and custom monitoring, which can quickly build real-time application performance and business monitoring capabilities.

Usage scenarios of the tool:

At 10 o'clock in the evening, you received 37 alarm messages, but you have no way to start?
When we found the problem, the customer/business side had already filed a complaint?
Spend hundreds of thousands of servers every month, but can't guarantee the user experience?

6. Performance testing tool PTS

Official website: https://www.aliyun.com/product/pts

Introduction: PTS can simulate the scenario of a large number of users accessing the business. Tasks can be initiated at any time, eliminating the cost of construction and maintenance. It supports the conversion of JMeter scripts into PTS pressure testing. It also supports the native JMeter engine for pressure testing.

scenes to be used:

Before preparing for the big promotion event, want to simulate a real multi-user high concurrent access scenario?
Product version iteration, want to observe the performance of the product at the peak of traffic?
Product delivery

7. MSE

Official website: https://www.aliyun.com/product/aliware/mse

Introduction: Relying on open source registration and configuration solutions such as ZK/Nacos/Eureka for self-construction will cause problems such as complex dependencies and high construction and operation costs. At the same time, it will also encounter problems in big data environments such as Hbase, Spark or Kafka. Distributed system coordination problems, MSE provides registration and configuration center hosting functions, provides highly available, free operation and maintenance of ZooKeeper, Nacos and Eureka clusters, fully compatible with open source product standard interfaces, and provides outlier instance removal, lossless download Line, service authentication, application list and label routing functions.

scenes to be used:

Microservice registration discovery: In the fast-developing cloud computing era, microservices are more and more widely used. MSE provides a highly available, free operation and maintenance and stable service registration center for microservices developed using Dubbo and Spring Cloud frameworks.
Distributed configuration management: The managed Nacos can provide configuration management capabilities while doing microservice registration.
Distributed scheduling (supporting non-microservice scenarios): If an enterprise uses open source software such as HBase, Spark, or Kafka, using ZooKeeper, Eureka, and Nacos provided by MSE can achieve the coordination of distributed systems, helping the enterprise reduce costs and improve efficiency.

8. Architecture visualization tool AHAS

Official website: https://www.aliyun.com/product/ahas

Introduction: AHAS provides architectural visualization functions for container environments such as K8s. At the same time, it has functions such as fault injection high-availability evaluation and one-key flow control degradation, which can improve application availability quickly and at low cost.

scenes to be used:

In the process of service transformation, want to accurately understand the composition and interaction of resource instances to realize the visualization of the architecture?
Want to introduce real failure scenarios and drill models?
Low threshold to obtain flow control and downgrade functions?

9. Container Image Service ACR

Official website: https://www.aliyun.com/product/acr

Introduction: The default instance version of the container mirroring service ACR (Alibaba Cloud Container Registry) provides basic container mirroring services, including secure application mirroring capabilities, accurate mirroring security scanning functions, stable domestic and foreign mirroring construction services, and convenient mirroring authorization functions , So as to facilitate users to manage the entire life cycle of mirroring.

The container image service simplifies the construction, operation and maintenance of the Registry, supports multi-regional image hosting, and cooperates with cloud products such as container services to create an integrated experience of using Docker on the cloud.

10. Serverless Developer Platform Serverless Devs

Official website: https://www.serverless-devs.com/

Introduction: Serverless Devs is an open source and open serverless developer platform, dedicated to providing developers with a powerful tool chain system. Through this platform, developers can experience multi-cloud serverless products with one click, and deploy serverless projects quickly. Serverless Devs includes Serverless Devs Tool (Serverless Developer Tool) and Serverless Devs App Store (Serverless Application Center):

Serverless Devs Tool allows developers to more easily and quickly carry out application creation, project development, testing, release and deployment, etc., to achieve project life cycle management.
Serverless Devs App Store is an application center product that integrates serverless application online search, one-click deployment, and resource visualization editing. The application center has a large number of production-level project templates and case templates. Developers can freely choose and deploy the project to the designated cloud platform with one click.

11. Freeline, a second-level compilation solution on the Android platform

Official website: https://github.com/alibaba/freeline

Introduction: Freeline can make full use of cache files to quickly compile and deploy code changes to the device within a few seconds, which effectively reduces the time-consuming recompilation and installation in daily development. The quickest way to use Freeline is to install the Android Studio plug-in directly.

12. Cloud effect developer tool KT

Official website: https://github.com/alibaba/kt-connect

Introduction: KT can simplify the complexity of joint debugging and testing under Kubernetes and improve the efficiency of Kubernetes-based R&D.

13. Data processing tool EasyExcel

Official website: https://github.com/alibaba/easyexcel

Introduction: EasyExcel is a framework for parsing Java and generating Excel. It rewrites poi's parsing of Excel version 07. Originally, a 3M Excel using POI sax requires about 100M of memory. EasyExcel can be reduced to the KB level, and No matter how big excel is, there will be no memory overflow. The 03 version relies on the sax mode of POI. The encapsulation of model conversion is done on the upper layer to make it easier and more convenient for users.

14. iOS Tools HandyJSON

Official website: https://github.com/alibaba/HandyJSON

Introduction: HandyJSON is a JSON serialization/deserialization library used in Swift language.

Compared with other popular Swift JSON libraries, HandyJSON is characterized by that it supports pure Swift classes and is easy to use. It does not require Model to inherit from NSObject when deserializing (converting JSON to Model) (because it is not based on KVC mechanism), nor does it require you to define a Mapping function for Model. As long as you define the Model class and declare that it obeys the HandyJSON protocol, HandyJSON can use the property name of each property as Key and parse the value from the JSON string.

15. Database landing on Druid

Official website: https://github.com/alibaba/druid

Introduction: Druid is a database connection pool under the Java language, which can provide powerful monitoring and expansion functions.

At last

I have also sorted out some interview materials & the latest interview questions collected by some big companies in 2020 (all organized into documents, a small part of the screenshots), if you need it, please click here, here , the code: CSDN.

Insert picture description here

Insert picture description here

The answers to the above interview questions are organized into document notes. I also sorted out some interview materials & the latest interview questions collected by some big companies in 2020 (all organized into documents, a small part of the screenshots), if you need it, please click here, here , and the code: CSDN.

Pay attention, don't get lost! If this article is helpful to you, don't forget to like and support!

Insert picture description here

The focus is to recommend to everyone. The Java post interview question bank in this material contains Java back-ends and interview scenarios and interview questions from some major companies.

Guess you like

Origin blog.csdn.net/qq_41770757/article/details/111567277