Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
运维系统开发与Rails 3页面开发实践
Search
fsword
November 08, 2011
Education
340
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
运维系统开发与Rails 3页面开发实践
Rubyconf China 2011
fsword
November 08, 2011
More Decks by fsword
See All by fsword
持续集成和云
fsword
0
160
Other Decks in Education
See All in Education
20260908_ターゲットとスコープを決める発表法
masakiokuda
1
140
2026年度秋学期 統計学 第1回 イントロダクション ー 統計的なものの見方・考え方について (2026. 9. 29)
akiraasano
PRO
0
260
Padlet opetuksessa
matleenalaakso
12
16k
Science Tokyo University for International Research Excellence scheme_April 2026
sciencetokyo
PRO
0
520
Carbohydrates: Classification, Structure & Chemical Properties
pawan_pharm
0
330
中小規模私大の教学IRを支えるデータマネジメント ― データ基盤構築の取り組みと実務の現在地 ―
terazawa
0
230
DRONEGEOGRAFÍA: INNOVACIÓN DIDÁCTICA Y FOTOGRAMETRÍA 3D PARA LA COHESIÓN TERRITORIAL Y LA CIUDADANÍA ACTIVA
juanmartin2026
0
40k
Dronegeografía innovación didáctica y fotogrametría 3D para la enseñanza de la geografía local y la ciudadaniía activa
juanmartin2026
0
40k
AIでアウトプットできる時代だからこそ、自分の言葉で考えることの大切さ / What's Left to Think, When AI Can Write?
masakiokuda
1
360
2026年度秋学期 統計学 講義の進め方と成績評価について (2026. 9. 28)
akiraasano
PRO
0
240
DRUGS ACTING ON THE PERIPHERAL NERVOUS SYSTEM
pawan_pharm
0
160
2026年度秋学期 統計学 第3回 クロス集計と感度・特異度,データの可視化 (2026. 10. 13)
akiraasano
PRO
0
260
Featured
See All Featured
Rails Girls Zürich Keynote
gr2m
96
14k
HDC tutorial
michielstock
2
960
[RailsConf 2023] Rails as a piece of cake
palkan
59
7.1k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
500
Heart Work Chapter 1 - Part 1
lfama
PRO
10
37k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
520
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
Google's AI Overviews - The New Search
badams
0
1.6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Mobile First: as difficult as doing things right
swwweet
225
10k
Transcript
运维系统开发与Rails 3页面开发实践 ——李福(李建业) f fs sw wo or rd d@
@s si in na a f fs sw wo or rd dl le ee e@ @t tw wi it tt te er r h ht tt tp p: :/ // /f fs sw wo or rd d. .i it te ey ye e. .c co om m
摘要 • 介绍一下运维系统项目 – 定位 – 理念 – 进展 •
rails中的web页面开发实践 – MVC与REST – AJAX和单页面应用
运维系统介绍
运维系统 • 背景与生态环境 – Alibaba运维体系 •资源 •配置 •监控 •……
运维系统 • 背景与生态环境 – 在淘宝 •基础数据资料库(CMDB) •基础信息采集 •软件包依赖 •系统上线部署
运维系统 • 面对的挑战 – 互联网应用规模化以后的瓶颈 •模式:Google or Facebook ? –
复杂的技术环境:语言、平台、网络拓扑 – 重复建设 vs 系统整合 – 运维中的监控问题:监多控少 – 部署自动化——敏捷的最后一公里
运维系统 • 做什么 – 通用运维系统 – 多机并行操作 – 支持用户审计 •
不做什么 – 人员、组织管理 – 工作流 – 日志、告警采集 – 配置管理 – 热部署
运维系统 • 设计理念 – 兼容现有运维体系 – 利用现有成熟的技术 – 基于组合的方式推进系统演化
系统关系
运维系统 • 系统职责(类比OS) – 相同点 •完成任务 •改变自身状态 •反馈结果 – 区别
•基于网络 •多机同时操作 •跨域,环境复杂 •任务单一
运维系统 • 运维基础设施 – ssh 通道 ( ssh-copy-id)+sudo – 命令脚本
( bash、python、ruby...... )
功能模块
运维系统 • 技术要点 – 网络可达性:大型互联网应用跨越多个机房, 出于多方面考虑,互相之间可能有隔离 – 系统并发能力:运维风暴对机群管理提出要求 – 任务复杂性带来了脚本复杂性
运维系统 • 解决办法 – 网络可达性 – 设计专门的agent进行shell指令推送下发, agent与控制中心、与被管机器之间均为主 动交互 –
系统并发能力 – agent使用erlang进行指令发送,异步请 求,并行处理 – 任务复杂性 – 提供原子指令和操作两层抽象,运维任务基 于操作来进行
运维系统 • 系统对比 – Puppet •抽象为资源 •核心是配置管理,不适合进行实时运维操作 •认证复杂
运维系统 • 系统对比 – Sagent •功能较完善 •结构较复杂 来源链接
运维系统 • 我们的收获 – 如何应对摸索中的需求 •快速、可用的原型 •行进中开火 •团队小型化 – 技术?流程?
•Guard + Rspec + Spork = TC翻倍 •jruby + trinidad:更接近真实环境 •去extjs •代码量锐减(2000+ -> 400+) •页面功能点评估单位:天 -> 小时
运维系统 • 模型演化
目前的进展 • 第一阶段 – 建立基本模型 – 基础架构实现功能闭环 – 部分用户试用,分析现实需求 •
第二阶段 – 固化常用运维操作 – 和相关系统进行集成 • 第三阶段 – 应用托管标准化 – 弹性部署
我们还在路上... 尚未完成
web页面开发实践
理解MVC • 通常的理解 – 模型负责业务相关的逻辑 – 视图负责展现层逻辑
理解MVC • [通过一个图,反映model 1架构所需要解决 的问题,分析其优缺点]
MVC:model 1 到 model 2 • [分析web开发中,为了适应新的环境对 model 1进行的改造]
MVP
REST:URL Driven
其它问题 • Query in view:本质是 n+1查询
Ajax
MVC:model 1 到 model 2