自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 构建高性能的ASP.NET应用(17)

构建高性能的ASP.NET应用(17)http://weibo.com/p/23047910519139http://weibo.com/p/23047910519145http://weibo.com/p/23047910519149http://weibo.com/p/23047910519151http://weibo.com/p/23047910519147

2017-10-21 15:47:54 162

原创 构建高性能的ASP.NET应用(16)

http://weibo.com/p/23047910509232http://weibo.com/p/23047910509234http://weibo.com/p/23047910509236http://weibo.com/p/23047910509235http://weibo.com/p/23047910509237http://weibo.com/p/23

2017-10-21 15:46:47 194

原创 构建高性能的ASP.NET应用(15)

构建高性能的ASP.NET应用(15)http://weibo.com/p/23047910481756http://weibo.com/p/23047910481765http://weibo.com/p/23047910481764http://weibo.com/p/23047910481762http://weibo.com/p/23047910481772

2017-10-21 15:45:31 127

原创 构建高性能的ASP.NET应用(14)

构建高性能的ASP.NET应用(14)http://weibo.com/p/23047910538369http://weibo.com/p/23047910538368http://weibo.com/p/23047910538371http://weibo.com/p/23047910538370http://weibo.com/p/23047910538373

2017-10-21 15:44:29 130

原创 构建高性能的ASP.NET应用(13)

构建高性能的ASP.NET应用(13)http://weibo.com/p/23047910529164http://weibo.com/p/23047910529161http://weibo.com/p/23047910529166http://weibo.com/p/23047910529167http://weibo.com/p/23047910529170

2017-10-21 15:43:04 116

原创 构建高性能的ASP.NET应用(12)

http://weibo.com/p/23047910519892http://weibo.com/p/23047910519896http://weibo.com/p/23047910519899http://weibo.com/p/23047910519904http://weibo.com/p/23047910519906http://weibo.com/p/23

2017-10-21 15:40:40 97

原创 构建高性能的ASP.NET应用(11)

构建高性能的ASP.NET应用(11)http://weibo.com/p/23047910512778http://weibo.com/p/23047910512781http://weibo.com/p/23047910512783http://weibo.com/p/23047910512780http://weibo.com/p/23047910512779

2017-10-21 15:39:52 145

原创 构建高性能的ASP.NET应用(10)

构建高性能的ASP.NET应用(10)http://weibo.com/p/23047910502423http://weibo.com/p/23047910502429http://weibo.com/p/23047910502683http://weibo.com/p/23047910502697http://weibo.com/p/23047910502719

2017-10-21 15:38:19 305

原创 构建高性能的ASP.NET应用(8)

构建高性能的ASP.NET应用(8)http://weibo.com/p/23047910465858http://weibo.com/p/23047910465859http://weibo.com/p/23047910465862http://weibo.com/p/23047910465860http://weibo.com/p/23047910465863h

2017-10-21 15:36:26 349

原创 构建高性能的ASP.NET应用(8)

构建高性能的ASP.NET应用(8)http://weibo.com/p/23047910321877http://weibo.com/p/23047910321879http://weibo.com/p/23047910321878http://weibo.com/p/23047910321880http://weibo.com/p/23047910321881h

2017-10-21 15:34:44 155

转载 构建高性能的ASP.NET应用(五)-如何开始寻找性能瓶颈

既然我们讲的是如何构建高性能的ASP.NET站点应用,那么我们就开始涉及网站方面的东西。我们说过,我们会把关注点放在“调优”上面。在调优的时候,我们没有必要把事情搞的很复杂,要“由表及里。从整体到局部”。对于一个站点而言,我们最直接看到的就是网站的页面。换句话说,如果站点性能处理问题,肯定在页面上面会有反应。一个最显而易见的反应就是:页面加载很慢,半天看不到内容。此

2013-04-22 23:02:39 447

转载 构建高性能的ASP.NET应用(四)-性能的优化的目标

到现在为止已经说了很多与调优相关的思想,讲了很多的很多人认为“没有实质性作用东西”。为了说明我为什么要苦口婆心的要说这么多,我这里举一个我们自己的例子。如果我们现在要大家去写一个功能软件,大家认为首先应该去做什么?估计很多的人大致的知道了功能之后,就立刻跳下去趴在电脑前面急急忙忙的开始写代码。如果是这样,估计很难提高,写程序,做软件,代码只是最终的形式,其实最核心的就是写代

2013-04-22 23:00:24 560

转载 构建高性能的ASP.NET应用(三)-从监控出发,让一切用数据说话

在上两篇文章中,我们已经给大家分析学习技术的一些思想,那么从本篇开始,我们就进入性能分析的环节。这里又一点需要说明的就是,我们本系列的主题是“构建高性能”,但是我们会从“调优”开始,讲述如何一步步的分析性能瓶颈,然后优化,之所以按照这个方式来讲述的具体的原因,我们在第二篇文章中说过了。其实说到调优,已经不是什么“高深”的话题,但是确实只是少部分人可以做的,因为它对很多的

2013-04-22 22:59:00 681

转载 构建高性能的ASP.NET应用(二)-性能优化演绎法

在上一篇文章中我们已经强调了思考力的重要性,因为思考力就决定了后续的行动。很多的时候在构建一个高性能应用的时候,我们要知道如何去提高应用程序的性能,换句话说,我们要知道从哪些方面去提升性能,我们更要知道:如果出现了性能问题,我们如何定位,解决。大家可能会问:为什么本篇名称是“性能优化演绎法”。其实这是借用了破案推理中的一个概念,如果大家看过福尔摩斯,就知道我说的意思了。

2013-04-22 22:57:47 383

转载 构建高性能的ASP.NET应用(一)-先把思路搞对,然后对症下药

相信很多的朋友对“如何.NET中开发出高性能,高可用的应用”是非常感兴趣的,我和相信很多的朋友都想知道“是否真的可以在.NET平台下面构建高性能的应用”。一直以来,我在很多的项目中,都在实践和研究着高性能的问题;同时,也在外面为一些公司做高性能的架构设计和性能优化的事情。发现很多的技术人员对性能优化有着很多的误解,也看到了很多的朋友在一谈到性能问题时,“头脑一片空白”,不知道从哪里下手。

2013-04-22 22:56:21 407

转载 深入浅出分区表与分区索引之六:案例讲解(下)-完结篇

滑动窗口方案 当下一个月的数据(在本例中是 2004 年 10 月)可用时,将按特定的操作顺序使用现有的文件组、移入和移出数据。而在本销售方案中,目前 FG1 中的数据是 2002 年 10 月的数据。现在 2004 年 10 月的数据是可用的,因此,根据可用空间和存档要求,您有两个选择。记住,要将分区从表中快速移入或移出,移动操作必须只更改元数据。特别是,必须在要移入或移出的

2013-04-21 22:26:21 528

转载 深入浅出分区表与分区索引之五:案例讲解(中)

我们接着上一篇文章继续讲述。连接分区表 连接对齐的表时,SQL Server 2005 提供了通过一个或多个步骤连接表的选项,通过此选项,可以先连接各个分区,然后将子集加起来。不管如何连接分区,SQL Server 都会评估是否可以实现某种程度的分区消除。 分区消除 在下面的查询中,数据是从上一个方案中创建的 Orders 和 OrderDetails 表中查询

2013-04-21 22:23:12 457

转载 深入浅出分区表与分区索引之四:案例讲解(上)

如果朋友们已经阅读了与分区有关的概念、优点和代码示例,则可能已对此过程有了一个很好的理解;但是,对于每个步骤,都可以使用特定的设置和选项,而且在某些情况下,还必须满足各种条件。本节将帮助大家将这些内容融会贯通起来进行理解。 范围分区:销售数据 销售数据的使用方式经常发生变化。当前月份的数据是事务数据,而上一个月份的数据主要用于进行分析。分析通常针对月份、季度和/或年度范围的数据进行

