Dubbo微服务影院系列(3):环境搭建

基础环境搭建 基于Guns + SpringBoot + Dubbo构建影院平台 Spring + Dubbo SpringBoot + Dubbo 微服务基本概念 Provider:服务提供者 Consumer:服务调用者,调用 Provider 提供的服务实现 同一个服务可以即是 Provider,又是 Consumer 以下可以选用 Spring 或 SpringBoot Spring基础环境构建 项目结构 主模块(Spring-Dubbo-Demo) 在 pom.xml 中添加 dependencies <dependencies> <dependency> <groupId>com.101tec</groupId> <artifactId>zkclient</artifactId> <version>0.9</version> </dependency> <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.9</version> <type>pom</type> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>dubbo</artifactId> <version>2.5.3</version> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty-all</artifactId> <version>4.1.6.Final</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>org.javassist</groupId> <artifactId>javassist</artifactId> <version>3.21.0-GA</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> <!-- spring相关jar --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.3.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>4.3.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>4.3.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>4.3.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>4.3.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> <version>4.3.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>4.3.3.RELEASE</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> </dependencies> 子模块(provider、consumer) 在 resources 中添加 applicationContext.xml(可更改后缀) ...

March 8, 2020 · 3 min

Dubbo微服务影院系列(2):微服务入门

传统业务应用 传统应用带来的问题 单一业务开发和迭代困难 扩容困难 部署和回滚困难 微服务发展历程 面向服务开发 - SOA 微服务开发 微服务概述 微服务是一种将业务系统进一步拆分的架构风格 微服务强调每个单一业务都独立运行 每个单一服务都应该使用更轻量的机制保持通信 服务不强调环境,可以不同语言或数据源 微服务选择 Dubbo Spring Cloud Zero ICE

March 6, 2020 · 1 min

Dubbo微服务影院系列(1):课程导学

为什么使用Dubbo Dubbo 是基于 RPC 通信协议,速度更快 Dubbo 的多中心配置更灵活 ZooKeeper Redis Dubbo 可以按需集成其他组件,完成微服务生态环境构建 Hystrix Zipkin 包括阿里、小米、京东等多家互联网公司都有使用 学习目标 构建业务完整的商业化项目 掌握以 Dubbo 为底的各项微服务套件的应用 掌握基于 Dubbo 的微服务常见面试问题 业务结构图 核心功能 主要知识点 技术架构图

March 6, 2020 · 1 min

Spring Cloud Eureka

Spring Cloud Eureka 基于 Netflix Eureka 做了二次封装 两个组件组成: Eureka Server 注册中心 作为具有服务注册功能的服务器,是服务注册中心,系统中的其他微服务使用 Eureka Client 连接到Eureka Server ,并维持心跳连接以监控各个微服务是否正常运行。 Eureka Client 服务注册 用于简化与服务器的交互,作为轮询负载均衡器,并提供服务的故障切换支持。 启动 Eureka Server 1. 创建Spring项目 2. 填充项目信息 3. 选择项目类型为 Cloud Discovery 中的 Eureka Server 4. 完成创建 5. 添加注解 @EnableEurekaServer @SpringBootApplication @EnableEurekaServer public class EurekaApplication { public static void main(String[] args) { SpringApplication.run(EurekaApplication.class, args); } } 6. 配置 application.yml eureka: client: service-url: defaultZone: http://localhost:8761/eureka/ register-with-eureka: false spring: application: name: eureka server: port: 8761 7. 启动 Eureka Server ...

January 31, 2019 · 1 min

微服务简介

images 定义 The microservice architectural style is an approach to developing a single application running as a suite of small services, each running its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies. ...

January 31, 2019 · 1 min