Follow me on CSE series 1: CSE development framework system architecture

The CSE (Cloud Service Engine) Java SDK is a product-level microservice development framework launched by Huawei, which has been used and verified in many large-scale products within Huawei. Using the CSE Java SDK to develop microservices can greatly simplify the development threshold and improve the speed of product launch. At the same time, a series of out-of-the-box capabilities such as microservice runtime high reliability assurance and runtime dynamic governance can be obtained.

Framework overview

main design intent

1. The programming model and the communication model are separated, and different programming models can flexibly combine different communication models. Application developers only pay attention to interface development in the development phase, and flexibly switch communication methods in the deployment phase; to support the switching of legacy systems, legacy systems only need to modify the configuration file (or annotation) published by the service, without modifying the code.

At this stage, three development methods are supported: SpringMVC, JAX-RS and transparent RPC.

2. Built-in API-first support. The development of microservices can be standardized through contracts, realize cross-language communication, and support the development of supporting software tool chains (contract generation code, code generation contract, etc.) to build a complete development ecosystem.

3. Defines the common microservice operation model, and encapsulates various fault tolerance methods in the process from discovery to interaction of microservices. The runtime model supports customization and extension.

Module description

Types of artifact id Is it optional Function Description
programming model provider-pojo Yes Provide RPC development mode
programming model provider-jaxrs Yes Provide JAX RS development mode
programming model provider-springmvc Yes Provide Spring MVC development mode
Communication model transport-rest-vertx Yes A development framework that runs on HTTP, does not depend on WEB containers, and packages applications as executable jars
Communication model transport-rest-servlet Yes A development framework running on a WEB container, and the application is packaged as a war package
Communication model transport-highway Yes Provides a high-performance private communication protocol, which is only used for interoperability between java.
run the model handler-loadbalance Yes load balancing module. Provides various routing strategies and configuration methods. General client use.
run the model handler-bizkeeper Yes Functions related to service governance, such as isolation, circuit breaker, and fault tolerance.
run the model handler-tracing Yes Call the chain tracking module, connect to the monitoring system, and spit out the management data.
run the model handler-tcc Yes Provide TCC transaction development and management capabilities.

HUAWEI CLOUD Microservice Engine CSE  ,  free for a limited time until June 30 ,  2018

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325829038&siteId=291194637