Skip to content

microsphere-projects/microsphere-spring-cloud

Repository files navigation

Microsphere Spring Cloud

Microsphere Projects for Spring Cloud

Ask DeepWiki zread Maven Build Codecov Maven License Average time to resolve an issue Percentage of issues still open

Microsphere Spring Cloud is an extension library for Spring Cloud that enhances and optimizes its capabilities, particularly focused on providing dynamic runtime configuration changes without application restarts. It's designed to solve common pain points when working with distributed systems in Spring Cloud.

Purpose and Scope

Microsphere Spring Cloud is a comprehensive extension framework that enhances Spring Cloud applications with advanced service registration capabilities, dynamic OpenFeign client configuration, and fault tolerance features. This project provides production-ready enhancements to the core Spring Cloud ecosystem, focusing on operational reliability and dynamic configuration management.

The framework supports multiple Spring Cloud versions (2022.x, 2023.x, 2024.x and 2025.x) and integrates seamlessly with various service discovery systems including Nacos, Eureka, Consul, and Zookeeper. For detailed information about specific subsystems, see Project Structure, Service Registration System, OpenFeign Auto-Refresh System, and Fault Tolerance.

Modules

Module Purpose
microsphere-spring-cloud-parent Defines the parent POM with dependency management and Spring Cloud version profiles
microsphere-spring-cloud-dependencies Centralizes dependency management for all project modules
microsphere-spring-cloud-commons Common utilities for service discovery, registry, and fault tolerance
microsphere-spring-cloud-openfeign Extensions for Spring Cloud OpenFeign with auto-refresh capabilities

Getting Started

The easiest way to get started is by adding the Microsphere Spring Cloud BOM (Bill of Materials) to your project's pom.xml:

<dependencyManagement>
    <dependencies>
        ...
        <!-- Microsphere Spring Cloud Dependencies -->
        <dependency>
            <groupId>io.github.microsphere-projects</groupId>
            <artifactId>microsphere-spring-cloud-dependencies</artifactId>
            <version>${microsphere-spring-cloud.version}</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
        ...
    </dependencies>
</dependencyManagement>

${microsphere-spring-boot.version} has two branches:

Branches Purpose Latest Version
0.2.x Compatible with Spring Cloud 2022.0.x - 2025.0.x 0.2.1
0.1.x Compatible with Spring Cloud Hoxton - 2021.0.x 0.1.1

Then add the specific modules you need:

<dependencies>
    <!-- Microsphere Spring Cloud Commons -->
    <dependency>
        <groupId>io.github.microsphere-projects</groupId>
        <artifactId>microsphere-spring-cloud-commons</artifactId>
    </dependency>

    <!-- Microsphere Spring Cloud OpenFeign -->
    <dependency>
        <groupId>io.github.microsphere-projects</groupId>
        <artifactId>microsphere-spring-cloud-openfeign</artifactId>
    </dependency>
</dependencies>

Building from Source

You don't need to build from source unless you want to try out the latest code or contribute to the project.

To build the project, follow these steps:

  1. Clone the repository:
git clone https://github.com/microsphere-projects/microsphere-spring-cloud.git
  1. Build the source:
  • Linux/MacOS:
./mvnw package
  • Windows:
mvnw.cmd package

Contributing

We welcome your contributions! Please read Code of Conduct before submitting a pull request.

Reporting Issues

  • Before you log a bug, please search the issues to see if someone has already reported the problem.
  • If the issue doesn't already exist, create a new issue.
  • Please provide as much information as possible with the issue report.

Documentation

User Guide

DeepWiki Host

ZRead Host

Wiki

Github Host

JavaDoc

License

The Microsphere Spring is released under the Apache License 2.0.

About

Microsphere Projects for Spring Cloud

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages