English | 简体中文
Would you like your application to start in just 10 seconds, consuming only 20MB of memory? Have you encountered issues with large applications causing collaboration bottlenecks and low release efficiency? Are you struggling with the high resource and maintenance costs associated with numerous small applications? If you're facing these challenges, then Koupleless might be the solution you're looking for. Koupleless approaches application architecture from a modular perspective, offering an extremely low-cost solution to address pain points encountered throughout the entire lifecycle of application development, operation, and execution:
- Excessive application fragmentation leading to high machine and long-term maintenance costs
- Insufficient application fragmentation causing collaboration bottlenecks
- Lengthy application build, startup, and deployment times resulting in low iteration efficiency
- Severe fragmentation of SDK versions with high upgrade costs and long cycles
- High costs associated with building platforms and middle platforms, as well as difficulties in business asset precipitation and architectural constraints
- Long microservice chains leading to poor call performance
- High costs associated with microservice decomposition and evolution
How does Koupleless address these issues? Koupleless vertically and horizontally splits traditional applications, with the vertical split separating the base and the horizontal split separating multiple modules. The base shields modules from infrastructure concerns, while modules contain only the business-specific portion, enabling quick startup and insulating them from infrastructure concerns, allowing module developers to experience a Serverless-like environment. Koupleless thus evolves into a low-cost, Serverless solution by refining the granularity of development and operations while shielding infrastructure. For detailed explanations of the principles, please refer to the official website. Further detailed explanations of the principles are available on the official website.
The most important aspect is that Koupleless can assist existing applications in evolving into a modular development model at an extremely low cost, addressing the aforementioned issues and helping businesses reduce costs, increase efficiency, and enhance competitiveness.
Koupleless is a mature development framework and operational scheduling platform capability that has been refined internally within Ant Group for 5 years. Compared to traditional image-based application models, it offers approximately 10 times improvement in development, operations, and runtime calling. Summarized into 5 key features: Fast, Cost-efficient, Flexible deployment, Smooth evolution, and Production-scale validation.
![image](https://private-user-images.githubusercontent.com/3754074/297082856-11d1d662-d33b-482b-946b-bf600aeb34da.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjUwNDY4MjIsIm5iZiI6MTcyNTA0NjUyMiwicGF0aCI6Ii8zNzU0MDc0LzI5NzA4Mjg1Ni0xMWQxZDY2Mi1kMzNiLTQ4MmItOTQ2Yi1iZjYwMGFlYjM0ZGEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgzMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MzBUMTkzNTIyWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NGZhMjlhNDk4ZTQwYTZkNjkwZWUwMWU0YzE1ZGI3ZTYxMjRiODE4NjA4MjIxNjdiNmFiMjIwMTM5ODlhNDc0NCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.WoaEKYt9oBCTw6dt9G0SttvpBQFrh5mBFnAnUoi5WhU)
Here are performance data comparing modular development and deployment with traditional image-based approaches for an actual production application.
Modules utilize extreme sharing and isolation technologies, which enable hot deployment (updating online code without restarting the machine).
Isolation is achieved through ClassLoader class isolation based on SOFAArk and object isolation based on SpringBoot SpringContext.
Sharing is facilitated by class delegation loading based on SOFAArk and cross-SpringContext object lookup and invocation based on SpringBootManager.
So, in physical terms, a module can be considered as one ClassLoader + one SpringContext.
The base is just a regular application, same with the original app (such as standard SpringBoot).
Please check the official website Quick Start.
We appreciate anyone who contribute here together. Please scan the QR code to join the developer collaboration group.
IAM | number | QR code |
---|---|---|
DingTalk group (recommand) | 24970018417 | |
QQ Group | 813757901 |
We hope to further refine and open up these capabilities to be more extreme and applicable to a wider range of scenarios. Help more businesses solve application development problems, achieve cost reduction and efficiency improvement, and ultimately become an excellent research and development framework and solution for global green computing, achieving:
- Speed as you need
- Pay as you need
- Deploy as you need
- Evolution as you need
![image](https://private-user-images.githubusercontent.com/3754074/297129435-17ebd41d-38c7-46e8-a4ba-b6b8bf8f76dd.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjUwNDY4MjIsIm5iZiI6MTcyNTA0NjUyMiwicGF0aCI6Ii8zNzU0MDc0LzI5NzEyOTQzNS0xN2ViZDQxZC0zOGM3LTQ2ZTgtYTRiYS1iNmI4YmY4Zjc2ZGQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgzMCUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MzBUMTkzNTIyWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9OTlkMDMwM2VlMDI5ZjczMGQ1ZmQ1MDkwM2QxYTcwYzY5NDc4ZGFjZTlhZDY0Zjk2YTQ4NWZkMjUzZWJiNjFhZCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.sCMpBfwxYpfmGDR-lHUE5yjqW9Lb18W5u0SNYdK6PWo)