欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

【分布式实战】(二)微服务,搭建项目

程序员文章站 2022-04-15 20:00:32
一、微服务概念微服务架构风格,就像是把一个单独的应用程序开发为一套小服务,每个小服务运行在自己的进程中,并使用轻量级机制通信,通常是HTTP API。这些服务围绕业务能力来构建,并通过完全自动化部署机制来独立部署。这些服务使用不同的编写语言书写,以及不同数据存储技术,并保持最低限度的集中式管理。简而言之,拒绝大型单体应用,基于业务边界进行服务微化拆分,各个服务独立部署运行。1、各司其职 2、服务高可用和可扩展性二、idea创建一个微服务的项目1、从码云上新建并clone一个新项目去码云新建一个...

一、微服务概念

微服务架构风格,就像是把一个单独的应用程序开发为一套小服务,每个小服务运行在自己的进程中,并使用轻量级机制通信,通常是HTTP API。这些服务围绕业务能力来构建,并通过完全自动化部署机制来独立部署。这些服务使用不同的编写语言书写,以及不同数据存储技术,并保持最低限度的集中式管理。

简而言之,拒绝大型单体应用,基于业务边界进行服务微化拆分,各个服务独立部署运行。

1、各司其职 2、服务高可用和可扩展性
【分布式实战】(二)微服务,搭建项目

二、idea创建一个微服务的项目

1、从码云上新建并clone一个新项目

去码云新建一个项目,然后通过Idea从git上clone这个项目。
【分布式实战】(二)微服务,搭建项目

2、创建微服务模块

分的每一个服务均要一个模块,按需选择创建方式,需要springboot的就选择springboot,不需要的则新建一个maven的普通项目 (比如公共模块,就不需要springboot,只需要maven)

微服务模块大致可以分为:

  • 公共模块(common)
  • 管理端模块(管理端可以用人人开源的快速开发平台)
  • 主业务模块(很多,可以具体分)
  • 第三方模块(第三方的接口,各个模块都可能调用,就单独拎出来)
  • 网关模块(可用 gateway,所有的调用都是调用的网关模块,网关进行转发至其他模块)

三、微服务项目配置小技巧

(1)依赖工具类,用不上的可以除去

<dependency>
    <groupId>com.tangxz.gulimall</groupId>
    <artifactId>gulimall-common</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <exclusions>
        <exclusion>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
        </exclusion>
    </exclusions>
</dependency>

(2)根目录下的pom.xml就是这么干净
【分布式实战】(二)微服务,搭建项目
(3)每一个springboot的微服务都以下两个依赖

  • SpringWeb用于web服务

  • OpenFeign用于模块间的相互调用。
    【分布式实战】(二)微服务,搭建项目
    (4)gitignore配置

HELP.md
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**
!**/src/test/**

### STS ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/

### VS Code ###
.vscode/

pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
.mvn/wrapper/maven-wrapper.jar

**/mvnw
**/mvnw.cmd

**/.mvn
**/target/

**/.idea

**/.gitignore

(5)端口号分配

建议7000,8000,9000,10000,11000这样分配,便于日后每个服务做扩展

本文地址:https://blog.csdn.net/weixin_42295814/article/details/107503618

相关标签: 分布式实战