【文档说明】WEB应用的架构与开发课件.ppt,共(44)页,2.192 MB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-3306.html
以下为本文档部分文字说明:
课程安排第一节:WEB开发技术简介第二节:WEB后端开发第三节:WEB前端开发第四节:WEB与数据库第五节:WEB应用架构概要一WEB开发技术简介什么是WEBWEB开发用到的前后端语言WEB开发常用的工具WEB运行环境WEB服务器静
态页面与动态页面的区别B/S与C/S的区别概要二WEB后端开发WEB后端开发语言简介(PHP/ASP/ASP.NET/JSP)WEB后端开发语言易学度、执行效率、使用率等比较常用后端开发框架介绍(以PHP为例)后端开
发重点技术讲解(MVC,ORM,模板引擎等等)缓存管理(memcached,redis等)后端开发新技术(node.js等)概要三WEB前端开发技术前端开发语言介绍(JavaScript/Htm
l/css/as)JAVASCRIPT框架介绍AJAX技术重点讲解浏览器兼容性搜索引擎优化(SEO)前端新技术介绍(HTML5/CSS3)概要四数据结构MySQL介绍MySQL大数据量优化方案存
储过程相关数据结构设计(拆分、读写分离、主从备份)概要五WEB应用架构分析分布式应用LVS负载均衡DNS轮询大型网站案例分析WEB开发技术简介什么是WEB?WEB的发展史浏览器的发展史WEB开发语言/开发工具/运行环境WEB服务器WEB程序执行流程WEB相关的名词解释什么
是WEB?由以下三部分组成:超文本标记语言(HTML)超文本传送协议(HTTP)统一资源定位技术(URL)WEB的发展浏览器与其内核主流浏览器:IE、Firefox、Chrome、Safari、Opera主流浏览器内核:Trident、Gec
ko、WebKit、Blink、Presto浏览器的发展史图解浏览器的发展史图解全球主流浏览器市场份额(数据来自TNW)国内主流浏览器市场份额(数据来自百度统计)国内主流浏览器市场份额(数据来自百度统计)国内主流浏览器市场份额(数据来自CNZZ)常用WEB程序开发语言
后端语言:PHPJSPASP.NET/ASP前端语言:JavaScriptVBScriptHTMLCSS常用WEB程序开发工具IDE:ZendStudio(PHP)Eclipse(JSP)VisualStudio(C#)辅助开发工具:
Dreamweaver各种文本编辑器WEB程序运行环境(以操作系统为主)Linux/Unix支持PHP、JSP,效率高ASP.NET/ASP目前还没有能运行在Linux服务器上的版本,估计未来也不会有Windows支持ASP.NET/ASP,效率高也支持PHP、JSP,但效
率一般WEB服务器的使用区域分布动、静态页面与B/S、C/SWEB程序执行流程网站相关的名词解释及相关知识分享AlexaPR值百度权重全球网站Alexa排行TOP101.Google.com2.
Facebook.com3.Youtube.com4.Yahoo.com5.Baidu.com6.Wikipedia.com7.QQ.com8.Linkedin.com9.Live.com10.Twitter.com中文网站Alexa排行TOP10WEB应用架构WE
B服务器的选择WEB常用的生产环境业务逻辑代码层架构设计服务器层架构设计常用WEB服务器优缺点Apache优点:比较成熟、稳定、功能强大、配置丰富、能想到的模块都有缺点:不适合静态文件多的站点、内存CPU占用很大、阻塞型请求处理方式Nginx优点:内存CPU
开销小、支持更高的并发数、FastCGI模式效率突出、配置简单缺点:rewrite支持不是很好、动态页面处理效率不如apache、可使用的模块较少Lighttpd优点:系统资源开销极小,IIS优点:可视化配置,除此好像没有其他优点了缺点:缺点太多,如果不是ASP.NET/AS
P的程序几乎不会考虑用常用WEB服务器功能对比WEB服务器市场份额WEB服务器的选择结论:Nginx比较适合做前端服务器Apache比较适合做后端处理服务器Lighttpd处理静态文件效率较高适合做
图片等静态文件服务器如果程序是ASP或ASP.NET那就只能选IIS+Windows平台了WEB常用的生产环境(以PHP为例)LAMPLinux+Apache+Mysql+PHPLNMPLinux+Nginx+Mysql+PHPLNMPALinux+Nginx+Mysql+P
HP+Apache其他WAMP/WNMP/WIMP业务逻辑代码层架构设计(以PHP为例)SSOTokenPHPRPC/RESTCli模式异步处理AJAXMVCORMRBAC业务模块化缓存生命周期自定义项目配置MVC设计模式M:ModelV:ViewC:
ControllerMVC是一个框架模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。MVC执行流程什么是ORM模型?ORM=Object/Rel
ationMappingORM是一种对象、关系映射的模型,在系统中作为中间件的形式存在,主要实现程序对象到关系数据库数据的映射。ORM模型的简单性简化了数据库查询过程。使用ORM查询工具,用户可以访问期望数据,而不必理解数据库的底层结构。为什么推荐ORM?OR
M简化了复杂的SQL代码ORM工作原理ORM结构代码:ORM.table(xxx).limit(10).field(xx,xx,xx,xx).where(xxx).select()ORM中间件DBHelperDBRBACRBAC:(Role-B
asedAccessControl)基于角色的访问控制模型RBAC认为权限授权实际上是Who\What\How的问题。在RBAC模型中,who\what\how构成了访问权限三元组,也就是“Who对What(Which)进行Ho
w的操作”。RBAC主要成员:用户,角色,用户组RBAC成员关系图用户组用户1用户2角色1角色2角色3SSOSSO英文全称SingleSignOn,单点登录。SSO是在多个应用系统中,用户只需要登录一次就可以访问所有相
互信任的应用系统。SSO的技术实现:。。。Token令牌验证Token作为隐藏域存在于Form内Form提交时后端程序验证Token避免表单重复提交Token在验证完成一次后失效PHPRPC协议PHPRPC是一个轻型的、安全的、跨网际的、跨语言的、跨平台
的、跨环境的、跨域的、支持复杂对象传输的、支持引用参数传递的、支持内容输出重定向的、支持分级错误处理的、支持会话的、面向服务的高性能远程过程调用协议。最重要的是可通过javascript直接跨域访问与SOAP比较。。。Cli命令行开发模式Cli=Co
mmandLineInterface的简称PHP的Cli模式支持多线程、可以实现定时任务、与GTK一起还可以开发桌面应用、Linux下开发shell脚本。Cli模式在我们产品上的使用。。。应用架构设计