精华内容
下载资源
问答
  • 一个比较完整的SAAS 云平台架构设计文档
  • 云平台是个非常宽泛的领域,一般分成:IaaS 基础设施即服务、PaaS 平台即服务、SaaS 软件即服务,本文侧重介绍企业私有云平台架构。 内容 云平台技术架构 云平台技术架构 如图所示,这是一个完整的企业级应用...

    背景

    云平台是个非常宽泛的领域,一般分成:IaaS 基础设施即服务、PaaS 平台即服务、SaaS 软件即服务,本文侧重介绍企业私有云平台架构。

    内容

    云平台技术架构

    云平台技术架构

    如图所示,这是一个完整的企业级应用平台,由三个部分组成:

    1. 从底层的存储资源、计算资源、网络资源,
    2. 到中间层的容器服务、缓存服务、健康检查服务等,
    3. 再到最上层的业务应用、接口应用等

    这是用云的架构思想构建的企业级应用。

    IaaS

    重点介绍一下 IaaS 部分,可以通过打造 Iaas 来构建企业级的私有云平台。

    IaaS 架构设计

    如图所示,这是 Iaas 的架构图,我们把私有云平台分成:配置管理、ITIL、虚拟资源管理、物理资源管理、自动调度和监控。

    • 配置管理

    所有 IT 资产进行登记管理,包括服务器硬件、网络设备、虚拟机、网络配置、应用部署管理、变更管理、应用发布信息管理、操作员、权限等,是云平台的基础信息配置管理中心。

    • ITIL

    是软件定义资源池、容量计划、监控门户等,是对资源进行统一治理的模块,制定针对当前资源使用情况的容量计划,监控人员的日常工作平台。

    • 虚拟资源管理

    是对虚拟主机、虚拟网络、虚拟存储的管理系统能够自动化完成虚拟化工作,包括自动化装机、自动化网络配置,对虚拟资源的开通、回收提供统一管理入口, 根据应用负载情况,能够触发自动增加虚拟主机,并且部署应用。

    • 物理资源管理

    对服务器、存储设备、交换机设备的统一管理系统,基于物理硬件的自动维护、上架和下架、重启等。

    • 自动调度和监控

    功能包括自动添加和踢出应用节点,根据负载自动调节资源数量,提供基于云端的监控服务。

     

    以上就是企业私有云平台的架构组成。可提供一个私有云的 Portal,供企业用户一站式地对 IT 资源进行管理,包括成本结算、权限控制、资源分配、部署应用程序等。

     

    上一章教程

    架构思维成长系列教程(十一)- 大数据平台架构设计

    该系列教程

    架构思维成长系列教程

    我的专栏

     

     

    至此,全部介绍就结束了

     

     

    -------------------------------

    -------------------------------

     

    我的CSDN主页

    关于我(个人域名,更多我的信息)

    我的开源项目集Github

     

    期望和大家一起学习,一起成长,共勉,O(∩_∩)O谢谢

    欢迎交流问题,可加个人QQ 469580884,

    或者,加我的群号 751925591,一起探讨交流问题

    不讲虚的,只做实干家

    Talk is cheap,show me the code

    展开全文
  • 钛马星车联网云平台 V3;发展历程;6;7;8;产品定义;产品方案;产品应用合资车厂应用;产品应用自主品牌车厂应用;产品特点;产品技术架构设计;产品设计之模块化设计;产品设计之模块集合概览;产品研发流程示意;产品设计之...
  • 技术-SaaS架构初步理解

    千次阅读 2018-05-23 18:17:08
    最近公司准备整一个SaaS的东西。...关于云计算分为三层,基础设施在最下端,平台在中间,软件在顶端,分别是分别是Infrastructure-as-a-Service(IaaS),Platform-as-a-Service(PaaS),Software-as...

    最近公司准备整一个SaaS的东西。有幸参入这一块东西的搭建,借着這个机会也重新好好梳理了一下对SaaS的认识。今天整理一下!

     

    一、云计算与SaaS

    说起SaaS,就得先说说云计算了。关于云计算分为三层,基础设施在最下端,平台在中间,软件在顶端,分别是分别是Infrastructure-as-a-Service(IaaS),Platform-as-a-Service(PaaS),Software-as-a-
    Service(SaaS)。這里虽说主要是要记录一下SaaS架构的理解,随便说说IaaS,PaaS,SaaS分别是个啥东西。

    IaaS: Infrastructure-as-a-Service(基础设施即服务)有了IaaS,你可以将硬件外包到别的地方去。IaaS公司会提供场外服务器,存储和网络硬件,供其他软件公司租用;

    PaaS: Platform-as-a-Service(平台即服务)某些时候也叫做中间件。你公司所有的开发都可以在这一层进行,节省了时间和资源。

    SaaS: Software-as-a-Service(软件即服务)第三层也就是所谓SaaS。被用户直接接触,大多是通过网页浏览器来接入。任何一个远程服务器上的应用都可以通过网络来运行,就是SaaS了。

     

    二、有关SaaS的理解

    2.1、SaaS架构成熟度模型的5个级别——从“混乱”到“乌托邦“

    第0级(混乱):每次新增一个客户,都会新增软件的一个实例。
    第1级(受控的混乱):所有客户都运行在软件的同一个版本上,而且任何的定制化都通过修改配置来实现。
    第2级(多租户[multi-tenant]、高层建筑[Highrise]):所有的客户都已经可以在软件的同一个版本上运行了,而且他们都在同一个“实例”上运行。
    第3级(多租户, 扩建[Build-Out]):此时你已经拥有了多租户、单一版本的软件模型。不过你还是可以通过硬件扩展(scale-out)的方式来进行扩充。
    第4级(乌托邦):如同第3级,除非你可以找出有效的方式,以在不同的“实例”上运行不同版本的软件。

    2.2、SaaS的关键点:多租户;硬件虚拟化;

    2.3、web 应用程序与SaaS 应用程序对比,SaaS需要多考虑的方面

    • 1,应用程序必须支持多租户

        多租户可以分为几个不同的类别(如列表下方的图所示):
        1.1,云中的简单虚拟化,其中只对硬件进行共享。
        1.2,共享应用程序,对每个租户使用不同的数据库。
        1.3,共享应用程序和数据库(效率最高,真正的多租户)。

    • 2,应用程序必须具备某种程度的自助注册功能。

        2.1, 应用程序必须具备某种程度的自助注册功能,即便仅仅是一种请求机制,即产生一种向应用程序添加租户的业务流程。

    • 3,必须具备订阅/记账机制。

        3.1, 必须提供订阅和记账机制。因为 SaaS 应用程序被设计为根据各种因素进行支付,如每个租户的用户数、应用程序选择,还可能包括使用时间等,必须通过某种方式来跟踪和管理
    应用程序的使用,然后生成可由租户管理人员访问的记账信息

    • 4,应用程序必须能够有效地扩展。

        4.1, 必须能够随着订阅的增长进行扩展

    • 5,必须能够监视、配置和管理应用程序和租户。

        5.1, 必须提供治理和应用程序管理功能,以监视、配置和管理应用程序及所有租户

    • 6,必须有一种机制能够支持惟一的用户标识和身份验证。
    • 7,必须有一种机制能够支持对每个租户进行某种程度的自定义。

    2.4、性能问题

    • 1,横向/纵向扩展

         1.1,横向扩展通常用于应用服务器层。

         1.2,纵向扩展通常用于数据库层。

    • 2,数据库集群化
    • 3,地理、分区和同步
    • 4,独立的数据库

    2.5、需要考虑的安全性问题

    • 1, 阻止一个租户查看另一个租户的数据作为一个基本要求;
    • 2, 这些其他应用程序可以是需要访问或共享数据的内部应用程序;也可以是对数据进行挖掘以获得趋势的分析或报告编写工具。(即使是数据库管理员使用的实用工具也会引起安全问题,如果租户可以使用它们访问,或者更糟,操作不属于它们的数据的话。

    2.6、选择技术栈

    2.7、SaaS分层:呈现层,调度层,业务层,数据层;

    2.8、SaaS计费

      SaaS系统是一种租凭方式的软件销售手段。收费一定要遵守“按需订阅,按量付费”的原则。其中付费点有三个维度:一个是计算量、存储量和时间

     

    暂时对SaaS的大概理解就是这麽多,后续实施再进一步完善。最后感谢网络,感谢前辈们的无私分享!



    展开全文
  • Saas系统架构的思考,多租户Saas架构设计分析

    万次阅读 多人点赞 2019-06-14 13:39:35
    ToBSaas系统最近几年都很火。...最近一年,有幸架构一个Crm saas 系统,上线了几个月来,各方面都比满意。整个系统创建过程,踩了很多坑,收获也比较多。总结一下Saas系统架构一些特点: Saas系统分...

            ToB Saas系统最近几年都很火。很多创业公司都在尝试创建企业级别的应用 cRM, HR,销售, Desk Saas系统。很多Saas创业公司也拿了大额风投。毕竟Saas相对传统软件的优势非常明显。   

    最近一年,有幸架构一个Crm saas 系统,上线了几个月来,各方面都比满意。整个系统创建过程,踩了很多坑,收获也比较多。总结一下Saas系统架构一些特点:

    Saas系统分级

    SaaS系统架构成熟度模型的5个级别——从“混乱”到“乌托邦“

    第0级(混乱):每次新增一个客户,都会新增软件的一个实例。
    第1级(受控的混乱):所有客户都运行在软件的同一个版本上,而且任何的定制化都通过修改配置来实现。
    第2级(多租户[multi-tenant]、高层建筑[Highrise]):所有的客户都已经可以在软件的同一个版本上运行了,而且他们都在同一个“实例”上运行。
    第3级(多租户, 扩建[Build-Out]):此时你已经拥有了多租户、单一版本的软件模型。不过你还是可以通过硬件扩展(scale-out)的方式来进行扩充。
    第4级(乌托邦):如同第3级,除非你可以找出有效的方式,以在不同的“实例”上运行不同版本的软件

    应用程序必须支持多租户:

        多租户可以分为几个不同的类别(如列表下方的图所示):
        1.1,云中的简单虚拟化,其中只对硬件进行共享。
        1.2,共享应用程序,对每个租户使用不同的数据库。
        1.3,共享应用程序和数据库(效率最高,真正的多租户)。

    1.分层设计

    Saas系统分层大概是:

    Saas系统分层
    Saas系统分层

     

    Saas系统分层:租户识别>应用层>数据访问层>缓存层>数据库

    业务代码都是写在应用层。

    租户识别可以用spring拦截器实现,然后使用ThreadLocal传递给后端

    数据库和缓存层对应用层应该是透明的。程序员在写代码的时候,只关心业务逻辑,不应该担心多租户的问题。

     

    2.数据隔离要透明

    saas系统说起来很简单,任何系统似乎加个tenant_id(租户id)就变成saas系统了。比如原来的用户登录是:

    select username,password from users where email='abc@qq.com'

    改成

    select username,password from users where email='abc@qq.com' and tenant_id =1;

    对于复杂业务的saas系统,这样做法非常危险,而且开发效率很低。你想想如果那个程序员写sql时候忘了加 “ and tenant_id =1” . 结果不堪设想。

    比较好做法是在数据库访问层对SQL进行改写。

    TenantContext.exec("select username,password from users where email='abc@qq.com' ");

    在连接池根据TenatnContext改写Sql. 

    这样做好处是,一来程序猿最多把系统搞down了,也不至于信息串了互相泄露。二来将来做分表分库也很方便,上层应用不用修改。

    3. 租户识别方案

    比较好做法是通过url识别租户。系统是给租户生成一个随机的三级域名,比如 abc.crm.baidu.com.   如果客户想使用自己的域名,可以在cname到我们生成的三级域名,并在管理系统里面做绑定。

    这样一个租户可以有两个域名,访问saas,一个随机生成的三级域名,另外一个租户自己的域名.代码里面可以根据过来的域名,判断是那个租户然后初始化TenantContext.

    如果不想通过域名来做,也可以通过登录名来判断。这种方式要涉及到租户切换问题。

    4. 智能DNS

    以后补充。

    5. 租户管理系统(计费,订购,定制,充值,催缴)

    Saas系统是必须考虑计费系统和租户控制系统。这个系统需要都是独立设计。比如那个租户购买了那些模块,一个月多少钱。租户可以创建最多的用户数。计费到期邮件提醒等功能。

    计费方式一般有两种,周期性计费,类似月租方案,和使用量计费,用多少付多少。 周期性计费比较简单。也可以两者结合起来。

    6. 定制化开发

    SAAS的优势在于一套系统多人使用,似乎和定制化开发有冲突。比如A客户想要A功能,B客户不想要。但定制化开发是无法避免的,比如CRM系统这样复杂的系统,不可能一套系统满足所有公司的要求。定制化开发尽可能分系统,分模块去做。然后通过控制台中配置不同租户订购不同模块,那些模块可以在前端页面上显示。不同的子系统需要分开部署。前端可通过nginx根据url分发,比如 abc.crm.baidu.com/bi/xxx/xx这个地址,就分发到BI子系统。不要尝试OSGI去搞模块化,这个是个大坑。

    还有开发和产品,现有需求一定要分析清楚,不要一上线发现后患无穷。新功能尽量做的独立可以配置。

    7. 灰度升级

    SAAS付费企业客户对系统问题都特别敏感。 为了减少升级可能出现问题的影响范围,一般都采用灰度升级策略。如果使用了url来区分不同租户,灰度升级配置就会很方便。可以配置nginx 来根据域名做分发,比如租户A(aaa.com)到实例1(版本1.0),租户B(bbb.com)到实例2(版本). 当需要域名配置非常多的时候,nginx配置文档会乱。这块时候可以考虑使用nignx_lua来写一些扩展模块。

    8. 容量估计

     

    9. Saas平台架构分层分析

    Saas平台架构需要完成从用户申请链接saas到用户对自己购买的功能模块的应用整个过程,用户用起saas看似简单快捷,但这个过程却需要saas平台架构默默完成的非常复杂的处理过程。通过对saas平台架构的了解,可以清晰的分化数据的处理过程,让用户也可以明白saas平台架构处理数据的优势。下面介绍:saas平台架构分为哪几部分。

     

    saas平台架构之呈现层:

    saas平台架构的呈现层可以使用的客户端可能都浏览器或本地客户端。如果是浏览器则需要Web界面技术、交互技术等技术(如:HTMl5技术、CSS3技术、Ajax技术等)的支持,如果是软件客户端则需要远程桌面技术、软件交互技术等技术支持。

    saas平台架构之调度层:

    saas平台架构的调度层体现分布式系统的特性之一。调度层首先负责识别并通过AAA认证每个用户请求,然后根据业务处理器的负载、业务特征进行合理的调度。通过应用这样的架构SaaS平台可以横向扩展。此外在存储、缓存等方面为了满足平台的横向扩展需求,调度层也必须具有良好的可扩展性。

    saas平台架构之业务层:

    saas平台架构的业务层负责接收调度层转发过来的请求,而且还要通过对接受到的请求执行真正的业务逻辑。一般来说业务逻辑的执行使用一台服务器就够了。因此业务层实际是由一排对等的服务器组成的,每台服务器都执行相同的业务逻辑。

    saas平台架构之数据层:

    saas平台架构的数据库集群用于处理存储关系性很强并且对事务性要求很高的业务数据,这类数据目前还要用传统的数据库集群技术来解决,saas平台架构的数据库集群主要是根据业务特征制定数据拆分方案。同时分布式数据库用于存放海量但关系性不强的数据(如:用户的操作日志等)。

    以上是对“Saas系统架构的思考,多租户Saas架构设计分析”的介绍,从saas平台架构处理数据可以看出saas平台的应用有很强的优势,如用户使用saas非常方便简单只要浏览器或本地客户端接口,saas平台处理数据要经过层层认证saas产品安全可靠,saas平台优化处理数据提高saas性能。

    多租户Saas系统架构还应该满足以下需求:

    编号需求描述
    1软件授权云平台付费授权机制,可按时间、功能、数量等进行付费授权
    2组织入驻允许组织主动申请加入平台
    3实名认证个人实名认证、组织实名认证
    4资质审核个人和组织的资质审核,如对获得的证书或荣誉进行审核
    5组织绑定个人账户绑定组织,与组织建立关联关系
    6组织解绑个人账户与组织进行解绑
    7账户注销个人账户注销,并销毁所有个人资料和档案
    8统一登录即 SSO
    9统一注册提供统一的用户注册页面

    部分资料整理自:

    http://www.ruanally.com
    ​​​​​​​http://qk.gam7.com
    ​​​​​​​​​​​​​​http://www.ruanbe.com

     

    展开全文
  • 云架构 saas

    2011-12-04 15:17:02
    saas sina void SMConnection::InitSMConnection(SMConnectionPoolInterface* connection_pool, SMInterface* sm_interface, EpollServer* epoll_server, int fd, std::string server_ip, std::string server_...
  • 对PaaS云平台的技术架构进行解析,首次纰漏中服SaaS超市
  • 云平台的层次架构

    万次阅读 2019-03-19 15:03:04
    云计算平台 ​ 云计算是一种资源的服务模式,该模式可以实现随时随地、便捷按需地从...​ 经典云计算架构包括IaaS ( Infrastructure as a Service,基础设施即服务)、PaaS ( Platform as a Service,平台即服务)、S...

    云计算平台

    ​ 云计算是一种资源的服务模式,该模式可以实现随时随地、便捷按需地从可配置计算资源共享池中获取所需的资源(如网络、服务器、存储、应用及服务),资源能够快速供应并释放,大大减少了资源管理工作开销。

    ​ 经典云计算架构包括IaaS ( Infrastructure as a Service,基础设施即服务)、PaaS ( Platform as a
    Service,平台即服务)、SaaS ( Software as a Service,软件即服务)三层服务,如图所示。

    • IaaS层为基础设施运维人员服务,提供计算、存储、网络及其他基础资源,云平台使用者可以在上面部署和运行包括操作系统和应用程序在内的任意软件,无需再为基础设施的管理而分心。
    • PaaS层为应用开发人员服务,提供支撑应用运行所需的软件运行时环境、相关工具与服务,如数据库服务、日志服务、监控服务等,让应用开发者可以专注于核心业务的开发。
    • SaaS层为一般用户服务,提供了一套完整可用的软件系统,让一般用户无需关注技术细节,只需通过浏览器、应用客户端等方式就能使用部署在云上的应用服务。​

    在这里插入图片描述

    ​ IaaS平台接管了所有的资源虚拟化工作,通过软件定义的方式来为云租户提供虚拟的计算、网络和存储资源。PaaS平台接管了所有的运行时环境和应用支撑工作,云平台的租户因此可以申请配额内的计算单元而不是虚拟机资源来运行自己的服务。当前不少经典PaaS平台已经采用容器作为计算单元,那些仍然依靠虚拟机提供应用运行时支持的PaaS平台在本书中将被称为IaaS+平台。云平台调度这些计算单元用以部署和运行租户的代码制品。在这两层的基础上,用户部署的应用和服务通过API响应的方式组成一系列集合服务于最终用户,这就是所谓SaaS。上述过程其实描述了一个清晰可见的层次结构,如图所示:

    在这里插入图片描述

    展开全文
  • Saas云服务管理系统架构

    千次阅读 2020-09-20 23:36:31
  • SAP云平台架构概述

    千次阅读 2018-08-29 12:09:39
    在我们开始SAP云平台架构之旅之前,让我们先看看SAP已经发布的一些其他云产品。这些云产品方案可以分为公有云和私有云两种。 SAP公有云解决方案见下图最右侧,比较著名的有SAP SuccessFactors和SAP Cloud for ...
  • PAGE 2 企业云平台架构与成本分析 一关于云 1 云产业分析 根据IDC的分析报告美国和中国云计算产业发展差异巨大美国以公有云为主SaaS最大IaaS最小而中国截然相反以私有云为主IaaS占了大约50%的份额 究其原因跟中美两...
  • 基于SaaS云平台模式的行业大数据挖掘应用.pdf
  • 本期邀请逸创云客服CTO刘铭带来SaaS云客服平台技术架构探讨的主题分享。欢迎加入CTO讲堂微信群与业界大咖零距离沟通。分享嘉宾: 逸创云客服CTO刘铭嘉宾简介: 刘铭,逸创云客服CTO,拥有多年的SaaS企业级产品研发...
  • 政采云成为首个通过中央网络安全审查的PaaS和SaaS云平台.pdf
  • 什么是saas系统 saas这个概念来源于...随着云计算时代的到来,云平台的概念逐渐深入人心,那是否可以将各种软件搬到云上,也就是建立一个集中式的由软件公司来维护的系统,其他公司需要使用系统,只需要到该系统注
  • 无缝整合第三方云存储(七牛云,阿里OSS)功能,支持存储分片上传 第三方登录(QQ,微信)整合 第三方支付(微信,支付宝)无缝整合,微信支持PC端扫码支付 部分页面展示 控制台 商品卡片 清单 编辑 系统配置 ...
  • 本期邀请容联七陌CTO张杨带来“SaaS云端语音通信架构详解”的主题分享。欢迎加入CTO讲堂微信群与业界大咖零距离沟通,1月14日本期讲堂报名方式拖至文末查看。分享嘉宾:容联七陌CTO 张杨嘉宾简介:张杨,现任容联七...
  • 物联网云平台盘点

    千次阅读 2020-02-25 10:28:23
    物联网云平台盘点 物联网云平台是一个专门为物联网定制的云平台,物联网与普通的互联网是不同的:物联网终端设备比普通互联网手机端,电脑端多出几个数量级;普通互联网对http,https协议访问相对单一,而物联网对https...
  • 云计算平台架构模型参考;云平台可提供的典型服务;角色定义;不同服务模式中的角色分工;云平台的服务组织与管理;整体概念参考模型;云服务提供者和使用者的范围;云服务管理业务支持服务提供/配置可再用/互操作;云平台...
  • 1. SaaS 是什么 从字面中理解SaaS的全称是Software as a service, 即软件即服务。 从服务模式来看,SaaS是一种软件授权和交付模式,以订阅模式代替传统授权模式,以集中式部署代替用户环境部署,通常被认为是按需...
  • 开源云计算平台架构介绍

    千次阅读 2013-09-08 21:04:14
    数据库、Perl、Python 和 PHP 的平台提供商提供支持,该平台能够根据不断变化的工作负荷自动扩展。云计算还可以是在互联网上使用存储并保护数据同时提供服务 [包括电子邮件、销售能力自动化 (Sales Force ...
  • 基于云平台的物联网架构和原理

    千次阅读 2020-03-01 23:43:20
    基于云平台的物联网架构和原理 云的服务架构 云计算是通过各种技术手段服务客户的一种方式,包括三层服务模式,即最底层的IaaS(基础设施即服务),中间层的PaaS(平台即服务),和顶层的SaaS(软件即服务)。 IaaS...
  • 对于Saas业内在用户统一身份认证及授权管理领域,主要关注 4 个方面(4A管理)): 集中账号管理(Account)、集中认证管理(Authentication)、集中授权管理(Authorization)和集中审计管理(Audit), 简称 4A ...
  • 云架构 IaaS(基础设施即服务 Infrastructure-as-a-service):运营商提供网络,存储等基础设施资源,用户租用主机,自己控制使用逻辑。 PaaS(平台即服务 Platform-as-a-service):供应商提供软件部署平台,...
  • 中国式SaaS技术架构

    万次阅读 2018-04-13 17:39:58
    架构层面做的强大,满足各个租户的自定义和系统集成。 中国呢,过去的3年已经证明面向中小企业、创业企业基本是不靠谱,所以从去年下半年,大家都纷纷杀入中大型企业、大型企业。这些中国企业,要么要求在他们的...
  • 基于SaaS的水利工程云平台服务模式研究.pdf
  • 构建SaaS云平台多租户架构,首要的问题要解决数据如何存储的问题,业界基本上已经形成共识,无非是以下三种方案: 1、共享数据库,共享表 在表中增加TenantId多租户的数据字段,以区分不同租户的数据。这种做法最大...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 20,930
精华内容 8,372
关键字:

saas云平台架构