文档章节

spring-cloud 学习一 介绍

m
 modprobe
发布于 2016/11/08 09:57
字数 539
阅读 18
收藏 0

  微服务Microservice,跟之相对应的是将功能从开发到交付都打包成一个很大的服务单元,一般称之为Monolith,也称「巨石」架构。微服务实现和实施思路更强调功能单一,服务单元小型化和微型化,倡导将服务粒度做小,使它可以独立承担对外服务的职责。

       

  Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。

  接下来会以一个简单的demo来学习Spring Cloud ,地址在github,demo使用maven构建。

  包含几个子module

  server-discovery:服务发现

  config-service:配置服务

  user-provider-service:服务提供者

  user-ui: 消费者,web前端展示

  api-gateway: 服务网关

 

首先配置hosts,操作都以域名访问 127.0.0.1       discovery config gateway

 

demo中的代码参考(抄袭)自 https://github.com/kbastani/spring-cloud-microservice-example 和 http://blog.didispace.com/springcloud5/ 以及http://git.oschina.net/itmuch/spring-cloud-study

创建父级项目 spring-cloud-demo,pom文件内容

<?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>


    <groupId>com.dh.cloud</groupId>
    <artifactId>spring-cloud-demo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

    <modules>
        <module>server-discovery</module>
        <module>user-provider-service</module>
        <module>user-ui</module>
        <module>api-gateway</module>
        <module>config-service</module>
    </modules>

    <parent>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-parent</artifactId>
        <version>Camden.SR1</version>
        <relativePath/>
        <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>1.8</java.version>
        <docker.plugin.version>0.4.11</docker.plugin.version>
    </properties>
    
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-parent</artifactId>
                <version>Camden.SR1</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <repositories>
        <repository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>http://repo.spring.io/libs-snapshot-local</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-snapshots-continuous</id>
            <name>Spring Snapshots Continuous</name>
            <url>http://repo.spring.io/libs-snapshot-continuous-local</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>http://repo.spring.io/libs-milestone-local</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-releases</id>
            <name>Spring Releases</name>
            <url>http://repo.spring.io/libs-release-local</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>spring-snapshots</id>
            <name>Spring Snapshots</name>
            <url>http://repo.spring.io/libs-snapshot-local</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>spring-milestones</id>
            <name>Spring Milestones</name>
            <url>http://repo.spring.io/libs-milestone-local</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>
</project>

 

本文转载自:http://www.cnblogs.com/modprobe/p/6001057.html

共有 人打赏支持
m
粉丝 1
博文 35
码字总数 0
作品 0
手把手教学系列——疯狂Spring Cloud教学视频

大家好,我是《疯狂Spring Cloud微服务架构实战》一书的作者杨恩雄,该书的配套教学视频已经录制完成,目的是为了让更多的朋友能轻松地学习Spring Cloud。本书与配套视频,适合Spring Cloud的...

杨大仙的程序空间
2017/10/18
0
24
spring cloud 入门系列:总结

从我第一次接触Spring Cloud到现在已经有3个多月了,当时是在博客园里面注册了账号,并且看到很多文章都在谈论微服务,因此我就去了解了下,最终决定开始学习Spring Cloud。我在一款阅读App...

JAVA开发老菜鸟
07/20
0
0
spring-cloud项目学习与实践记录之——服务注册与发现

先简单介绍一下spring cloud简介: 本系列文章的背景:本系列文章是基于本人之前的一个完整的综合站点管理系统,采用新的spring cloud系统进行微服务化的一个演变过程。原系统是一个模块化的...

cavion
07/14
0
0
Spring Cloud构建微服务架构服务注册与发现

Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、...

明理萝
06/11
0
0
Spring Cloud微服务-全栈技术与案例解析

在互联网时代,互联网产品的最大特点就是需要快速发布新功能,支持高并发和大数据。传统的架构已经慢慢不能支撑互联网业务的发展,这时候微服务架构顺势而出。 最开始国内很多公司都是基于阿...

尹吉欢
07/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

72.告警系统邮件引擎 运行告警系统

20.23/20.24/20.25 告警系统邮件引擎 20.26 运行告警系统 20.23/20.24/20.25 告警系统邮件引擎 邮件首先要有一个mail.py,以下。 因为我们之前zabbix的时候做过,就可以直接拷贝过来 mail.s...

王鑫linux
32分钟前
0
0
09-利用思维导图梳理JavaSE-

09-利用思维导图梳理JavaSE-Java IO流 主要内容 1.Java IO概述 1.1.定义 1.2.输入流 - InputStream 1.3.输出流 - OutputStream 1.4.IO流的分类 1.5.字符流和字节流 2.InputStream类 2.1.File...

飞鱼说编程
37分钟前
1
0
Spring Cloud 微服务的那点事

在详细的了解SpringCloud中所使用的各个组件之前,我们先了解下微服务框架的前世今生。 单体架构 在网站开发的前期,项目面临的流量相对较少,单一应用可以实现我们所需要的功能,从而减少开...

我是你大哥
47分钟前
2
0
步步深入MySQL:架构->查询执行流程->SQL解析顺序

一、前言 一直是想知道一条SQL语句是怎么被执行的,它执行的顺序是怎样的,然后查看总结各方资料,就有了下面这一篇博文了。 本文将从MySQL总体架构--->查询执行流程--->语句执行顺序来探讨一...

Java干货分享
今天
1
0
gson1.7.1线程并发导致空指针问题

java.lang.NullPointerExceptionat com.google.gson.FieldAttributes.getAnnotationFromArray(FieldAttributes.java:231)at com.google.gson.FieldAttributes.getAnnotation(FieldAttribut......

东风125
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部