Complex business application system of cloud native development platform
By providing modular architecture and domain-driven design support for complex business application systems on the cloud-native development platform, multiple challenges in the development of complex business application systems in the existing technology are solved, and more efficient business logic management and system maintenance are achieved.
Patent Information
- Application Number
- CN202411649817.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-19
- Publication Date
- 2025-03-11
AI Technical Summary
The existing technology is difficult to effectively respond to the development challenges of complex business application systems, including limitations in architecture style, insufficient module division, insufficient design methodology, lack of corrosion protection layers and confusion in business logic management.
Provides a complex business application system for cloud native development platform, including application startup modules, service modules, infrastructure modules, regional modules and client modules, supporting domain-driven design, event-driven architecture and flexible module division, providing infrastructure and tools out of the box.
Through this platform, developers can more easily deal with complex and changeable business scenarios, design and develop more business-worthy application systems, reduce development and maintenance costs, and provide expansion point mechanisms for subsequent functions enhancement.
Smart Images

Figure CN119597252A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of cloud native development platform, and specifically is a complex business application system of cloud native development platform. Background Art
[0002] The complex business application framework of the cloud-native application development platform provides complex application architecture logic unit generators, business strategy scaling vectors, event buses, event publishing, event subscriptions, and general aggregate root components to address the problems faced by complex business application systems, thereby reducing the development and maintenance costs of application systems and the learning costs of application developers. Developers can use the capabilities of the platform's complex business application framework to design and develop application systems with greater business value and vitality.
[0003] With the improvement of cloud-native infrastructure and the maturity and implementation of the distributed microservice-related technology ecosystem, the development and construction of application systems have corresponding patterns and methods to follow at the technical level. The complexity of application systems has focused on business complexity. In the process of digital transformation of enterprises, business scenarios are more complex and changeable. Without good application architecture and tool support, and without appropriate specifications to constrain, it will inevitably be difficult to give full play to the effectiveness of cloud-native infrastructure and distributed microservices, and it will inevitably cause the "big mud ball" problem of the application system, the "bad smell" will become stronger, and the maintenance cost will rise sharply. In view of this, the complex business application framework of the cloud-native application development platform provides good support for the application system at the application architecture level, application logic unit division level, component and tool support, respectively, to address the problems faced by complex business application systems, thereby reducing the development and maintenance costs of the application system and the learning costs of application developers.
[0004] In the cloud native and microservice technology ecosystem, there are already a variety of technologies and frameworks for dealing with complex business scenarios. These implementation solutions are mainly concentrated in the following aspects:
[0005] 1. Microservice architecture: Spring Cloud: provides a complete set of microservice solutions, including service discovery, configuration management, intelligent routing, control bus, micro-agent, circuit breaker, intelligent monitoring and tracing, full-link monitoring, etc.
[0006] Dubbo: A high-performance Java RPC framework that supports multiple communication protocols and is suitable for building RPC-based microservice architectures.
[0007] gRPC: A high-performance, open source, and general RPC framework developed by Google that supports multiple languages and is widely used in microservice architecture.
[0008] 2. Domain Driven Design (DDD):
[0009] Implementing Domain-Driven Design by Vaughn Vernon: Provides detailed DDD implementation methods and best practices to help developers understand and apply DDD principles.
[0010] Event Storming: A rapid modeling method that quickly understands and designs complex business domains through team collaboration and event-driven approaches.
[0011] 3. Event-driven architecture:
[0012] Apache Kafka: A distributed stream processing platform for building real-time data pipelines and streaming applications that supports high-throughput message publishing and subscription.
[0013] RabbitMQ: An open source message broker software used to store and forward messages in distributed systems.
[0014] 4. Code generation and automation tools:
[0015] JHipster: A development platform for generating full-stack web applications and Spring Boot+Angular / React / Vue projects, supporting code generation and automated testing.
[0016] Swagger: A specification and complete framework for generating, describing, calling, and visualizing RESTful web services.
[0017] 5. Application architecture and design patterns:
[0018] Hexagonal Architecture: An architectural style centered on the domain model, which achieves high cohesion and low coupling of the system through clear boundaries and protocol adapters.
[0019] Layered architecture: Divide the system into different layers, such as presentation layer, business logic layer, data access layer, etc., to improve the maintainability and scalability of the system.
[0020] Most existing implementation solutions focus on a single technical point or methodology, lacking a comprehensive solution to fully address the development challenges of complex business application systems. The specific explanations are as follows:
[0021] 1. Architectural style restrictions:
[0022] Lack of flexibility: Many existing technology frameworks may not support the hexagonal architecture style, making them cumbersome and inflexible when dealing with complex business logic. These frameworks may focus more on traditional patterns such as layered architecture or MVC, making it difficult to effectively cope with the rapid changes and expansion requirements of business logic.
[0023] Technology Binding: Many existing frameworks tightly bind business logic to technology implementation, which requires a lot of reconstruction of business logic when upgrading or replacing technology platforms, increasing maintenance costs and risks.
[0024] 2. Insufficient module division:
[0025] High coupling: Many existing systems lack fine-grained module division, resulting in high coupling between modules, making it difficult to develop and maintain them independently. This increases the complexity of the system and the possibility of errors.
[0026] Lack of guiding principles: Although theories such as the AKF Scalability Cube Model provide guidance, existing technologies often lack specific implementation tools and methods, making it difficult for developers to effectively apply theory to practice.
[0027] 3. Insufficient design methodology:
[0028] Limitations of bottom-up design: Many existing systems adopt a bottom-up design approach, which often leads to a lack of integrity and foresight in system design, making it difficult to meet the needs of complex business logic.
[0029] Lack of business perspective: Developers often design systems from a technical perspective and ignore the perspective of business experts, resulting in a disconnect between system design and business needs.
[0030] 4. Missing anti-corrosion layer:
[0031] External system intrusion: Many existing systems lack anti-corrosion layer design, which leads to the intrusion of external systems into core business logic, increasing the complexity of the system and the possibility of errors.
[0032] High coupling risk: The high coupling relationship with third-party systems makes it difficult for the system to evolve and expand independently.
[0033] 5. Chaotic business logic management:
[0034] If-else overflow: Many existing systems contain a large number of if-else statements, which causes the business logic to be hidden in the code and is difficult to understand and maintain.
[0035] Lack of flexible mechanisms: The lack of flexible mechanisms such as business policy scaling vector components to manage business logic makes it difficult for the system to adapt to rapid changes in business needs.
[0036] 6. Insufficient application of domain-driven design:
[0037] Lack of infrastructure: Many existing systems lack the infrastructure required for domain-driven design, such as domain events, event publishing, event subscription, etc., which makes it difficult to effectively apply the domain-driven design methodology.
[0038] Difficult business modeling: The lack of effective modeling tools and methods makes it difficult for developers to model and analyze complex business domains. Summary of the invention
[0039] In view of the above problems, the present invention is proposed to provide a cloud-native development platform complex business application system that overcomes the above problems or at least partially solves the above problems.
[0040] To achieve the above object, the present invention adopts the following technical solutions:
[0041] A complex business application system of a cloud native development platform, the system comprising:
[0042] Application startup module, used to start application services;
[0043] Service module, used to handle internal and external requests;
[0044] Infrastructure module, used to provide infrastructure and resources;
[0045] Area modules, which are used to define and describe data entities in the system;
[0046] Client module, used for data exchange and communication with external systems.
[0047] Optionally, the application startup module includes an application configuration file, in which the application port, application name, and database information are configured.
[0048] Optionally, an executable application jar package is formed by packaging the application startup module.
[0049] Optionally, write business logic and HTTP interfaces that need to be exposed to the front end in the service module.
[0050] Optionally, the infrastructure module provides infrastructure and resources for the service module to call.
[0051] Optionally, the infrastructure and resources shown include databases, file storage, and network communications.
[0052] Optionally, the client module provides an HTTP interface or an event interface to external services.
[0053] Optionally, the client module receives external requests and forwards them to the service module for processing. The service module calls the corresponding internal service or infrastructure module according to the business logic of the request, processes the request and returns the result. After the processing result passes through the service module, it is returned to the external system by the client module.
[0054] In summary, due to the adoption of the above technical solution, the beneficial effects of the present invention are:
[0055] 1. The present invention provides the application system with infrastructure and relevant specifications related to domain-driven design. The application system can calmly cope with complex and changing business scenarios with the help of the capabilities of the platform's complex business application framework and the methodology of domain-driven design, and design and develop application systems with greater business value and vitality.
[0056] 2. The present invention provides the application system with out-of-the-box infrastructure such as domain events, event publishing, event subscription, universal aggregate roots, and complex business application system logic unit generation tools, allowing developers to focus their limited energy on the implementation of business logic without having to pay attention to more technical implementations.
[0057] 3. The present invention reserves an extension point mechanism for the application system, so that it is convenient to enhance the functions of the complex business application framework in the future without violating the "open and closed" principle; it provides out-of-the-box domain events, event publishing, event subscription, general aggregate roots and other components, and also provides a logic unit generation tool for the application system, effectively reducing the development and maintenance costs of the application system. BRIEF DESCRIPTION OF THE DRAWINGS
[0058] Figure 1 A schematic diagram of the complex business application system flow of a cloud native development platform provided in an embodiment of the present application. DETAILED DESCRIPTION
[0059] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0060] See also Figure 1 This embodiment provides a complex business application system for a cloud native development platform, the system comprising:
[0061] The application startup module is used to start the application service.
[0062] The application startup module includes the application configuration file, in which the application port, application name and database information are configured. The application startup module is packaged to form an executable application jar package.
[0063] Service module, used to handle internal and external requests.
[0064] Write business logic and HTTP interfaces that need to be exposed to the front end in the service module.
[0065] Infrastructure module, used to provide infrastructure and resources.
[0066] The infrastructure and resources provided by the infrastructure module are used by the service module. The infrastructure and resources shown include database, file storage, network communication, etc., to ensure the stable operation of the system.
[0067] The area module is used to define and describe the data entities in the system, such as users, products, orders, etc., as well as the relationships and attributes between them.
[0068] The client module is used to exchange data and communicate with external systems to ensure that external systems can smoothly access and call internal services.
[0069] The client module provides HTTP interface or event interface to external services.
[0070] The client module receives external requests and forwards them to the service module for processing. The service module calls the corresponding internal service or infrastructure module according to the business logic of the request, processes the request and returns the result. After the processing result passes through the service module, it is returned to the external system by the client module.
[0071] This embodiment provides the application system with infrastructure and relevant specifications related to domain-driven design. The application system can use the capabilities of the platform's complex business application framework and the methodology of domain-driven design to calmly cope with complex and changing business scenarios, and design and develop application systems with greater business value and vitality.
[0072] This embodiment provides the application system with out-of-the-box infrastructure such as domain events, event publishing, event subscription, universal aggregate roots, and complex business application system logic unit generation tools, allowing developers to focus their limited energy on the implementation of business logic without having to pay attention to more technical implementations.
[0073] This embodiment reserves an extension point mechanism for the application system, so that it is convenient to enhance the functions of the complex business application framework in the future without violating the "open and closed" principle; it provides out-of-the-box domain events, event publishing, event subscription, general aggregate roots and other components, and also provides a logic unit generation tool for the application system, effectively reducing the development and maintenance costs of the application system.
[0074] When processing requests, the service module needs to access the infrastructure and resources provided by the infrastructure module. For example, the service module may need to read data from the database, write data to the database, call the file storage service or network communication service, etc. The infrastructure module provides the implementation of these services to ensure that the service module can successfully complete the business logic processing.
[0075] When processing requests, it is usually necessary to interact with data entities in the entity region module. For example, operations such as creating a new user, updating product information, and processing orders all require accessing and manipulating data entities in the entity module. The region module defines the structure and properties of these data entities, and other modules operate on the data entities based on these definitions.
[0076] The above contents are further detailed descriptions of the present invention in combination with specific preferred embodiments, and it cannot be determined that the specific implementation of the present invention is limited to these descriptions. For ordinary technicians in the technical field to which the present invention belongs, several simple deductions or substitutions can be made without departing from the concept of the present invention, which should be regarded as falling within the protection scope of the present invention.
Claims
1. A complex business application system for a cloud native development platform, characterized in that: The system comprises: Application startup module, used to start application services; Service module, used to handle internal and external requests; Infrastructure module, used to provide infrastructure and resources; Area modules, which are used to define and describe data entities in the system; Client module, used for data exchange and communication with external systems.
2. A cloud native development platform complex business application system as claimed in claim 1, characterized in that: The application startup module includes an application configuration file, in which the application port, application name and database information are configured.
3. A cloud native development platform complex business application system as claimed in claim 1, characterized in that: The application startup module is packaged into an executable application jar package.
4. A cloud native development platform complex business application system as claimed in claim 1, characterized in that: Write business logic and HTTP interfaces that need to be exposed to the front end in the service module.
5. A cloud native development platform complex business application system as claimed in claim 1, characterized in that: The infrastructure and resources provided by the infrastructure module are called by the service module.
6. A cloud native development platform complex business application system as claimed in claim 1, characterized in that: The infrastructure and resources shown include databases, file storage, and network communications.
7. A cloud native development platform complex business application system as claimed in claim 1, characterized in that: The client module provides HTTP interface or event interface to external services.
8. A cloud native development platform complex business application system as claimed in claim 1, characterized in that: The client module receives external requests and forwards them to the service module for processing. The service module calls the corresponding internal service or infrastructure module according to the business logic of the request, processes the request and returns the result. After the processing result passes through the service module, it is returned to the external system by the client module.