SlideShare ist ein Scribd-Unternehmen logo
1 von 25
Downloaden Sie, um offline zu lesen
William

WEB开发简述
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
HTML files




 Client    Web
browser   Server

                   Application
                                 数据库
                     Scripts
 Common Gateway Interface (CGI)
   http://en.wikipedia.org/wiki/Common_Gateway_I
    nterface
 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
参考

 http://www.howtoforge.com
 《实战Nginx - 取代Apache的高性能Web服
  务器》

Weitere ähnliche Inhalte

Was ist angesagt?

Appcan平台介绍
Appcan平台介绍Appcan平台介绍
Appcan平台介绍36Kr.com
 
GlassFish特性介绍
GlassFish特性介绍GlassFish特性介绍
GlassFish特性介绍Jim Jiang
 
Net 6 的 blazor 開發新視界
Net 6 的 blazor 開發新視界Net 6 的 blazor 開發新視界
Net 6 的 blazor 開發新視界Gelis Wu
 
Kiss开发平台简介
Kiss开发平台简介Kiss开发平台简介
Kiss开发平台简介cecepig
 
前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScript前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScriptGelis Wu
 
美团点评技术沙龙13-酒旅Hybrid架构体系及演进
美团点评技术沙龙13-酒旅Hybrid架构体系及演进美团点评技术沙龙13-酒旅Hybrid架构体系及演进
美团点评技术沙龙13-酒旅Hybrid架构体系及演进美团点评技术团队
 
Web爬虫那点事
Web爬虫那点事Web爬虫那点事
Web爬虫那点事Yihua Huang
 
大規模微服務導入 - #1, 從零開始的系統架構設計概觀
大規模微服務導入 - #1, 從零開始的系統架構設計概觀大規模微服務導入 - #1, 從零開始的系統架構設計概觀
大規模微服務導入 - #1, 從零開始的系統架構設計概觀Andrew Wu
 
與大師對談: 轉移到微服務架構必經之路 ~ 系統與資料庫重構
與大師對談: 轉移到微服務架構必經之路~ 系統與資料庫重構與大師對談: 轉移到微服務架構必經之路~ 系統與資料庫重構
與大師對談: 轉移到微服務架構必經之路 ~ 系統與資料庫重構Andrew Wu
 
20170310 gandi-正確使用word press
20170310 gandi-正確使用word press20170310 gandi-正確使用word press
20170310 gandi-正確使用word pressJack Wu
 
Presta shop 1.6 详细安装指南
Presta shop 1.6 详细安装指南Presta shop 1.6 详细安装指南
Presta shop 1.6 详细安装指南YUCHENG HU
 
应用开发一般工作流程和注意
应用开发一般工作流程和注意应用开发一般工作流程和注意
应用开发一般工作流程和注意cucued
 
領域驅動設計 (Domain Driven Design)
領域驅動設計 (Domain Driven Design)領域驅動設計 (Domain Driven Design)
領域驅動設計 (Domain Driven Design)Jeff Chu
 
Windows 與 Azure 的容器旅程 @ Ignite Mini 2016
Windows 與 Azure 的容器旅程 @ Ignite Mini 2016Windows 與 Azure 的容器旅程 @ Ignite Mini 2016
Windows 與 Azure 的容器旅程 @ Ignite Mini 2016Jeff Chu
 

Was ist angesagt? (15)

Appcan平台介绍
Appcan平台介绍Appcan平台介绍
Appcan平台介绍
 
GlassFish特性介绍
GlassFish特性介绍GlassFish特性介绍
GlassFish特性介绍
 
Net 6 的 blazor 開發新視界
Net 6 的 blazor 開發新視界Net 6 的 blazor 開發新視界
Net 6 的 blazor 開發新視界
 
Kiss开发平台简介
Kiss开发平台简介Kiss开发平台简介
Kiss开发平台简介
 
前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScript前端大型系統的基石 TypeScript
前端大型系統的基石 TypeScript
 
美团点评技术沙龙13-酒旅Hybrid架构体系及演进
美团点评技术沙龙13-酒旅Hybrid架构体系及演进美团点评技术沙龙13-酒旅Hybrid架构体系及演进
美团点评技术沙龙13-酒旅Hybrid架构体系及演进
 
Web爬虫那点事
Web爬虫那点事Web爬虫那点事
Web爬虫那点事
 
大規模微服務導入 - #1, 從零開始的系統架構設計概觀
大規模微服務導入 - #1, 從零開始的系統架構設計概觀大規模微服務導入 - #1, 從零開始的系統架構設計概觀
大規模微服務導入 - #1, 從零開始的系統架構設計概觀
 
與大師對談: 轉移到微服務架構必經之路 ~ 系統與資料庫重構
與大師對談: 轉移到微服務架構必經之路~ 系統與資料庫重構與大師對談: 轉移到微服務架構必經之路~ 系統與資料庫重構
與大師對談: 轉移到微服務架構必經之路 ~ 系統與資料庫重構
 