2013-04-21 22:22:04 589

转载 深入浅出分区表与分区索引之四:创建分区表的步骤

创建分区表或索引的步骤概述现在,我们对分区表的价值有了一定的了解,后面详细介绍实现分区表的过程以及有助于完成此过程的功能。逻辑流程如下:确定是否应为对象分区 虽然分区可以带来众多的好处,但也增加了实现对象的管理费用和复杂性,这可能是得不偿失的。尤其是,你可能不需要为较小的表或目前满足性能和维护要求的表分区。前面提到的销售方案使用分区减轻了移动行和数据的负担,但在

2013-04-21 22:19:43 712

转载 深入浅出分区表与分区索引之三:分区重要概念和术语

要在 SQL Server 2005 中实现分区,必须了解一些新的概念、术语和语法。要理解这些新概念,首先我们看一下与创建和放置操作有关的表结构。在以前的版本中,表通常是一个物理和逻辑概念,但使用 SQL Server 2005 分区表和索引,您在存储表的方式和位置方面就有了多种选择。在 SQL Server 2005 中,可以使用以前版本中的相同语法创建表和索引,作为一个表结构放置到 D

2013-04-21 22:17:50 573

转载 深入浅出分区表与分区索引之二:分区的发展历史

分区的概念对 SQL Server 来说并不陌生。实际上,此产品的每个版本中都可以实现不同形式的分区。但是,由于没有为了帮助用户创建和维护分区架构而专门设计一些功能,因此分区一直是一个很繁琐的过程,没有得到充分的利用。而且,用户和开发人员对此架构存在误解(由于其数据库设计比较复杂),低估了它的优点。但是,由于概念中固有的重要性能改善,SQL Server 7.0 开始通过分区视图实现各种分区方

2013-04-21 22:16:31 535

转载 深入浅出分区表与分区索引之一:表分区介绍

前言很多的技术人员总是特别青睐“分区表”,每每谈及分区的时候,很多人都喜欢说这样的话语“表中的数据已经达到了千万级别,要搞分区…”。很多人以为:分区就一定可以提升性能;很多人以为:表中的记录上千万就必须得分区;很多人认为:分区是很好,是个神器,可以搞定很多的问题。于是很多技术人员就开始搞分区,花了很大的精力和很多的时间做分区。他们没有对分区对数据库的影响和维

2013-04-21 22:13:03 657

转载 SQL Server索引进阶第十五篇:索引的最佳实践

在本篇文章中,我们在学习了之前的知识之后,推荐14条指导方针。这14条指导方针可以帮助你更好的为数据库构建索引。    本篇文章的格式使用了由Addison Wesley出版社出版的中使用的格式。每一个最佳实践之前都使用了如下4个动词:要,考虑,避免、不要,分别代表如下意思:    要(Do):这个原则要坚决遵守    考虑(Consider):通常情况下都要遵循这个原则,但如果你

2013-04-19 21:54:20 473

转载 SQL Server索引进阶第十四篇:索引统计

在第十篇文章中我们详述了为什么索引需要叶子节点和非叶子节点,我原文是”然而,SQL Server并不知道什么是按字母表排序”,换句话说,SQL Server并不知道“Meyer, Helen”这个条目大概在索引的中间位置。    但是SQL Server需要知道有关索引中数据分布的情况;正如我们所知,查询的选择性是决定是否使用特定索引的关键。SQL Server存储索引键中的部分值,这部分

2013-04-19 21:53:25 837

转载 SQL Server索引进阶第十三篇:Insert,Update,Delete语句

INSERT    在第十一篇关于索引碎片的文章中,我们已经介绍了插入语句带来的影响,这里只是做一个总结性介绍,更详细的内容请翻回第十一篇。    无论是将数据插入堆表或是聚集索引表,表上的每一个索引都需要对应添加一个条目,当然过滤索引可能除外。插入时,SQL Server根据索引键从跟节点一路向下找到叶子节点,找到叶子节点之后,SQL Server首先查看页内空间是否足够,如果页内空

