PaaS基础学习(1)

PaaS学习笔记目录

PaaS基础学习(1)

在PaaS上开发Web、移动应用(2)

PaaS优点与限制(3)

1. 基础单元,一个基础单元就是所研究实体的最小的不可分割的单元。

2. PaaS与IaaS对比

  • PaaS平台即服务,IaaS基础设施即服务。
  • 对于IaaS(基础设施即服务)来说,基础单元就是资源。
    • 这里的资源是指服务器、磁盘、网络以及IP地址。
    • 所以的工具都以资源为中心,所以的文档都是关于资源的
  • 对于PaaS(平台即服务)来说,基础单元就是应用。就是一个系统。
    • 平台即服务供应商面对的是代码和服务。

3. 资产托管

  • 当用户上传文件时,无论是简历照片、电影、附件,还是其他任何形式的文件,都属于资产。
  • 常用的资产存储方式有两种:
    • 大字段(大二进制对象)存储,也被称为对象存储。
    • Blob存储才有键值存储并通过应用编程接口访问,例如亚马逊的S3。
    • 一旦采用对象存储机制,API接口会给上传资产返回一个URL,这时用户可以存储URL链接。
    • 对象存储的好处是上传的所有文件,被自动复制到不同服务器上。
    • 文件存储。文件存储是创投开发过程中常用的存储系统。

4. 缓存

  • 缓存是影响网页架构可扩展性的一个重要部分,而且形式多样。

    • 一种比较原始但却很高效的缓存方式是获取服务器端产生的动态内容,以文件形式下载都磁盘,以后就从磁盘上调取该文件。
    • 还有一种缓存技术是讲产生的代码存放在RAM或NoSQL数据库缓存中。

5. 异步处理

平台即服务供应商经常会杀掉长时间运行的、面向Web的进场。所以异步处理很重要。

  • 创建异步过程

    伪代码
开始的时候:
for each task in tasks
do
//可能要持续一会
process the task
end
然后:
for each task in tasks
do
//只需要一毫秒
queue task for processing
end
处理代码类似这样:
loop
do
grab task from queue
process the task
end
  • 后台任务的高级调度技术

    • Python的Celery(http://wwww.celeryproject.org),它提供基于分布式消息传递的异步任务队列,而且支持特定时刻的调度任务。
    • Celery采用RabbitMQ、Redis、Beanstalk、MongoDB或CouchDB作为后端,支撑它的服务。

PaaS基础学习(1)的更多相关文章

  1. 零基础学习openstack【完整中级篇】及openstack资源汇总

    1.你是如何学习openstack的?2.你对openstack的组件了解多少?3.你认为openstack该如何学习? 一直想写关于openstack的方面的内容,今天终于整理完成.算是完成一桩心事 ...

  2. salesforce 零基础学习(五十二)Trigger使用篇(二)

    第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...

  3. 如何从零基础学习VR

    转载请声明转载地址:http://www.cnblogs.com/Rodolfo/,违者必究. 近期很多搞技术的朋友问我,如何步入VR的圈子?如何从零基础系统性的学习VR技术? 本人将于2017年1月 ...

  4. IOS基础学习-2: UIButton

    IOS基础学习-2: UIButton   UIButton是一个标准的UIControl控件,UIKit提供了一组控件:UISwitch开关.UIButton按钮.UISegmentedContro ...

  5. HTML5零基础学习Web前端需要知道哪些?

    HTML零基础学习Web前端网页制作,首先是要掌握一些常用标签的使用和他们的各个属性,常用的标签我总结了一下有以下这些: html:页面的根元素. head:页面的头部标签,是所有头部元素的容器. b ...

  6. python入门到精通[三]:基础学习(2)

    摘要:Python基础学习:列表.元组.字典.函数.序列化.正则.模块. 上一节学习了字符串.流程控制.文件及目录操作,这节介绍下列表.元组.字典.函数.序列化.正则.模块. 1.列表 python中 ...

  7. python入门到精通[二]:基础学习(1)

    摘要:Python基础学习: 注释.字符串操作.用户交互.流程控制.导入模块.文件操作.目录操作. 上一节讲了分别在windows下和linux下的环境配置,这节以linux为例学习基本语法.代码部分 ...

  8. CSS零基础学习笔记.

    酸菜记 之 CSS的零基础. 这篇是我自己从零基础学习CSS的笔记加理解总结归纳的,如有不对的地方,请留言指教, 学前了解: CSS中字母是不分大小写的; CSS文件可以使用在各种程序文件中(如:PH ...

  9. Yaf零基础学习总结5-Yaf类的自动加载

    Yaf零基础学习总结5-Yaf类的自动加载 框架的一个重要功能就是类的自动加载了,在第一个demo的时候我们就约定自己的项目的目录结构,框架就基于这个目录结构来自动加载需要的类文件. Yaf在自启动的 ...

随机推荐

  1. 数论 N是完全平方数 充分必要条件 N有奇数个约数

    N是完全平方数 <----> N有奇数个约数 设:N = n*n 充分性: 1.N=1时,N的约数为1,为奇数 2.N>1时,1.....n......N,其中 1, n, N为N的 ...

  2. hibernate VS mybatis

    1: 一般来说,业务逻辑比较简单,集增删改查就可以满足需求,建议使用hibernate,而复杂的业务逻辑,尤其是多表关联查询,建议使用mybatis. 2: hibernate有更好的二级缓存机制,可 ...

  3. ORM框架SQLAlchemy学习

    一.基本介绍 以下介绍来自维基百科,自由的百科全书. SQLAlchemy是Python编程语言下的一款开源软件.提供了SQL工具包及对象关系映射(ORM)工具,使用MIT许可证发行. SQLAlch ...

  4. Java字节码指令收集大全

    Java字节码指令大全 常量入栈指令 指令码 操作码(助记符) 操作数 描述(栈指操作数栈) 0x01 aconst_null null值入栈. 0x02 iconst_m1 -1(int)值入栈. ...

  5. myeclipse 去掉spring特性支持

    myeclipse10.0 去掉spring支持  手工修改工程目录下的.project文件中相关的内容 删除<nature>com.genuitec.eclipse.springfram ...

  6. Swift异常处理

    在Swift里,抛出的异常必须继承Error这个协议.那么这个协议是什么呢? 按住command再点击Error我们可以看到, public protocol Error { } extension ...

  7. CSS Unicode字体

    在 CSS 中设置字体名称,直接写中文是可以的.但是在文件编码(GB2312.UTF-8 等)不匹配时会产生乱码的错误.xp 系统不支持 类似微软雅黑的中文. 方案一: 你可以使用英文来替代. 比如 ...

  8. 妙用Update Select

    update PipeLine set PipeLine_Key = PipeLine.RegionCode + '|' + PipeLine.S_Point + '|' + PipeLine.E_P ...

  9. 51nod1276(xjb)

    题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1276 题意:中文题诶- 思路:xjb 通过画图可以发现对于当前 ...

  10. 洛谷P3723 [AH2017/HNOI2017]礼物(FFT)

    传送门 首先,两个数同时增加自然数值相当于只有其中一个数增加(此增加量可以小于0) 我们令$x$为当前的增加量,${a},{b}$分别为旋转后的两个数列,那么$$ans=\sum_{i=1}^n(a_ ...