一、云计算基础设施即服务云计算演进:分布式处理、并行处理、网格计算、公共计算、软件及服务、云计算。
云计算:是一种客户通过互联网获取软件应用、开发平台及IT基础设施(计算、存储和网络)等服务的商业模式。
商业模式解析:硬件软件化、软件运营化、运营服务化、服务规模化。
云计算主要组成:Iaas、Paas、Saas。
各类终端。
云计算的技术解构:何谓IaaS:狭义:以计算、存储和网络为代表的IT基础设施资源管理方案(私有云)广义:可以通过互联网随时、按需获取IT基础设施资源的服务交付方式(公有云)管理目标:Iaas是用5%-10%的性能损失换取资源调度灵活性、从而提高IT集群整体服务能力。
Iaas实现:Iaas的技术架构:虚拟化技术:KVM Xen VMware虚拟化管理软件:openNebula/OpenStack/虚拟化管理增强软件:ezCloud Service用户及管理员操作界面:ezDesktopIaas的功能构成:物理层:虚拟化层:虚拟化管理层:服务运营层:Iaas集群物理架构:集中式存储:集中式刀片服务器+集中式存储混合式存储:普通服务器,一台服务器承担计算、存储等。
分布式存储:Iaas的安全架构:数据安全:数据隔离、多重备份、加密存储、快照热备、数据监控。
系统安全:访问控制、多重认证、病毒防护、自助管控、漏洞监控网络安全:网络隔离、路由策略、入侵监测、全网监控终端安全:便携系统、本地隔离、文件保护、云同步。
建设思路的转变:流程型系统-------》非流程型系统共享的弹性平台:跨区域协同互动、跨系统资源共享、多系统云端运算、多终端访问。
粗放式、离散化---》集约化、整体化绿色节能:负载节能:集群高可控、虚拟热迁移。
虚拟化节能:一机多用、弹性负载。
成本可控:满意度提升:服务台、服务水平、连续性、可用性、服务能力。
二、软件架构导论软件架构的作用:1软件系统= 结构(构成)+ 功能(需求)2架构的重要性:降低系统的复杂性、提高代码重要性、提高系统的维护性、扩展型。
3软件重构看软件架构的作用:软件重构类型:增加需求;需求变更;需求完善(功能重构)修改bug ;性能优化;集成扩展(结构重构)重构的代价:掌握代码的功能;掌握代码的技术;掌握代码的设计结构;编写代码花时间;调整代码结构时间。
软件架构组成:组成:0层架构:当前系统与外部系统的关系1层架构:当前系统分解成多个子系统,且之间关系2层架构:子系统中,模块与模块之间的关系3层架构:模块中,类与类之间的关系软件架构表达办法:描述软件架构:顶层架构:业务架构—》应用架构----》技术架构----》数据架构软件应用架构:4+1模型(1逻辑架构、类关系)(2物理架构、存储位置)(3部署架构、物理部署架构)(4进程架构)(5用例架构)软件架构的软件工程方法论:PSP:个体开发规范(时间、质量控制;)TSP:小组方法论(共同目标、共同过程、协同工作)需求抽象、设计抽象、编码抽象CMMI:公司级别(过程管理、项目管理、支援、工程过程)PT:软件技术OOSE三、软件架构理论:1.MVC架构Model包含描述问题的数据View向用户显示但钱模型的状态Control相应用户请求,如何响应。
2.C/s架构以DB为中心的程序,c/s起源。
Vb、vc(客户端)-----》数据库。
View/Control (客户端)----→model(数据端)View (客户端)-----------》Control/Model(数据库端)存储过程实现ControlView/Control(客户端)-----→ Control/Model(数据库端)中间件实现Control3.B/S架构Java Apple可以嵌入浏览器。
浏览器---》view—http→Control中间件----》Model ---》DB浏览器---》view—http Adaptor→Control中间件----》Model ---》DB4.ORmappingSql是关系数据库操作的必须手段。
对象与关系数据库映射。
Model ---》DBUtil(连接、转化、执行语句)—》DBModel –》Table Mapping类---》DBUtil(连接、转化、执行语句)—》DBModel –》Object Mapping类---》DBUtil(连接、转化、执行语句)—》DBModel –》Object Mapping类ORM引擎---》DBUtil(连接、转化、执行语句)—》DB5.IOC依赖注入、层次依赖关系解耦。
不在程序中直接调用,利用配置文件。
6.AOP面向切面汇编—结构化---C++面向对象-----AOP分层解耦,提高系统复杂性;利用配置文件,配合方法的前置处理和后置处理方法。
7.Reuse软件重用重用对软件架构的影响。
提高劳动效率;重用、降低工作量;技术级别的重用(代码重用----》组件重用---》项目模板、平台重用)--》业务级别重用---》产品级别重用-----》过程级别重用人员重用---过程---成果---技术重用8.应用集成软件系统之间的集成,是体系架构不能回避的问题。
1.平台无关性,异构也能集成,2.(RMI,RPC平台有关性)webService http协议3.SOA基于服务的架构4.MessageQueue ,消息技术;MQ,支持点对点,异步。
5.ESB,SOA架构应用出现的中间件。
权限认证、数据转换。
9.中间件中间件是通用服务,这些服务具有标准的程序结构和协议。
一个系统依赖另一个系统,被叫为中间件。
RPC (remote procedure Call protocol )远程过程调用协议四、HTML5与移动互联网开发1概览:移动互联网的前景:社会:地区、人种、宗教、种族、国家的界限在变小。
人口:大量的用户行业:新的行业会被催生,行业垂直移动会产生人口:中国有11亿手机用户,全球45亿手机用户设备:平板电脑、智能手机爆炸式增长网速:网速的提高会带来巨大的技术潜力和商业机会存储:云存储让移动互联网更加可靠。
就业人数、市场规模、手机操作系统移动互联网的世界的生态链:移动互联网的常见开发语言:IOS:objective C , C++Android: java ,C++Windows phone 8 : C++ ,Net相关语言(C#)移动互联网开发的问题和特点:问题:兼容、屏幕、性能、成本特点:数据大、并发高、更新快成本:学习成本、时间成本、设备成本小结:移动开发四多:系统多、版本多、屏幕多、设备多。
移动互联网开发有三少:成熟的支付渠道少、有丰富经验开发人员少、成熟的应用平台少。
移动互联网的基石不是内容,是安全、信用体系。
2技术细节:HTML5是什么它是一套标准:需要浏览器支持。
它是一种模式:HTML5毫无疑问的开创了一个时代。
它产生的web app的技术开发模式使浏览器具备强大的表现能力、事务处理能力、计算能力。
浏览器即操作系统的理念也与之相呼应,而火狐浏览器更是果断退出了基于浏览器的火狐手机。
它是一个集合:HTML5涵盖了大量的API、添加了新的标签、引入了语义网络的概念。
传统网页设计师、开发人员都面临着只是结构调整的问题。
网页不再是设计、切图、挂载数据等流程,大量的交互效果、视觉效果都需要加入。
行业内把岗位称为:前端开发。
HTML5广义概念:CSS3 、HTML5新标记、HTML5 API、WebGL、SVG 、ECMA Script标准。
HTML5的特点:越来越像应用程序;跨平台、彻底解决开发难题,因为基于浏览器;代码开源可见,完全可以共享一切知识,用户放心。
表现更为强劲,可支持与CSS3;API工作模式;交互CSS3动画,可支持编辑逻辑;特有伪类定义与引用。
标签:3思考和分析:复习与回顾:HTML5构成:Dom +css3+ apiCSS3主要有哪些内容:字处理形状处理圆形处理动画处理新增选择器排版处理(盒子模型)CSS3样式----字处理:CSS3样式---动画动画本质是:空间、时间、形状、颜色、大小等的组合。
三种动画形式:Transform (变换) Transition(转换)Animation(动画)CSS3样式----排版处理(盒子模型)子元素横行排列box-orient:horizontal;子元素纵向排列box-orient:horizontal;反向分布box-direction:reverse子元素具体分布box-ordinal-groupCSS3样式—选择器CSS3完全基于浏览器渲染。
兼容性问题。
4 API :与标签语言不一样的地方----HTML5的全新内容图形渲染canvas 并行计算webWorker 管道通信webSocket本地存储IocalStorage 3D处理webGL 文档通信postMessage富样式表CSS3 硬件控制图形渲染canvasCanvas: 图形渲染、标签。
Canvas的坐标系:为像素为基本单位,坐标以左上角0,0为原点。
Canvas画线:Canvas画图:Canvas字处理:无法选择、无法事件。
Canvas图形:Canvas动画:注意事项:图片不宜过大;旋转易出锯齿;资源要提前预载;双缓冲是可以提高性能的。
Canvas是没有颜色的,是透明的。
是可以堆叠的。
通信与计算APINotification:对比与alert 和phshnofitcation的区别。
依赖javascript ,依赖窗口生命周期。
postMessage:用于窗口间的通信,文档间通信的用途和好处。
IE8就有了。
SSE(Server side event):SSE只支持单向的从服务期到浏览器端的连接方式,用户无法从浏览器端向服务器端发送数据。
SSE规范允许在浏览器建立一个事件源对象,发起一个HTTP连接,通过该连接来获取从服务期推送的信息。
格式:data: hello world。
Chanel Message管道消息传送:允许用户在一个事件上,以对立的两个管道进行通信,这是本机一对多的通信。
主要是两个端口的数据交换,非常类似于通信路由和交换节点。
webSocket特征:帧通信;双向;长连接。
http1.1. ;IE10开始支持;手机上使用不一定支持。
socketIOwebWroker:web Worker 是进程级的API。
执行时分配独立的内存单元;父子进行相互依赖;以树形方式生存在系统中;是比线程更加接近底层的操作,更加具有计算潜力。
异步执行。
页面是Worker的容器,一旦离开页面,无法生存。
Worker类不能在js文件中存在,所以在子进程中不能再建子进程。
Web Worker 的实现需要两个文件,并且必须在相同的源下才可以完成。