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. python下载各大主流视频网站电影

    You-Get 是一个命令行工具, 用来下载各大视频网站的视频, 是我目前知道的命令行下载工具中最好的一个, 之前使用过 youtube-dl, 但是 youtube-dl 吧, 下载好的视频是分段的 ...

  2. JAVA 内部类 (二)

    一.为什么要使用内部类 为什么要使用内部类?在<Think in java>中有这样一句话:使用内部类最吸引人的原因是:每个内部类都能独立地继承一个(接口的)实现,所以无论外围类是否已经继 ...

  3. poll的使用

    #define POLL_FD_SIZE 1024 int doServicePoll(int listenFd) { struct sockaddr_in cliAddr; socklen_t le ...

  4. vuex 命名空间

    默认情况下,模块内部的action mutation getter是注册在全局命名空间的,如果希望你的模块具有更高的封装度和复用性,你可以通过添加namespaced:true的方式使其成为带命名空间 ...

  5. bzoj4589

    fwt 原理并不知道 nim游戏石子异或和=0后手赢 那么也就是求a[1]^a[2]^...^a[n]=0的方案数 这个和bzoj3992一样可以dp dp[i][j]表示前i个数异或和为j的方案数 ...

  6. 页面跳转问题,多次 push 到新的页面的问题的解决方法

    今日在做一个扫一扫的功能,突然发现多次点击了扫一扫的图片后,造成多次触发轻拍手势,就多次push到新的页面,本想在轻拍手势内对push的进行拦截,但是又觉得如果有好多的地方都要实现对该问题的解决岂不是 ...

  7. 使用IntelliJ IDEA配置Tomcat(入门)

    一.下载Tomcat 1.进入官网http://tomcat.apache.org/,选择download,下载所需Tomcat版本. 此处我们选择下载最新版本Tomcat 9. 注意有zip和exe ...

  8. 5、overflow、hover

    一.overflow 1.属性介绍 说明: 这个属性定义溢出元素内容区的内容会如何处理.如果值为 scroll,不论是否需要,用户代理都会提供一种滚动机制.因此,有可能即使元素框中可以放下所有内容也会 ...

  9. 微信小程序开发之页面wxml里面实现循环 wx:for

    js代码: Page({ data:{ upploadimagelist:{},    //上报图片列表 js数组 }}) 后台数据库保存的格式:{"imageList":[{&q ...

  10. c# 字符串大小写转换

    //小转大 string lower = "converted from lowercase"; Console.WriteLine(lower.ToUpper()); //大转小 ...