精华内容
下载资源
问答
  • 合理划分微服务微服务架构设计的首要任务就是合理划分...下面,我们将使用水平划分和垂直划分法两种方法相结合的方式创建微服务。一方面,在水平方向上,根据业务功能划分微服务,并把这次划分所创建的微服务称为...

    合理划分微服务

    微服务架构设计的首要任务就是合理划分微服务,即围绕业务功能创建微服务项目。在划分微服务时,有关微服务粗细粒度的考量,建议在平台创建的初始阶段使用粗粒度的方法,按业务功能进行划分。随着业务的发展及其运营的情况,再依据发展规模考虑是否继续细分。下面,我们将使用水平划分法和垂直划分法两种方法相结合的方式创建微服务。

    一方面,在水平方向上,根据业务功能划分微服务,并把这次划分所创建的微服务称为 RESTAPI 微服务。 RESTAPI 微服务负责业务功能的行为设计,主要完成数据管理方面的工作,并通过使用 REST 协议,对外提供接口服务。

    另一方面,在垂直方向上,再以 REST API 微服务为基础,实现前后端分离设计,创建 WebUI 微服务。 Web 微服务不直接访问数据,它只专注于人机交互界面的设计,它的数据存取将通过调用阻STAPI 微服务来完成。

    这样,经过两次微服务划分,我们就可以创建出 RESTAPI WebUI 两种类型的微服务。

    也就是说,我们只要使用两种类型的微服务,就可以构建一个复杂的业务系统。

    使用 RESTAPI WebUI 微服务,结合高性能和高并发的设计,再通过微服务的多副本发布,就可以构建一个能适应任何规模访问的、多维的、稳定牢固的网格结构,并且这个网格结构还具有自由伸缩的特性,可以根据业务的发展规模进行扩充或者缩编 这样就可以快速地搭建一个可持续扩展的系统平台。

    49c7aced44151200ad421b819a82b0f4.png

    创建 RESTAPI 微服务

    根据电商平台的总体设计及其各个业务模型的功能,就可以创建和划分微服务了。

    下面使用 上节中微服务架构的设计方法划分微服务,即使用水平划分法和垂直划分法创建微服务项目。

    首先使用水平划分法,按电商平台的业务功能 进行阻ST API 微服务划分。下面是初步划分出来的一些微服务。

    4260b767eb5d5cd6b90de8b86a8f9256.png

    通过这些微服务,就可以创建出相关的 RESTAPI 微服务。 RESTAPI 微服务是一个独立的小应用,并且有独立的数据库,可以独立部署和独 运行。 RESTAPI 微服务使用 体对象进行数据的存取操作,然后对外提供基于 HTTP RESTful 接口服务。

    这些微服务的大体功能说明如下。

    • 类目服务,使用二级分类体 ,对外提 分类信息的录入 查询、修改和删除 功能接口。在应用 面上,可以根据不同的业务 求使用不同的功能接口。 商城和商家管理后台中,只提供分类的信息查询。在平台管理后台中,可对分类进行编辑和管理。
    • 商品服务,提供商品创建、商品编辑管理、商品上下架等功能接口,这些均可用于商家管理后台中,为商 提供管理商品的功能。在商城应用中,只需使用商品 询、搜索和商品详情显示等功能接口。
    • 购物车服务,主要为商城的顾客在选购商品时提供服务。同时,购物车服务还提供了对选购商品进行加减和管理等功能接口。
    • 订单服务,在商城中为顾客提供订单生成、订单 询等功能接口。在商家管理后台中可以为商家提供订单 理、查询和统计等功能接 口。
    • 支付服务,在商城中提供结算支付服务。在平台管理后台中提 服务费计算和利润结算的功能接口,同时也可为商家提供收款查询和对账等功能接口。
    • 物流服务,在商城中为顾客提供物流跟踪及收货确认等服务接口。在商家管理后台中提供发货处理和查询统计等功能接口。
    • 评价服务,顾客在商城中交易完成后,可对商品进行评价。同时,顾客在选购商品时,可以查询其他顾客对商品的评价。评价可为顾客购物提供参考。
    • 顾客服务,顾客是平台的用户,顾客服务提供了用户注册、登录、个人信息编辑、收货地址管理等功能接口。
    • 会员服务,会员是商家的用户,顾客在购物过程中可以在任何一个商家注册成为会员。在成为会员后,顾客可享受商家提供的特权服务,比如购物折扣、会员积分等点击率服务,点击率是记录顾客浏览商品的足迹,这些数据可为商家的销售提供决策参考。
    • 点击率服务为商家提供查询和统计的功能接口。
    • 商家服务,可提供商家创建、编辑和权限管理等功能接口,可为平台管理后台实现商家注册、审核和商家用户的权限管理等功能接口。
    55947f99e29be3790e1aefd330f29d1d.png

    创建 WebUI 微服务

    在创建REST API 微服务之后,就可以使用垂直划分法,根据每个 REST API 微服务实现前后端分离设计,创建 Web 微服务。

    根据电商平台的业务模型设计,我们将分别从移动商城、商家管理后台和平台管理后台三个方面创建 Web 微服务

    移动商城 WebUI 微服务

    移动商城的业务功能包括:分类查询、商品查询、购物车 理、订单查询、物流跟 查询、个人信息管理和会员卡管理等。

    移动商城的 Web 微服务如下:

    • 分类查询
    • 商品查询
    • 购物车管理
    • 订单查询
    • 物流跟踪查询
    • 个人信息管理
    • 会员卡管理

    使用这些微服务提供的服务功能,就可以构建出一个轻灵小巧而又功能丰富的移动商城应用,为各种移动设备提供一个自由网购的服务。

    商家管理后台的 Web UI 微服务

    商家管理后台的业务功能包括 用户管理、商品管理、订单管理、物流管理、会员管理和点击率统计等。这里的每一项功能,都分别由一个单独的微服务应用提供。

    商家管理后台的 Web 微服务如下:

    • 用户管理
    • 商品管理
    • 订单管理
    • 物流管理
    • 评价查询
    • 账户管理
    • 会员管理
    • 点击率统计

    商家管理后台将实现安全的访问控制设计,其功能由不同的应用提供。为了统一用户登录,提供友好的用户体验,我们还将使用一个 sso (单点登录)设计。

    sso 是一个独立的微服务应用,一方面提供统一的访问控制功能,另一方面提供接入应用的授权认证管理功能,即不管商家用户在哪一个应用中登录,都可以获得访问其他应用的权限。

    平台管理后台的 Web UI 微服务

    平台管理后台是一个独立的 Web 微服务应用,它通过调用商家服务,实现商家注册、审核,以及权限配置等管理功能。

    平台管理后台的操作对象为平台运营方,使用范围较小,所以可以使用较为简单的设计方法,即用一个单独应用完成下列相关管理功能

    • 本地用户管理
    • 商家管理
    • 商家权限及其菜单资源管理

    另外 ,平台管理后台的访问控制设计也可以使用较为简单的方法实现。

    本文给大家讲解的内容是大型电商平台设计实例:合理划分微服务、创建RESTAPI、Web UI 微服务

    1. 下篇文章给大家讲解的是大型电商平台设计实例:电商平台微服务体系架构、电商平台微服务项目工程、项目数据库选型、项目代码库;
    2. 觉得文章不错的朋友可以转发此文关注小编;
    3. 感谢大家的支持!
    展开全文
  • 组合数学及其算法

    热门讨论 2011-10-14 20:52:32
    10.7 两阶段法 10.8 对偶原理 10.9 对偶单纯形法 10.10 应用举例 习 题 第十一章 组合优化算法与计算的时间复杂度理论 11.1 dijkstra算法 11.2 floyd算法 11.3 kruskal算法 11.4 求最优树的破圈法...
  • 下面,我们将使用水平划分和垂直划分法两种方法相结合的方式创建微服务。 一方面,在水平方向上,根据业务功能划分微服务,并把这次划分所创建的微服务称为 RESTAPI 微服务。 RESTAPI 微服务负责业务功能的行为...

    合理划分微服务

    微服务架构设计的首要任务就是合理划分微服务,即围绕业务功能创建微服务项目。在划分微服务时,有关微服务粗细粒度的考量,建议在平台创建的初始阶段使用粗粒度的方法,按业务功能进行划分。随着业务的发展及其运营的情况,再依据发展规模考虑是否继续细分。下面,我们将使用水平划分法和垂直划分法两种方法相结合的方式创建微服务。

    一方面,在水平方向上,根据业务功能划分微服务,并把这次划分所创建的微服务称为 RESTAPI 微服务。 RESTAPI 微服务负责业务功能的行为设计,主要完成数据管理方面的工作,并通过使用 REST 协议,对外提供接口服务。

    另一方面,在垂直方向上,再以 REST API 微服务为基础,实现前后端分离设计,创建 WebUI 微服务。 Web 微服务不直接访问数据,它只专注于人机交互界面的设计,它的数据存取将通过调用阻STAPI 微服务来完成。

    这样,经过两次微服务划分,我们就可以创建出 RESTAPI WebUI 两种类型的微服务。

    也就是说,我们只要使用两种类型的微服务,就可以构建一个复杂的业务系统。

    使用 RESTAPI WebUI 微服务,结合高性能和高并发的设计,再通过微服务的多副本发布,就可以构建一个能适应任何规模访问的、多维的、稳定牢固的网格结构,并且这个网格结构还具有自由伸缩的特性,可以根据业务的发展规模进行扩充或者缩编 这样就可以快速地搭建一个可持续扩展的系统平台。

    大型电商平台设计实例:创建REST API、WebUI微服务

     

    创建 RESTAPI 微服务

    根据电商平台的总体设计及其各个业务模型的功能,就可以创建和划分微服务了。

    下面使用 上节中微服务架构的设计方法划分微服务,即使用水平划分法和垂直划分法创建微服务项目。

    首先使用水平划分法,按电商平台的业务功能 进行阻ST API 微服务划分。下面是初步划分出来的一些微服务。

    大型电商平台设计实例:创建REST API、WebUI微服务

     

    通过这些微服务,就可以创建出相关的 RESTAPI 微服务。 RESTAPI 微服务是一个独立的小应用,并且有独立的数据库,可以独立部署和独 运行。 RESTAPI 微服务使用 体对象进行数据的存取操作,然后对外提供基于 HTTP RESTful 接口服务。

    这些微服务的大体功能说明如下。

    • 类目服务,使用二级分类体 ,对外提 分类信息的录入 查询、修改和删除 功能接口。在应用 面上,可以根据不同的业务 求使用不同的功能接口。 商城和商家管理后台中,只提供分类的信息查询。在平台管理后台中,可对分类进行编辑和管理。
    • 商品服务,提供商品创建、商品编辑管理、商品上下架等功能接口,这些均可用于商家管理后台中,为商 提供管理商品的功能。在商城应用中,只需使用商品 询、搜索和商品详情显示等功能接口。
    • 购物车服务,主要为商城的顾客在选购商品时提供服务。同时,购物车服务还提供了对选购商品进行加减和管理等功能接口。
    • 订单服务,在商城中为顾客提供订单生成、订单 询等功能接口。在商家管理后台中可以为商家提供订单 理、查询和统计等功能接 口。
    • 支付服务,在商城中提供结算支付服务。在平台管理后台中提 服务费计算和利润结算的功能接口,同时也可为商家提供收款查询和对账等功能接口。
    • 物流服务,在商城中为顾客提供物流跟踪及收货确认等服务接口。在商家管理后台中提供发货处理和查询统计等功能接口。
    • 评价服务,顾客在商城中交易完成后,可对商品进行评价。同时,顾客在选购商品时,可以查询其他顾客对商品的评价。评价可为顾客购物提供参考。
    • 顾客服务,顾客是平台的用户,顾客服务提供了用户注册、登录、个人信息编辑、收货地址管理等功能接口。
    • 会员服务,会员是商家的用户,顾客在购物过程中可以在任何一个商家注册成为会员。在成为会员后,顾客可享受商家提供的特权服务,比如购物折扣、会员积分等点击率服务,点击率是记录顾客浏览商品的足迹,这些数据可为商家的销售提供决策参考。
    • 点击率服务为商家提供查询和统计的功能接口。
    • 商家服务,可提供商家创建、编辑和权限管理等功能接口,可为平台管理后台实现商家注册、审核和商家用户的权限管理等功能接口。

    大型电商平台设计实例:创建REST API、WebUI微服务

     

    创建 WebUI 微服务

    在创建REST API 微服务之后,就可以使用垂直划分法,根据每个 REST API 微服务实现前后端分离设计,创建 Web 微服务。

    根据电商平台的业务模型设计,我们将分别从移动商城、商家管理后台和平台管理后台三个方面创建 Web 微服务

    移动商城 WebUI 微服务

    移动商城的业务功能包括:分类查询、商品查询、购物车 理、订单查询、物流跟 查询、个人信息管理和会员卡管理等。

    移动商城的 Web 微服务如下:

    • 分类查询
    • 商品查询
    • 购物车管理
    • 订单查询
    • 物流跟踪查询
    • 个人信息管理
    • 会员卡管理

    使用这些微服务提供的服务功能,就可以构建出一个轻灵小巧而又功能丰富的移动商城应用,为各种移动设备提供一个自由网购的服务。

    商家管理后台的 Web UI 微服务

    商家管理后台的业务功能包括 用户管理、商品管理、订单管理、物流管理、会员管理和点击率统计等。这里的每一项功能,都分别由一个单独的微服务应用提供。

    商家管理后台的 Web 微服务如下:

    • 用户管理
    • 商品管理
    • 订单管理
    • 物流管理
    • 评价查询
    • 账户管理
    • 会员管理
    • 点击率统计

    商家管理后台将实现安全的访问控制设计,其功能由不同的应用提供。为了统一用户登录,提供友好的用户体验,我们还将使用一个 sso (单点登录)设计。

    sso 是一个独立的微服务应用,一方面提供统一的访问控制功能,另一方面提供接入应用的授权认证管理功能,即不管商家用户在哪一个应用中登录,都可以获得访问其他应用的权限。

    平台管理后台的 Web UI 微服务

    平台管理后台是一个独立的 Web 微服务应用,它通过调用商家服务,实现商家注册、审核,以及权限配置等管理功能。

    平台管理后台的操作对象为平台运营方,使用范围较小,所以可以使用较为简单的设计方法,即用一个单独应用完成下列相关管理功能

    • 本地用户管理
    • 商家管理
    • 商家权限及其菜单资源管理

    另外 ,平台管理后台的访问控制设计也可以使用较为简单的方法实现。

    本文给大家讲解的内容是大型电商平台设计实例:合理划分微服务、创建RESTAPI、Web UI 微服务

    1. 下篇文章给大家讲解的是大型电商平台设计实例:电商平台微服务体系架构、电商平台微服务项目工程、项目数据库选型、项目代码库;
    2. 觉得文章不错的朋友可以转发此文关注小编;
    3. 感谢大家的支持!
    展开全文
  • 17.9. 1 类和实例的表示 17.9.2 链的表示 17.9. 3 消息的表示 17.9.4 参数的表示 17.9.5 返回值的表示 17.9.6 消息的语法 17.9.7 传送到"self"或"this"的消息表示 17.9.8 迭代的...
  • 算法基本设计方法:列举、归纳、递推、递归、减半递推技术、回溯。 (5)指令系统 所谓指令系统指的是一个计算机系统能执行的所有指令的集合。 (2)数据结构研究的3个方面 ① 数据集合中各数据元素之间所固有...
  • 栏变体 6.11 准则:以无用户界面约束的本质风格编写用例 6.12 准则:编写简洁的用例 6.13 准则:编写黑盒用例 6.14 准则:持有参与者和参与者目标的视点 6.15 准则:如何发现用例 6.16 准则:什么样的测试有...
  • 全书共分为部分,第一部分(第1章至第10章)介绍面向对象编程的基础和应用,如数据抽象、继承、泛型类型、异常处理等内容;第二部分(第11章至第13章)深入探讨如何建立抽象及其策略,并研究了C++对象模型。书中包含...
  • 15.今有一个层次数据库实例,试用子女一兄弟链接和层次序列链接画出它的存储结构示意图。 答: 子女兄弟链接: 层次序列链接: 16 .试述网状模型的概念,举出三个网状模型的实例。 答: 满足下面个...
  • 软件工程教程

    热门讨论 2012-07-06 23:10:29
    种典型的建模工具 : 1.IBM Rational Rose 2.Microsoft Office Visio IBM Rational Rose Microsoft Office Visio Visio是一个图表绘制程序,可以帮助用户描述复杂设想以及系统的业务和技术图表。使用...
  • 全书内容由浅入深,并辅以大量的实例说明,书本阶段性地提供了一些实验指导。 本书提供了所有实例的源代码以及开发过程中用到的软件下载地址,供读者学习参考使用。 本书为学校教学量身定做,供高校面向对象技术相关...
  • 软件工程知识点

    2012-12-02 21:34:25
    需求规格说明书是需求分析阶段需要交付的基本文档,将成为开发者进行软件设计和用户进行软件验证的基本依据,涉及引言、术语定义、用户需求、系统体系结构、系统需求等有关软件需求及其规格的诸多描述与定义。...
  • 第3章:用户需求及其行为 “过于简单”的信息模型 信息需求 信息搜寻行为 学习信息需求和信息搜寻行为 第2部分:信息架构基本原理 第4章:信息架构详解 展现信息架构 信息架构组件 第5章:组织系统 信息组织的挑战 ...
  • 2.3.2 使用验证锁的多版本两阶段加锁 32 2.4 确认(乐观的)并发控制技术 32 2.5 数据项粒度和多粒度加锁 33 2.5.1 加锁的粒度级别考虑 34 2.5.2 多粒度级别加锁 34 2.6 索引中使用加锁进行并发...
  • asp.net知识库

    2015-06-18 08:45:45
    关于反射中创建类型实例种方法 ASP.Net应用程序的多进程模型 NET委托:一个C#睡前故事 [推荐] - [原创] Microsoft .NET策略及框架概述 卸载Class? Web Form 窗体 如何实现web页面的提示保存功能 在ASP.Net中种...
  • Reversing:逆向工程揭密

    热门讨论 2010-06-21 17:00:47
    但是软件逆向工程仍然算不上成熟,这主要表现在对理论和实践的研究都还处于早期的探究阶段,并未形成统一的、系统的、科学的软件逆向工程的理论和方法。从工程实际的角度来看,大体上可以将软件逆向工程分为大类:...
  • 21天学通C++ (中文第五版)

    热门讨论 2010-06-23 16:57:03
    本书提供了大量语法实例和详细的代码分析,它们是引导读者完成C++编程之旅的优秀向导。无论读者是刚开始学习编程还是已经有一些编程经验,书中精心安排的内容都将让你的C++学习变得既快速又轻松。 本书约定 提示...
  • 此外,还要考虑开发人员的水平,学习了年的jsp开发,对于这个系统的编写,我想完整的之需要个月就可以写出程序,再花上几天的调试,计划个月左右就可以完成投入使用了。 我们掌握了数据库及其应用技术、...
  • 7.4.2 视图及其用途的快速列表 101 7.4.3 域的声明 102 7.4.4 定义模式 102 7.4.5 INFORMATION_SCHEMA断言 105 第8章 用表实现的复杂函数 106 8.1 没有简单公式的函数 106 8.2 用表实现校验位 107 ...
  • php高级开发教程说明

    2008-11-27 11:39:22
    整天的时间,这个小小的循环也许是设计阶段最庞大的部分,但另一方面,你可以在不到一天 的时间内策划好数千行的代码。 同样,我们假定需要一个小脚本来列出某个目录中的所有文件,你能够很快地完成它,使 其能从事...
  • ASP.NET精品课程+源代码

    千次下载 热门讨论 2009-01-05 20:15:51
    目前大部分高校在网站建设、程序设计等教学中多采用传统的讲授和系统的学习,同时结合一些上机实践操作来巩固和熟悉课堂上所讲的一些知识点,但对于计算机网站建设、程序设计等课程而言,其特点是更新、更快、内容...
  • C#微软培训教材(高清PDF)

    千次下载 热门讨论 2009-07-30 08:51:17
    C#--微软.NET的第一语言 本书着重介绍语言本身,比较少涉及应用,不错的入门书,从头讲起,不怕... C#语言在.NET 框架中的作用及其特性 1.1 Microsoft.NET 一场新的革命 1.1.1 什么是.NET 2000 年 6 月 ...
  • C#微软培训资料

    2014-01-22 14:10:17
    C#语言在.NET 框架中的作用及其特性 1.1 Microsoft.NET 一场新的革命 1.1.1 什么是.NET 2000 年 6 月 22 日 不论对 Microsoft 还是对整个 IT 业界都将成为值得纪念的一天 这一天 微软公司正式推出...
  • LINGO软件的学习

    2009-08-08 22:36:50
    一个集部分可以放置于模型的任何地方,但是一个集及其属性在模型约束中被引用之前必须定义了它们。 2.3.1 定义原始集 为了定义一个原始集,必须详细声明: •集的名字 •可选,集的成员 •可选,集成员的属性 定义一...
  • iPhone开发秘籍(第2版)--源代码

    热门讨论 2012-12-11 13:51:22
    此外,还结合实例讲解了如何开发各种iphone特性,包括视图、视图控制器、警告、表格、媒体、控件、人物、位置和事件。  《iphone开发秘籍(第2版)》适合iphone和mac开发人员。 作译者 作者:(美国)萨丹(Erica ...
  • 引用计数............................................................................................................................................... 26 2.4.1.2. 可达性分析..........................

空空如也

空空如也

1 2
收藏数 30
精华内容 12
关键字:

两阶段法及其实例