架构演进和分布式系统基础知识

1、传统架构演进到分布式架构
简介:讲解单机应用和分布式应用架构演进基础知识

高可用 LVS+keepalive

单体应用:

集群:

微服务架构:

1、单体应用:
开发速度慢
启动时间长
依赖庞大
等等

2、微服务
易开发、理解和维护
独立的部署和启动

不足:
分布式系统-》分布式事务问题
需要管理多个服务-》服务治理

2、微服务核心基础讲解
简介:讲解微服务核心知识 :网关、服务发现注册、配置中心、链路追踪、负载均衡器、熔断
  1.1、网关:路由转发 + 过滤器
  /api/v1/pruduct/ 商品服务
  /api/v1/order/ 订单服务
  /api/v1/user/ 用户服务

   1.2、服务注册发现:调用和被调用方的信息维护

   1.3、配置中心:管理配置,动态更新 application.properties

   1.4、链路追踪:分析调用链路耗时
    例子:下单-》查询商品服务获取商品价格-》查询用户信息-》保存数据库

   1.5、负载均衡器:分发负载

   1.6、熔断:保护自己和被调用方

3、常见的微服务框架
简介:讲解常用的微服务框架

consumer: 调用方
provider: 被调用方
一个接口一般都会充当两个角色(不是同时充当)

1、dubbo: zookeeper + dubbo + springmvc/springboot
  官方地址:http://dubbo.apache.org/#!/?lang=zh-cn
  配套
  通信方式:rpc
  注册中心:zookeper/redis
  配置中心:diamond

2、springcloud: 全家桶+轻松嵌入第三方组件(Netflix 奈飞)
  官网:http://projects.spring.io/spring-cloud/
  配套
  通信方式:http restful
  注册中心:eruka/consul
  配置中心:config
  断路器:hystrix
  网关:zuul
  分布式追踪系统:sleuth+zipkin

  学习资料:https://blog.csdn.net/zhangweiwei2020/article/details/78646252

  Dubbo和springCloud架构:

Dubbo:

springcloud:

4、微服务下电商项目基础模块设计
简介:微服务下电商项目基础模块设计 分离几个模块,课程围绕这个基础项目进行学习
小而精的方式学习微服务

1、用户服务
1)用户信息接口
2)登录接口

2、商品服务
1)商品列表
2)商品详情

3、订单服务
1)我的订单
2)下单接口

SpringCloud 商品架构例子(一)的更多相关文章

  1. 基于SpringCloud分布式架构

    基于SpringCloud分布式架构 为什么要使用分布式架构 Spring Cloud 专注于提供良好的开箱即用经验的典型用例和可扩展性机制覆盖 分布式/版本化配置 服务注册和发现 路由 Servic ...

  2. SpringCloud(1) 架构演进和基础知识简介

    一.传统架构演进到分布式架构 简介:讲解单机应用和分布式应用架构演进基础知识 (画图) 高可用 LVS+keepalive 1.单体应用:开发速度慢.启动时间长.依赖庞大.等等 2.微服务:易开发.理 ...

  3. SpringCloud+Boot简单例子笔记

    一.spring cloud简介 spring cloud 为开发人员提供了快速构建分布式系统的一些工具,包括配置管理.服务发现.断路器.路由.微代理.事件总线.全局锁.决策竞选.分布式会话等等.它运 ...

  4. .NET三层架构例子超链接可以点击显示内容页面

    在研究了一个星期的三层架构写出的一个小功能,使用三层架构并实现点击新闻标题可以跳转到自己写的新闻页面. 首先是一个DBHelper,这个不是我自己写的,是朋友给我的 using System; usi ...

  5. 一个App架构例子分析--UI层使用MVP模式;各层之间使用Otto实现通信

    一.这个App整体的架构划分: 分为四大模块:   1.app模块 2.common模块 3.domain模块 4.model模块     app模块的依赖: dependencies {     c ...

  6. 微服务SpringCloud项目架构搭建入门

    Spring的微服务框架SpringCloud受到众多公司欢迎,给大家带来一篇框架搭建入门.本次采用的版本是Spring Cloud版本为Finchley.RELEASE. 一.SpringCloud ...

  7. SpringCloud分布式架构权限管理

    概述 本文讨论分布式架构权限管理的两种情况,一种是针对统一授权访问的,一种是跨平台接口访问的. 虽然分布式架构会做业务的切割,将整体的业务切割为独立的子业务或者子平台,但是同一平台下往往会有统一的授权 ...

  8. SpringCloud商品服务调用方式之feign

    简介:改造电商项目 order-service服务 调用商品服务获取商品信息 Feign: 伪RPC客户端(本质还是用http) 官方文档: https://cloud.spring.io/sprin ...

  9. SpringCloud商品服务调用方式之Ribbon

    1.创建order_service项目 pom依赖 <dependency> <groupId>org.springframework.boot</groupId> ...

随机推荐

  1. Echarts快速入门---------v客学院技术分享

    ECharts,一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等) ...

  2. 深入理解JavaScript中的继承

    1前言 继承是JavaScript中的重要概念,可以说要学好JavaScript,必须搞清楚JavaScript中的继承.我最开始是通过看视频听培训班的老师讲解的JavaScript中的继承,当时看的 ...

  3. mysql - 按条件统计

    在表中分别统计mt =0 和 mt>0 的个数 方法一:select count(if(mt=0,1,null)) as a,count(if(mt>0,1,null)) as b fro ...

  4. Pb代理工具之mitmproxy

    mitmproxy 一 . mitmproxy介绍 mitmproxy 就是用于 MITM 的 proxy,MITM 即中间人攻击(Man-in-the-middle attack). 不同于 fid ...

  5. 前端知识点--CSS overflow 属性

    问题:如何加滚动条? 给div 设置css 样式overflow:scroll div { width:150px; height:150px; overflow:scroll; } -------- ...

  6. Python - dict 字典的多种遍历方式

    前置知识 for 循环详解:https://www.cnblogs.com/poloyy/p/15087053.html 使用 for key in dict 遍历字典 可以使用 for key in ...

  7. vue源码解析之observe

    一. vue文档中有"由于 JavaScript 的限制,Vue 不能检测以下数组的变动",是否真是由于JavaScript的限制,还是出于其他原因考虑 当你利用索引直接设置一个数 ...

  8. 在Windows中安装PySpark环境

    在Windows中安装PySpark环境 安装Python 可以选择安装官方版本的Python,或是Anaconda,对应的地址如下. 下载地址 Python:https://www.python.o ...

  9. shell中cmd1 && cmd2 || cmd3的含义

    在某些情况下,很多指令我想要一次输入去执行,而不想要分次去执行时,就要用到 && || 了.cmd 1 && cmd21,若cmd1执行完毕之后且正确执行($?=0), ...

  10. 文件上传之WAF绕过及相安全防护

    文件上传在数据包中可修改的地方 Content-Disposition:一般可更改 name:表单参数值,不能更改 filename:文件名,可以更改 Content-Type:文件 MIME,视情况 ...