OSMF 介紹
OSMF 介紹OSMF 介紹
OSMF 介紹
 
20170310 gandi-正確使用word press
20170310 gandi-正確使用word press20170310 gandi-正確使用word press
20170310 gandi-正確使用word press
 
Presta shop 1.6 详细安装指南
Presta shop 1.6 详细安装指南Presta shop 1.6 详细安装指南
Presta shop 1.6 详细安装指南
 
应用开发一般工作流程和注意
应用开发一般工作流程和注意应用开发一般工作流程和注意
应用开发一般工作流程和注意
 
領域驅動設計 (Domain Driven Design)
領域驅動設計 (Domain Driven Design)領域驅動設計 (Domain Driven Design)
領域驅動設計 (Domain Driven Design)
 
Windows 與 Azure 的容器旅程 @ Ignite Mini 2016
Windows 與 Azure 的容器旅程 @ Ignite Mini 2016Windows 與 Azure 的容器旅程 @ Ignite Mini 2016
Windows 與 Azure 的容器旅程 @ Ignite Mini 2016
 

Ähnlich wie Web development overview

PHP & AppServ
PHP & AppServPHP & AppServ
PHP & AppServHt Wang
 
PHP WEB 应用组织与结构
PHP WEB 应用组织与结构PHP WEB 应用组织与结构
PHP WEB 应用组织与结构HonestQiao
 
China PHP Technology Summit 2011 ppt
China PHP Technology Summit 2011 pptChina PHP Technology Summit 2011 ppt
China PHP Technology Summit 2011 pptXinchen Hui
 
01 产品基础知识培训
01 产品基础知识培训01 产品基础知识培训
01 产品基础知识培训jackieit
 
前端杂谈
前端杂谈前端杂谈
前端杂谈salinet
 
Web开发基础
Web开发基础Web开发基础
Web开发基础dynaturtle
 
Web development introduced history and future
Web development introduced history and futureWeb development introduced history and future
Web development introduced history and futurejarryli
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型Jackson Tian
 
Island arch
Island archIsland arch
Island archfaryang
 
IDF2013大会分享——《使用新浪移动云开发全平台应用》
IDF2013大会分享——《使用新浪移动云开发全平台应用》IDF2013大会分享——《使用新浪移动云开发全平台应用》
IDF2013大会分享——《使用新浪移动云开发全平台应用》easychen
 
非常靠谱 Html 5
非常靠谱 Html 5 非常靠谱 Html 5
非常靠谱 Html 5 Tony Deng
 
20141212 html5 及微軟跨平台佈局 long
20141212 html5 及微軟跨平台佈局   long20141212 html5 及微軟跨平台佈局   long
20141212 html5 及微軟跨平台佈局 longMeng-Ru (Raymond) Tsai
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型裕波 周
 
单页面开发遇到的一些问题
单页面开发遇到的一些问题单页面开发遇到的一些问题
单页面开发遇到的一些问题Zhi Zhong
 
前端开发的那些事儿
前端开发的那些事儿前端开发的那些事儿
前端开发的那些事儿jndream
 
Non-MVC Web Framework
Non-MVC Web FrameworkNon-MVC Web Framework
Non-MVC Web FrameworkFred Chien
 
富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用luolonghao
 
Zh120226techparty velocity2011-review
Zh120226techparty velocity2011-reviewZh120226techparty velocity2011-review
Zh120226techparty velocity2011-reviewZoom Quiet
 
Beyond rails server
Beyond rails serverBeyond rails server
Beyond rails serverMichael Chen
 

Ähnlich wie Web development overview (20)

PHP & AppServ
PHP & AppServPHP & AppServ
PHP & AppServ
 
PHP WEB 应用组织与结构
PHP WEB 应用组织与结构PHP WEB 应用组织与结构
PHP WEB 应用组织与结构
 
China PHP Technology Summit 2011 ppt
China PHP Technology Summit 2011 pptChina PHP Technology Summit 2011 ppt
China PHP Technology Summit 2011 ppt
 
01 产品基础知识培训
01 产品基础知识培训01 产品基础知识培训
01 产品基础知识培训
 
前端杂谈
前端杂谈前端杂谈
前端杂谈
 
Web开发基础
Web开发基础Web开发基础
Web开发基础
 
Web development introduced history and future
Web development introduced history and futureWeb development introduced history and future
Web development introduced history and future
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
 
Island arch
Island archIsland arch
Island arch
 
IDF2013大会分享——《使用新浪移动云开发全平台应用》
IDF2013大会分享——《使用新浪移动云开发全平台应用》IDF2013大会分享——《使用新浪移动云开发全平台应用》
IDF2013大会分享——《使用新浪移动云开发全平台应用》
 
非常靠谱 Html 5
非常靠谱 Html 5 非常靠谱 Html 5
非常靠谱 Html 5
 
