Skip to content

modular dev framework and serving platform to enable app evolve from monolithic to microservices and also serverless smoothly. 模块化研发框架与运维调度系统,帮助应用解决研发运维系列痛点问题,省资源、秒级启动、灵活部署、快速需求交付等

License

Notifications You must be signed in to change notification settings

JunJieLiu51520/koupleless

 
 

Repository files navigation

Coverage Status license Maven Central

Koupleless: Modular Development Framework and Serving Platform

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:

  1. Excessive application fragmentation leading to high machine and long-term maintenance costs
  2. Insufficient application fragmentation causing collaboration bottlenecks
  3. Lengthy application build, startup, and deployment times resulting in low iteration efficiency
  4. Severe fragmentation of SDK versions with high upgrade costs and long cycles
  5. High costs associated with building platforms and middle platforms, as well as difficulties in business asset precipitation and architectural constraints
  6. Long microservice chains leading to poor call performance
  7. 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.

image

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.

The Advantages of Koupleless

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

Here are performance data comparing modular development and deployment with traditional image-based approaches for an actual production application.

image

What is a Module?

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.

What is the Base?

The base is just a regular application, same with the original app (such as standard SpringBoot).

Quick start

Please check the official website Quick Start.

module_dev_and_deploy_1.mp4

Koupleless Components

image

Contributing

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 image
WeChat zzl_ing image

Long-term planning and our vision

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:

  1. Speed as you need
  2. Pay as you need
  3. Deploy as you need
  4. Evolution as you need
image

About

modular dev framework and serving platform to enable app evolve from monolithic to microservices and also serverless smoothly. 模块化研发框架与运维调度系统,帮助应用解决研发运维系列痛点问题,省资源、秒级启动、灵活部署、快速需求交付等

Resources

License

Stars

Watchers

Forks

Packages

No packages published