2013-04-19 21:52:13 996

转载 SQL Server索引进阶第十二篇:索引的创建,修改和删除

创建、修改和删除索引是属于索引维护部分中的内容,作为数据库对象,索引同样也用CREATE, ALTER和 DROP这三个DDL语句进行操作。但不同的是,对于索引来说这几个语句所能提供的功能要远远超过其名字所示,允许你创建、整理、删除甚至修改索引的metadata。    当你创建或是修改索引时,你可以设置一些参数,这些参数作为索引的一部分存储在系统表中,你可以通过sys.indexes

2013-04-19 21:50:59 918

转载 SQL Server索引进阶第十一篇:索引碎片分析与解决(中)-碎片发生原理深度剖析

在上一篇文章中,我们讲述了如何查看内部和外部的索引碎片,那么在本篇的文章中,我们将会从内部的底层来分析这些索引碎片是如何产生的,同时也给出处理碎片相对应的解决方案和一些最佳实践。在这里要说明一下,因为原英文版本在理解上面可能会有些困难,为了使得大家更好的理解原文,我们这里特意的加入了一些其他的内容,帮助朋友们进行一个过渡。因为索引碎片分析涉及到了页拆分的一些知识,页拆分发生在某个页

2013-04-19 21:49:54 754

转载 SQL Server索引进阶第十一篇:索引碎片分析与解决(上)

相关有关索引碎片的问题,大家应该是听过不少,也许也很多的朋友已经做了与之相关的工作。那我们今天就来看看这个问题。为了更好的说明这个问题,我们首先来普及一些背景知识。知识普及我们都知道,数据库中的每一个表要么是堆表,要么就是包含聚集索引的表,或者我们称之为有序表。如果表是一个堆表,那么在使用非聚集索引查询数据的时候,会使用书签查找去底层的数据表中去检索需要的数据,这个

2013-04-19 21:49:06 599

转载 SQL Server索引进阶第十篇:索引的内部结构

在前一系列文章中我们着重讲述了有关索引各种比较虚的概念,比如索引可以做什么,索引的逻辑结构,接下来是时候来讲述比较实在的东西了,也就是索引的物理结构。理解索引的内部结构对于整体的理解索引是至关重要的,只有理解了索引的内部结构以及SQL Server是如何维护索引的,你才能理解数据插入,删除,更新,索引的创建、修改、删除所带来的成本。 叶子层级和非叶子层级        所有的索

2013-04-19 21:47:54 495

转载 SQL Server索引进阶第九篇:解读执行计划

其实说到执行计划,相信已经不是什么神秘的东西了,可以说已经逐渐的成为了理解优化的基础知识。在本系列之前的很多的文章中,提到也是用过执行计划。所谓的执行计划,说的通俗一点就是查询语句的执行算法。通过查看执行计划,可以让我们看到很多的优化引擎的内部的信息,本篇的文章不可能对执行计划进行很详尽而全面的讲解,但是,朋友们可以把这个作为学习执行计划的一个入口,在以前,我们团队会给出更多的主题的文章和视频。

2013-04-19 21:47:04 543

转载 SQL Server索引进阶第八篇:唯一索引

唯一索引和约束唯一索引和其它索引本质上并没有什么不同,唯一不同的是唯一索引不允许索引键中存在相同的值。因为索引中每一个条目都与表中的行对应。唯一索引不允许重复值被插入索引也就保证了对应的行不允许被插入索引所在的表,这也是为什么唯一索引能够实现主键和候选键。为表声明主键或唯一约束时,SQL Server会自动创建与之对应的唯一索引。你可以在没有唯一约束的情况下创建唯一索引,但

2013-04-19 21:45:53 815