20141212 html5 及微軟跨平台佈局 long
20141212 html5 及微軟跨平台佈局   long20141212 html5 及微軟跨平台佈局   long
20141212 html5 及微軟跨平台佈局 long
 
Jobforcompal
JobforcompalJobforcompal
Jobforcompal
 
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
从无阻塞并行脚本加载(Lab.js)到浏览器消息模型
 
单页面开发遇到的一些问题
单页面开发遇到的一些问题单页面开发遇到的一些问题
单页面开发遇到的一些问题
 
前端开发的那些事儿
前端开发的那些事儿前端开发的那些事儿
前端开发的那些事儿
 
Non-MVC Web Framework
Non-MVC Web FrameworkNon-MVC Web Framework
Non-MVC Web Framework
 
富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用富文本编辑器在互联网上的应用
富文本编辑器在互联网上的应用
 
Zh120226techparty velocity2011-review
Zh120226techparty velocity2011-reviewZh120226techparty velocity2011-review
Zh120226techparty velocity2011-review
 
Beyond rails server
Beyond rails serverBeyond rails server
Beyond rails server
 

Mehr von Wei Sun

Using google appengine_final2
Using google appengine_final2Using google appengine_final2
Using google appengine_final2Wei Sun
 
Using google appengine_final
Using google appengine_finalUsing google appengine_final
Using google appengine_finalWei Sun
 
Using google appengine_1027
Using google appengine_1027Using google appengine_1027
Using google appengine_1027Wei Sun
 
Using google appengine (2)
Using google appengine (2)Using google appengine (2)
Using google appengine (2)Wei Sun
 
Python with dot net and vs2010
Python with dot net and vs2010Python with dot net and vs2010
Python with dot net and vs2010Wei Sun
 
Gc algorithm inside_dot_net
Gc algorithm inside_dot_netGc algorithm inside_dot_net
Gc algorithm inside_dot_netWei Sun
 
Code review
Code reviewCode review
Code reviewWei Sun
 
Windbg dot net_clr2
Windbg dot net_clr2Windbg dot net_clr2
Windbg dot net_clr2Wei Sun
 
The best way to learn java script
The best way to learn java scriptThe best way to learn java script
The best way to learn java scriptWei Sun
 
Asynchronous in dot net4
Asynchronous in dot net4Asynchronous in dot net4
Asynchronous in dot net4Wei Sun
 
Code quality
Code qualityCode quality
Code qualityWei Sun
 
Visual studio 11 developer preview
Visual studio 11 developer previewVisual studio 11 developer preview
Visual studio 11 developer previewWei Sun
 
Using google appengine
Using google appengineUsing google appengine
Using google appengineWei Sun
 
老友记
老友记老友记
老友记Wei Sun
 
Lua gc代码
Lua gc代码Lua gc代码
Lua gc代码Wei Sun
 
Windbg dot net_clr2
Windbg dot net_clr2Windbg dot net_clr2
Windbg dot net_clr2Wei Sun
 
Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Wei Sun
 
Code rule
Code ruleCode rule
Code ruleWei Sun
 
DotNet Introduction
DotNet IntroductionDotNet Introduction
DotNet IntroductionWei Sun
 

Mehr von Wei Sun (20)

Using google appengine_final2
Using google appengine_final2Using google appengine_final2
Using google appengine_final2
 
Using google appengine_final
Using google appengine_finalUsing google appengine_final
Using google appengine_final
 
Using google appengine_1027
Using google appengine_1027Using google appengine_1027
Using google appengine_1027
 
Using google appengine (2)
Using google appengine (2)Using google appengine (2)
Using google appengine (2)
 
Python with dot net and vs2010
Python with dot net and vs2010Python with dot net and vs2010
Python with dot net and vs2010
 
Gc algorithm inside_dot_net
Gc algorithm inside_dot_netGc algorithm inside_dot_net
Gc algorithm inside_dot_net
 
Code review
Code reviewCode review
Code review
 
Windbg dot net_clr2
Windbg dot net_clr2Windbg dot net_clr2
Windbg dot net_clr2
 
The best way to learn java script
The best way to learn java scriptThe best way to learn java script
The best way to learn java script
 
Asynchronous in dot net4
Asynchronous in dot net4Asynchronous in dot net4
Asynchronous in dot net4
 
Code quality
Code qualityCode quality
Code quality
 
Visual studio 11 developer preview
Visual studio 11 developer previewVisual studio 11 developer preview
Visual studio 11 developer preview
 
Using google appengine
Using google appengineUsing google appengine
Using google appengine
 
老友记
老友记老友记
老友记
 
Lua gc代码
Lua gc代码Lua gc代码
Lua gc代码
 
Windbg dot net_clr2
Windbg dot net_clr2Windbg dot net_clr2
Windbg dot net_clr2
 
Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02
 
Code rule
Code ruleCode rule
Code rule
 
Lua
LuaLua
Lua
 
DotNet Introduction
DotNet IntroductionDotNet Introduction
DotNet Introduction
 

Web development overview