Upload
wei-sun
View
1.260
Download
5
Embed Size (px)
DESCRIPTION
Citation preview
WEB开发简述
William
Web development
Always beta version
Browser/Server
无需客户端部署升级
跨平台跨硬件
响应速度非常重要(优化)
用户界面自成一派
与桌面开发不同之处
安全问题极为重要,重中之重!
无状态(session/cookie) 在线购物提交然后返回
不可访问本地资源 (Why?)
稍显简陋的界面设计
兼容不同浏览器 IE/ FireFox/ Chrome/ Safari (Webkit) 遨游,腾讯搜狐浏览器是什么?
搜索的重要性
开源方案更有竞争力
不间断运行,备份方案
新角色
前端工程师 (HTML, Javascript, CSS)
前端测试 (Web test framework)
美工 (Photoshop)
服务器开发 (Linux, C/C++, Python)
运营维护 (网络管理, Linux, Perl, Python)
数据库维护调优 (Mysql, PostgreSQL)
Web 2.0新势力
Twitter – 10亿美金
Facebook – 337亿美金
Foursquare
Youtube Hulu 豆瓣 淘宝 团购网
平台战略,开放API,用户产生内容(UGC),第三方应用
微软在哪里?Live家族
新趋势
网上办公
Web office, Web mail, Web WorkFlow
云计算
Amazon, Google Appengine, Microsoft Azure
桌面与Web战略的结合,小软件占领桌面
腾讯软件、搜狐输入法、腾讯搜狐浏览器、Chrome浏览器、淘宝旺旺
Web development in RA (?)
Internal usage
Hardware embedded function
From C/S to B/S
学习建议
First step, HTML/CSS/JavaScript
Second, C#, PHP, Python, Ruby
数据库 Application
Scripts
Web Server
HTML files
Client browser
Common Gateway Interface (CGI)
http://en.wikipedia.org/wiki/Common_Gateway_Interface
PHP-CGI, (PHP-CLI)
Python WSGI
Ruby Rack
ISAPI
静态内容开发演示
Apache + HTML + CSS + JavaScript
http://apcndaeforum
Web开发从零开始
Apache安装配置
Php简单配置
Mysql安装配置
为何选择动态语言
无需编译,热部署
开发快速,易上手
动态语言与静态语言结合
缺点?
企业成功案例
运行效率
技术支持
动态内容开发演示
Php
Hello world
phpinfo()
Python
Web.py
Web开发架构
LAMP (Linux Apache Mysql Php)
Nginx PostgreSQL Python/Ruby
优先选择成熟的产品
Discuz BBS,Wordpress blog
基于成熟的架构开发
Rails Sinatra Django Web.py Zend
安全问题
客户端安全
木马、病毒、钓鱼
服务器端安全
XSS、DDOS
商业部署维护
FTP上传,实时更新热部署
租用机房服务器
自己维护机房服务器(很少见)
安全备份策略
(2008年)豆瓣网站的情况如下:
一台Web服务器运行Lighttpd,每天处理2500万个request,
峰值每秒处理1000个request; 一台应用服务器运行
Python,每天处理500万PV; 数据库服务器运行MySQL。
JavaEye网站的服务器运行情况:
一台Web+应用服务器,一台数据库服务器,Web服务器
Lighttpd,每天430万个request,峰值每秒处理150个
request,平均每秒处理50个request;
Web服务器运行Ruby1.8.6 Rails1.2.6,每天处理70万动
态请求;数据库服务器运行MySQL,CPU负载不高,在5%-
30%之间波动。
http://robbin.javaeye.com/blog/157104
C10K problem
Keyword
High performance server programming
www.kegel.com/c10k.html
http://en.wikipedia.org/wiki/C10k_problem
Nginx
http://www.tornadoweb.org/
Node.js
Python于Web 2.0网站的应用 - QCon Beijing 2010 http://www.slideshare.net/hongqn/qcon2010-3881323
手机之家新系统介绍及架构分享 http://www.slideshare.net/Fenng/ss-1218991?type=powerpoint
http://heroku.com/how/architecture
负载平衡优化
http://en.wikipedia.org/wiki/C10k_problem
Memcache
NoSQL
http://en.wikipedia.org/wiki/Load_balancing_(computing)
优化策略
前端优化
Javascript压缩 图片压缩 内容Cache
服务器优化
Nginx
数据库优化
NoSQL
All in one installer
http://bitnami.org/stack/wampstack
http://bitnami.org/stack/rubystack
http://bitnami.org/stack/djangostack