转载 SQL Server索引进阶第七篇:过滤的索引

在之前的文章中,我们已经介绍了很多有关索引的知识,不管是对聚集索引还是非聚集索引,有一点我们可以知道就是:在底层数据表中的每一行,在索引页中都有一个条目与之前对应,换句话说,就是,如果底层的数据有,假设10w条,那么在索引结构中必然会包含10w个引用指向这些数据行。在SQL Server 2008以后的版本中,引入了一个特殊的“过滤的索引”改变了 这种情况,而且也相应的带来

2013-04-19 21:39:40 520

转载 SQL Server索引进阶第六篇:书签

书签是什么    我们已经在前面提到过书签,但仅仅说了书签可以帮助SQL Server快速从非聚集索引条目导向到对应的行,本篇文章开始让我们对书签的探索更进一步.书签的内容实际上是取决于非聚集索引所在表是以堆还是聚集索引存放的。     不论表是堆结构还是段结构,可以确定的是,表中每一行都是某一页的第N行,这个某一页又是某个数

2013-04-19 21:38:35 438

转载 SQL Server索引进阶第五篇:索引包含列

包含列解析所谓的包含列就是包含在非聚集索引中,并且不是索引列中的列。或者说的更通俗一点就是:把一些底层数据表的数据列包含在非聚集索引的索引页中,而这些数据列又不是索引列,那么这些列就是包含列。同时,这些包含列并不会对索引中的条目有影响。好吧,为了使得问题稍微清楚一点,我用个简单的图示说明一下:我们可以用下面的语句在创建索引的时候加入包含列,代码如

2013-04-19 21:37:00 547

转载 SQL Server索引进阶第四篇:页和区

在上一篇文章中,我们比较了完全相同的查询语句分别在存在聚集索引和非聚集索引的环境下耗费的成本.我们以“逻辑读”作为衡量成本的主要标准。现在就让我们来解释逻辑读作为主要衡量标准的原因以及SQL Server在读取时究竟读取什么。  当你提交一个向SQL Server的请求查询时,SQL Server知道扫描整表一定可以满足这个需求。但如果使用索引进行数据查找的成本要低于整表扫描时,SQL

2013-04-19 21:35:52 439

转载 SQL Server索引进阶第三篇:聚集索引

在上一篇文章中,我们已经介绍了非聚集索引相关的内容。在本篇中,我们会介绍与聚集索引相关的话题。首先,我们综合之前的文章,再来思考一下数据库接收到请求之后(Select,Update,Delete,Insert),获取数据的几种方式:1.仅仅只访问非聚集索引而不访问底层的数据表来获取数据。这种情况只有当索引中包含了所有要请求的数据的时候才发生。2.通过在索引中

2013-04-19 21:34:41 563

转载 SQL Server索引进阶第二篇:深入非聚集索引

本系列文章的第一篇介绍了SQL Server的索引,尤其重点介绍了非聚集索引,在我们的第一个例子中展示了使用非聚集索引从一个表中取得一行数据所带来的潜在好处。在本篇文章中,我们继续研究非聚集索引,本篇文章所研究的内容就要比使用非聚集索引在单表中查询一行所带来的性能提升更深一步了。本系列文章将要列举的一些例子中介绍的部分理论是关于是非聚集索引的理论,并通过探究索引的内部结构来帮助更好的理解这

2013-04-19 21:33:08 423

转载 SQL Server索引进阶第一篇:索引介绍

索引设计是数据库设计中比较重要的一个环节,对数据库的性能其中至关重要的作用,但是索引的设计却又不是那么容易的事情,性能也不是那么轻易就获取到的,很多的技术人员因为不恰当的创建索引,最后使得其效果适得其反,可以说“成也索引,败也索引”。言归正传,其实索引就是数据库中的对象,这一点和数据库中的其他对象一样(如表,视图等),索引的作用就是使得SQL Server在寻找或者修改数据的时候所

2013-04-19 21:30:59 714

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除