摘要:
答案是:用BT,也就是你我应该都很熟悉的BitTorrent。 对于网站经营者、创业者来说,扩展性的问题是在网站流量成长过程中势必会面对的问题,如何建立一个具有扩展性的架构(scalable architecture)便是在规划网站事业过程中不可或缺的专业知识。 如果服务本身的功能性符合用户需求,却因为架构、程序性能、数据库性能的问题导致服务增长出现瓶颈时,如何评估、分析网站性能瓶颈?厘清问题... 阅读全文
摘要:
HTTP 压缩是在Web服务器和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如gzip等压缩HTML、JavaScript或CSS文件。压缩的最大好处就是降低了网络传输的数据量,从而提高客户端浏览器的访问速度。当然,同时也会增加一点点服务器的负担。Gzip是比较常见的一种HTTP 压缩算法。 默认的IIS中是有GZIP.dll组件的,我们只要开启即可.操作步骤如下: 1.开启... 阅读全文
摘要:
本节讲述如何在开发应用的过程中使用缓存模块。包括配置缓存模块,在解决方案中引入缓存模块,选择后端存储。 配置缓存模块 添加应用代码 选择后端存储 所有的模块都包括程序集和一份源代码。如果你想使用源代码,在使用QuickStart和配置工具之前需要编译源代码。 1.添加配置信息 如果你是用数据访问模块作为后端存储的访问手段,在配置缓存模块之前需要先配置数据访问模块。 打开企业库安装目... 阅读全文
摘要:
7.1 设计模式概述重复遇到的典型问题,描述这些共同问题 和 解决这些问题的方案 就形成了所谓的 模式。7.1.1 设计模式的历史模式分为几个部分:特定的情景(Context),指模式在 何种情况下发生作用;动机(System of Force),指问题或预期的目标;解决方案(Solution),平衡各动机 或 解决所阐述问题的 构造或配置。每个模式描述了一个在某种特定情境下不断重复发生的问题,以... 阅读全文
摘要:
8.1 XML 概述可扩展标记语言(xml)是标准通用标记语言(SGML)的一个子集;可以用XML来开发一种标记语言,它的元素和属性多是为专门行业和产业而定义的。支持统一字符编码 UCS,使得 XML 成为了国际标准,XML 和 HTML 都支持 样式表(style sheet)。8.1.2 标签语法XML 元素的结构与 HTML基本相同,使用尖括号来界定标签,但二者相同点也就仅此而已。与 HTM... 阅读全文
摘要:
6.3 基于 UML 的软件开发过程6.3.1 开发过程概述UML 是独立于软件开发过程的,能够在几乎任何一种软件开发过程中使用。迭代的渐进式软件开发过程包含四个阶段:初启、细化、构件、部署。1、初启项目的发起人 确定项目的 主要目标 和 范围,初步的可行性分析 和 经济效益分析。2、细化细化阶段的开始 标志着 项目的正式确立。1.初步的需求分析,比较重要、比较有风险的用例。2.初步的高层设计,用... 阅读全文
摘要:
UML 建模与架构文档化方法种类的膨胀,极大地妨碍了用户的使用和交流。UML通过统一的表示法,使不同知识背景的 领域专家、系统分析、开发人员、用户 可以方便地交流。6.1.2 UML 体系结构演变UML 是用 元模型 描述的,元模型是 4层元模型体系结构模式中的一层,其他层次分别是 元-元模型、模型层、用户对象曾。其中元模型层 由 元-元模型层 导出。元模型的体系结构模式 可以用来定义 复杂模型 ... 阅读全文
摘要:
5.3 软件架构风格体系结构设计 核心目标是 重复的体系结构模式,体系结构级的 软件重用。5.3.1 软件架构风格概述一个体系结构 定义 一个词汇表 和 一组约束。词汇表中包含 构件和连接件类型约束指出 如何 组合起来。体系结构风格 反映了 共有的结构和语义特性,并指导如何 组织成一个完整的系统。5.3.2 经典软件体系结构风格每个构件都有一组输入和输出,数据输入构件,经过内部处理,然后产生数据输... 阅读全文
摘要:
第五章 软件架构设计Software Architecture 简称 SA5.1.2 软件架构设计与生命周期1、需求分析阶段需求 和 SA设计 面临的是不同的对象:一个是问题空间;另一个是解空间。保持二者的可跟踪性和转换。2、设计阶段1.传统的设计概念只包括 构件,随着研究的深入,构件间的 互联机制 逐渐独立出来,成为与构件同等级别的实体,称为 连接子。2.体系结构描述语言(Architectur... 阅读全文
摘要:
4.2 需求管理需求 最终文档 经过评审批准后,则定义了需求基线 Baseline;构筑了 功能需求 和 非功能需求 的一个 约定Agreement。约定是需求开发和需求管理之间的桥梁。需求管理是一个 对系统 需求变更、了解和控制 的过程,初始需求导出的同时 就启动了需求管理规划。4.2.1 需求管理原则过程能力成熟度模型 CMM,指导软件过程改进,5个成熟级别,6个关键过程域KPA。一旦需求 文... 阅读全文
摘要:
4.1 软件开发方法4.1.1 软件开发生命周期传统的软件生命期 是指软件产品 从形成概念(构思)开始,经过定义、开发、使用、维护、废弃,的全过程。可以把软件生命期划分为 软件定义、软件开发、软件运行与维护,三个阶段。1、软件定义时期1.问题定义,目标系统“是什么”,系统的定位以及范围。2.可行性研究,技术可行性、经济可行性、操作可行性、社会可行性。3.需求分析,确定软件系... 阅读全文
摘要:
1975年,意大利学者 朗高(G·Longo)提出:信息是反映事物的形式、关系相差别的东西,它包含在事物的差异之中,而不在事物本身。目前,关于信息 比较科学和统一的定义是:信息是对客观事物 变化和特征 的反映,是客观事物之间 互相作用和联系 的表征,是客观事物经过 感知或认知后 的再现。3.1.2 信息的特征1、客观性:反映了事物的 运动状态和方式,既事实性。2、普遍性:信息无所不在... 阅读全文
摘要:
1.1.1 系统架构师的概念现代信息系统“架构”三要素:构件、模式、规划;规划是架构的基石,也是这三个贡献中最重要的。架构本质上存在两个层次:概念层,物理层。1.2.1 系统架构师的定义负责 理解、管理 并最终确认和评估 非功能性系统需求,给出开发规范,搭建系统实现的核心架构,对整个软件架构、关键构建、接口 进行总体设计 并澄清关键技术细节。主要着眼于系统的“技... 阅读全文
摘要:
《计算机网络基础知识》计算机系统 由 硬件和软件组成,软件通常分为 系统软件和应用软件。系统软件支持应用软件的运行,为用户开发应用软件提供平台,用户可以使用它,但不能随意修改它。常用的系统软件有 操作系统、语言处理程序、连接程序、诊断程序、数据库 等。应用软件指 计算机用户利用 软硬件资源 为某一专门的应用目的而开发的软件。2.1 操作系统基础知识操作系统 Operating System,是计算... 阅读全文
摘要:
企业库的缓存模块允许开发者在应用中包含本地缓存。它支持内存缓存,内存中缓存的数据,可以用数据库或者其他分离的存储作为后端数据存储。缓存模块可以不经修改而直接使用,它提供了获取数据、添加数据到缓存、清空缓存中的数据所需的全部方法。同样支持可配置的缓存过期和清除策略。 在构建企业级分布式应用的时候,架构师和开发者将会面对许多挑战。缓存可以帮助他们克服下面的一些挑战: 性能,缓存通过存储和数据消费... 阅读全文
摘要:
一、Provider 在.NET frameword中每一个provider都是一段代码的中间人,通过它,你的应用可以连接到一个服务或者是数据源,可以获取或者是修改服务和数据源的数据。在企业库中包含很多的providers。另外,你也可以创建自己的provider,在你的应用中满足特殊的需求。 一个provider type定义了和一个模块相关的功能的接口,一个provider是一个prov... 阅读全文
摘要:
在企业库的很多模块中都实现了很多常用的功能,他们同样对企业库以外的应用代码也很有用。例如,数据序列化和访问配置信息。为了提供可用性,这些代码都放在企业库核心的Common程序集中。 另外,所有的模块都被设计为最小的依赖,以便他们可以单独使用。除了Unity,所有的企业库都依赖于企业库的核心库,核心库包含了下面的子系统: Common程序集 模块的仪表盘,模块的运行情况 配置信息的帮助类,... 阅读全文
摘要:
在设计整个企业库的过程中,使用了一系列的最佳实践。下面列出一些里面的最佳实践: 在核心库中使用了Common模块 使用了统一的命名约定和统一的版本 在设计的过程中使用单元测试 在所有模块中包含基础结构 在企业库的模块中包含了下面的模式,当然还包括其他模式: 工厂模式,一个创建型模式,使用指定的类型创建另外一个对象。 插件模式,这种模式扩展了类的行为。在特殊的环境中创建一个子类,只包含... 阅读全文
摘要:
企业库包含很多的程序集,除去Unity模块,企业库的每个程序集的名称都以“Microsoft.Practices.EnterpriseLibrary”开头。另外,其他的模块都可能会依赖企业库的Common程序集。使用一个模块的应用也可能会需要其他模块的程序集,例如使用Caching模块,有可能会需要Data Access模块的程序集。 在应用中使用企业库,可以用下面的两种... 阅读全文
摘要:
3.3通过配置指定和Unity的整合 另外一种方法是在配置源中指定配置的需要,你可以指定下面的一条或者多条: 你可以在Unity配置中指定想要的BlockExtensions 你可以在Unity配置中的type配置节指定如何创建企业库对象,指定类型映射的关系,例如,当使用resolve方法的时候返回一个SqlDatabase,或者是返回指定的注入Database对象。也可以指定生命周期和其他... 阅读全文