Weitere ähnliche Inhalte
Ähnlich wie 新浪云计算公开课第二期:Sae平台的灵活应用(吕毅、魏世江) (20)
新浪云计算公开课第二期:Sae平台的灵活应用(吕毅、魏世江)
- 4. 目录
SAE 平台的灵活应用 — — 开发
开发前的准备工作
• 开发环境
• 扩展服务 与 第三方服务
SAE 服务与使用
• StdLib & API
• 服务的使用
• 服务的限制、配额
SAE应用调试
- 5. 开发
SAE 应用开发 — — 线上开发环境
Apa 2.2.x
che + PHP 5.3.x
J va 、 Python 已公测
a
- 6. 开发
SAE 应用开发 — — 与标准 LAM P 差异
传统 LAMP 环境 SAE 平台环境
本地 I O —> T mpFS / Wapper
htaccess —> Appconfig
网络 I O —> FetchURL
Mail —> Sa a
eM il()
- 7. 开发
SAE 应用开发 — — 本地开发环境
• windows 版
– 高仿真 SAE 线上环境
– 模拟支持几乎所有服务 (除了 Cron )
– 仅 20M
– 免安装
• Linux 版( 即将发布 )
- 10. 开发
SAE 应用开发 — — StdLib & API
• StdLib 封装各种服务
– saemysql.class.php
– saestorage.class.php
– sa ge.cla
eima ss.php
– saefetchurl.class.php
– ........
StdLib "文档中心 " -> "开发手册 " -> "StdLib 源代码 "
API 文档 http:// apidoc . sina pp . com /
a
- 11. 开发
SAE 应用开发 — — API 文档
API 文档 http:// apidoc . sina pp . com /
a
StdLib
封
装
的 样例
服
务
- 12. 开发
SAE 应用开发 — — API 文档
API 文档 http:// apidoc . sina pp . com /
a
接口提供的
方法列表
对每个方法的
详细描述
- 13. 开发
SAE 应用开发 — — 服务的使用
以 Sa ysql() 为例
eM
$Sa CD -> errno(); // 返回错误码
eAB
$Sa CD -> errmsg();
eAB // 返回错误信息
- 15. 开发
SAE 应用开发 — — 服务的限制
使用 SAE 平台前应当了解服务限制
PHP :
– 执行时间 30s
– 单 PHP 请求内存 64M
– POST 大小限制 1 0M
M ySQ L 慢查询条目数 1 0 条 /min
Stora :
ge
– 单一 D omain 2G
– 单一文件大小 800M
– D oma 个数5 个 /App & 1 0 个 /User
in
- 16. 开发
SAE 应用开发 — — 服务的配额
• 分钟配额
• 软配额(阀值)
• 容量配额
• 预算设置
容量配额
分钟配额
- 17. 目录
SAE 平台的灵活应用 — — 调试
• SAE 平台程序的调试
– 程序有问题了怎么办?
– 资源统计图表
– 服务自排查
– 管理记录
– SAE 日志 & SVN 日志
– 不得不说的潜规则
• SAE 平台程序的调优
– XHProf
- 23. 调试
SAE 应用调试 — — 开发规范 [ 重要 ]
1 、在开发环境时,应当做到:
– 不要使用 @ 来屏蔽错误信息
– error_ reporting= E_ ALL| E_ ST RI CT
– displa errors= On
y_
2 、会用 sa debug() 函数记录日志
e_
- 28. 目录
• SAE 环境比普通环境部署应用的优势
• 如何在 SAE 平台部署应用
• SAE 平台部署应用的注意事项
• SAE 应用维护及日常升级方法
• SAE 应用及服务的管理
• SAE 提供的运营工具
- 31. SAE 比传统应用部署的优势
传统 WEB 应用部署
购买服务器
联系 IDC 托管
装系统
配置网络及服务器软件
部署应用代码、调试
上线
- 32. SAE 比传统应用部署的优势
传统 WEB 应用部署
– 哥才写了一天的程序,部署了两天还没跑通啊
,有木有!!
– 哥费了很大工夫写好的应用,刚刚跑通,却发
现别人的已经上线了,悲剧… …
- 33. SAE 比传统应用部署的优势
传统 WEB 应用部署
– 哥辛辛苦苦写的应用刚刚部署好,那该死的服
务器挂鸟… … 偶滴神啊!
– 哥熬了两个通宵写的代码,一不小心删除了个
文件 #$^
–……
- 45. 如何在 SAE 平台部署应用 - SVN
这时已经可以访问我们的应用了
http://saedemo1 .sina pp.com
a
或者
https://saedemo1 .sina pp.com
a
- 46. 如何在 SAE 平台部署应用 - 应用版本
应用版本
注意:
2.应用版本不是 SVN 的 revision
3.应用默认版本访问时,域名加不加版本号都
行,非默认版本访问需要加上版本号
如何巧妙使用应用版本,稍后会跟大家分享
- 49. 注意事项
目录或文件名不允许含有以下字符: " * ? <
> | ,另外目录或文件名的开始与结束也不
允许有空格
只允许存在 1 0 个以内的版本,并且版本号
必须为正整数
- 52. 关于代码容量限制
从安全角度考虑,应用代码与数据应该隔离。
有很多文件上传漏洞都是由于数据与代码混
在一起引起的
而且把用户上传的文件直接保存在代码目录
下的做法不适用于分布式环境
SAE 专门为开发者提供了分布式文件存储
服务: Storage 服务
普通用户一个应用可以有 10G 存储空间
企业及用户可以获得无限的存储空间
- 53. SVN 仓库目录结构
SVN 仓库目录结构
https://svn.sinaapp.com/your_app_name/1/your_codes
如: 刚才的演示应用的 SVN 仓库地址为
https://svn.sinaapp.com/saedemo1/1/
应用二级域名 应用版本
只能是数字
以上 SVN 仓库对应的访问地址为: http://1.saedemo1.sinaapp.com/
- 57. 应用的维护与升级
SAE 的应用版本可以轻松解决代码升级问题
把
默
更
认
新
测 版
版
试 本
本
版 切
2
本 换
的
2 成
代
版
码
本
2
默认版本切换后,如果发现异常,马上把默认版本切换到
1, 实现秒速回退
- 59. 应用的维护与升级
与传统 WEB 应用升级相比
这种升级方式的优点:
1. 升级、回退速度极快,因升级引起的故障影响时间极短
2. 操作简单,基本无需 OP 参与
缺点:
升级、开发有可能破坏线上数据
解决方案:
新建个应用当作开发版本,实现数据隔离
在新应用完成开发和测试后先合并到线上应用的非默认版本,测
试通过后切换版本升级