`
公园美丽
  • 浏览: 12959 次
社区版块
存档分类
最新评论

spring cloud云服务架构

 
阅读更多

1. 介绍

Spring Cloud Config为分布式系统中的外部配置提供服务器和客户端支持。使用Config Server,您可以在所有环境中管理应用程序的外部属性。客户端和服务器上的概念映射与Spring EnvironmentPropertySource抽象相同,因此它们与Spring应用程序非常契合,但可以与任何以任何语言运行的应用程序一起使用。随着应用程序通过从开发人员到测试和生产的部署流程,您可以管理这些环境之间的配置,并确定应用程序具有迁移时需要运行的一切。服务器存储后端的默认实现使用git,因此它轻松支持标签版本的配置环境,以及可以访问用于管理内容的各种工具。很容易添加替代实现,并使用Spring配置将其插入。

2. 引入pom相关jar包,其中pom.xml配置如下:

<?xml version="1.0" encoding="UTF-8"?>  
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">  
    <modelVersion>4.0.0</modelVersion>  
  
    <parent>  
        <groupId>com.ml.honghu</groupId>  
        <artifactId>commonservice</artifactId>  
        <version>0.0.1-SNAPSHOT</version>  
    </parent>  
      
    <artifactId>commonservice-config</artifactId>  
    <packaging>jar</packaging>  
  
    <name>commonservice-config</name>  
    <description>Config Server</description>  
  
    <dependencies>  
        <dependency>  
            <groupId>org.springframework.cloud</groupId>  
            <artifactId>spring-cloud-config-server</artifactId>  
        </dependency>  
        <dependency>  
            <groupId>org.springframework.cloud</groupId>  
            <artifactId>spring-cloud-starter-eureka</artifactId>  
        </dependency>  
        <dependency>  
                    <groupId>org.springframework.boot</groupId>  
                    <artifactId>spring-boot-starter-security</artifactId>  
            </dependency>  
        <dependency>  
            <groupId>org.springframework.boot</groupId>  
            <artifactId>spring-boot-starter-test</artifactId>  
            <scope>test</scope>  
        </dependency>  
    </dependencies>  
  
    <build>  
        <plugins>  
            <plugin>  
                <groupId>org.springframework.boot</groupId>  
                <artifactId>spring-boot-maven-plugin</artifactId>  
                <executions>  
                    <execution>  
                        <id>1</id>  
                        <goals>  
                            <goal>repackage</goal>  
                        </goals>  
                    </execution>  
                                    <execution>  
                                        <id>2</id>  
                                            <goals>  
                                                   <goal>build-info</goal>  
                                            </goals>  
                                    </execution>  
                </executions>  
            </plugin>  
        </plugins>  
    </build>  
</project>  

  3. 在src/main/java进行ConfigApplication.java启动文件配置:

package com.ml.honghu;  
  
import org.springframework.boot.SpringApplication;  
import org.springframework.boot.autoconfigure.SpringBootApplication;  
import org.springframework.cloud.config.server.EnableConfigServer;  
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;  
  
@EnableConfigServer  
@EnableEurekaClient  
@SpringBootApplication  
public class ConfigApplication {  
  
    public static void main(String[] args) {  
        SpringApplication.run(ConfigApplication.class, args);  
    }  
}  

  4. 在src/main/resource下进行bootstrap.yml配置

server:   
port: 8888  
spring:  
  application:  
    name: commonservice-config-server  
  profiles:  
    active: discovery,native  
  cloud:  
    config:  
      server:  
        git:  
          uri: http://192.168.0.254/honghu.../honghu-config.git  
          username: honghu  
          password: 123456  
          searchPaths: config-dev  
security:  
  basic:  
    enabled: true  
  user:  
    name: honghu  
    password: 123456  
eureka:  
  client:  
    serviceUrl:  
      defaultZone: http://honghu:123456@localhost:8761/eureka/  
      honghuZone: http://honghu:123456@localhost:8761/eureka/  
    registry-fetch-interval-seconds: 300  
    availability-zones:  
      honghu: honghuZone  
  instance:  
    prefer-ip-address: true  
    metadataMap:  
      version: 1.0  
      variant: A  
      user: ${security.user.name}  
      password: ${security.user.password}  
management:  
  security:  
    enabled: false  

  注意: 如果不从远程git或者svn库加载配置文件信息,可以配置加载本地地址,比如window下配置使用:

server:   
port: 8888  
spring:  
  application:  
    name: commonservice-config-server  
  profiles:  
    active: discovery,native  
  cloud:  
    config:  
      server:  
        <span style="color: #ff0000;">native.searchLocations: d:/honghu-config</span>  
security:  
  basic:  
    enabled: true  
  user:  
    name: honghu  
    password: 123456  
eureka:  
  client:  
    serviceUrl:  
      defaultZone: http://honghu:123456@localhost:8761/eureka/  
      honghuZone: http://honghu:123456@localhost:8761/eureka/  
    registry-fetch-interval-seconds: 300  
    availability-zones:  
      honghu: honghuZone  
  instance:  
    prefer-ip-address: true  
    metadataMap:  
      version: 1.0  
      variant: A  
      user: ${security.user.name}  
      password: ${security.user.password}  
management:  
  security:  
    enabled: false  

  到此,整个config服务项目配置完毕!!

 

从现在开始,我这边会将近期研发的spring cloud微服务云架构的搭建过程和精髓记录下来,帮助更多有兴趣研发spring cloud框架的朋友,大家来一起探讨spring cloud架构的搭建过程及如何运用于企业项目。

(企业架构源码可以加求球:三五三六二四七二五九)

分享到:
评论

相关推荐

    基于Java语言的Spring Cloud Alibaba云服务架构设计源码学习与了解指南

    本指南针对Java语言的Spring Cloud Alibaba云服务架构设计源码,详细梳理了389个文件,涵盖244个Java源代码文件、67个日志文件、42个XML配置文件、13个YAML配置文件、4个Markdown文件、4个YAML文件、3个文本文件、2...

    SpringCloud微服务架构

    Spring Cloud微服务架构是一项技术,它允许开发者构建分布式系统。这种架构方法依赖于小的、自治的服务,每个服务完成特定的业务功能,并且可以通过定义良好的接口与其它服务进行通信。Spring Cloud是Spring的子项目...

    基于Spring Boot 3.0、 Spring Cloud 2022 & Alibaba 的微服务RBAC 权限管理系统

    同时,该系统还具备其他强大的功能,如基于Spring Boot 3.0的快速开发能力、基于Spring Cloud的分布式微服务架构,以及与Alibaba相关的云服务集成能力。总体而言,这个系统是一个高效、安全、可扩展的现代化管理系统...

    基于spring boot的spring cloud 开源框架

    springCloud是基于SpringBoot的一整套实现微服务的框架。他提供了微服务开发所需的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等组件。最重要的是, 跟...

    spring cloud+mybatis 案例

    最重要的是,跟spring boot框架一起使用的话,会让你开发微服务架构的云服务非常好的方便。 Spring Cloud包含了非常多的子框架,其中,Spring Cloud Netflix是其中一套框架,由Netflix开发后来又并入Spring Cloud大...

    spring-cloud.pdf

    整篇官方文档旨在为Spring Cloud开发者提供从入门到深入使用再到贡献代码的完整知识体系,帮助开发者快速搭建并维护一个稳定、可扩展的微服务架构。文档中的每个知识点和示例代码,都紧密贴合实际开发中的应用场景,...

    基于AWS的Spring Cloud微服务实践.pdf

    结合AWS的强大云服务,Spring Cloud能够帮助开发者更高效地实现微服务架构。 首先,微服务架构是一种将单一应用程序拆分为一组小型、独立的服务的方法,每个服务都可以在其自己的进程中运行,并通过轻量级机制...

    spring cloud+mybatis 案例.rar_mybatis_spring boot_spring cloud_微服务

    最重要的是,跟spring boot框架一起使用的话,会让你开发微服务架构的云服务非常好的方便。 Spring Cloud包含了非常多的子框架,其中,Spring Cloud Netflix是其中一套框架,由Netflix开发后来又并入Spring Cloud大...

    Spring Cloud Alibaba技术架构展望.pdf

    Spring Cloud Alibaba是一个基于Spring Cloud框架的扩展,旨在提供一套针对阿里巴巴云服务的全面解决方案,让开发者能够更加便捷地构建和管理分布式系统。该技术架构的出现,极大地推动了微服务领域的创新,使得...

    SpringCloud.zip

    最重要的是,跟spring boot框架一起使用的话,会让你开发微服务架构的云服务非常好的方便。 Spring Cloud包含了非常多的子框架,其中,Spring Cloud Netflix是其中一套框架,由Netflix开发后来又并入Spring Cloud大...

    Spring Cloud中文文档.pdf

    根据提供的信息,我们可以详细解析与Spring Cloud相关的各个知识点: ### Spring Cloud 概述 Spring Cloud 是一套基于 Spring Boot 实现的微服务云应用开发框架,它利用 Spring Boot 的开发便利性巧妙地简化了...

    spring cloud+mybatis实战案例demo

    Spring cloud + mybatis 案例; Spring Cloud是基于Spring Boot的一整套实现微服务的框架。...最重要的是,跟spring boot框架一起使用的话,会让你开发微服务架构的云服务非常好的方便,微服务必备神器,秒懂百科.

    SpringCloud 微服务技术架构总体设计方案(供应商版)

    综上所述,SpringCloud 微服务技术架构总体设计方案提供了一个全面的框架,不仅涵盖了微服务架构的关键组成部分,而且深入到具体业务场景,如供应商管理和寻源服务,为企业构建稳定、灵活和高效的云服务架构提供了...

    Spring Cloud Alibaba.zip

    在当今的互联网时代,微服务架构已经成为大型系统设计的主流模式,而Spring Cloud作为Java领域的微服务治理框架,深受广大开发者喜爱。Spring Cloud Alibaba则是阿里巴巴为Spring Cloud生态贡献的一系列高质量的...

    2.springcloud-k8s-shenzhen.pdf

    文档内容显示,虽然OCR技术可能引入了一些文字识别错误,但整体上提供了关于SpringCloud和Kubernetes应用的深刻洞察,并在金融科技背景下展示了一系列的实现和管理微服务架构的技术和方法。这些知识对于推动金融行业...

    mica是Spring Cloud 微服务开发核心工具集,等组件开箱即用.rar

    mica 云母,寓意为云服务的核心,mica v1.1.0 开源了原来闭源的 mica-pro 部分代码,增强 Spring cloud 功能,使得 Spring cloud 服务开发更加方便快捷。 mica 核心依赖 mica 基于 java 8,没有历史包袱,支持传统 ...

    spring cloud eureka

    **云服务2(cloudservice2)** 和 **云服务1(cloudservice1)** 在这个场景中可能代表两个不同的微服务应用,它们都使用Eureka Client与Eureka Server交互,完成自身的服务注册和发现。 **MyEureka** 可能是指配置...

    微服务spring cloud alibaba

    6. **Alibaba Cloud SDK**:这是阿里巴巴提供的云服务SDK,方便开发者快速接入阿里云的各种服务,如对象存储OSS、数据库RDS等,实现云原生的微服务架构。 在实际项目中,如文件名"volunteer-analysis-system-2"所示...

    spring-cloud-netflix-master.zip

    这个资源,"spring-cloud-netflix-master.zip",包含了2019年7月2日时SpringCloud官网提供的最新开源代码,对于开发者来说,是一份宝贵的参考资料。 Spring Cloud Netflix的核心组件包括: 1. Eureka:服务注册与...

    SpringBoot SpringCloud Redis

    SpringCloud强调了微服务架构中各组件之间的依赖关系,例如服务注册与发现、配置管理、负载均衡、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、分布式会话和集群状态。借助SpringCloud,开发...

Global site tag (gtag.js) - Google Analytics