摘要:
1.一个线程里面不要开启开启多个套接字同时去监听客户端消息,最好一个套接字开启一个线程,这样在客户端发送消息时丢包率较少,性能也极大的提升。 2.需要更新控件、I/O操作等时,最好加以比较是否需要更新,重复的更新会影响程序的性能。 阅读全文
摘要:
原文地址:http://www.cnblogs.com/fish-li/archive/2011/12/18/2292037.html阅读目录开始config文件 - 自定义配置节点config文件 - Propertyconfig文件 - Elementconfig文件 - CDATAconfig文件 - Collectionconfig文件 - 读与写读写 .net framework中已经定义的节点xml配置文件xml配置文件 - CDATAxml文件读写注意事项配置参数的建议保存方式config文件与XML文件的差别今天谈谈在.net中读写config文件的各种方法。在这篇博客中,我将 阅读全文
摘要:
原文地址:http://www.cnblogs.com/aji88/archive/2010/10/21/1857296.html第一个例子,我将告诉你如何从当前日期去这个月的最后一天。请注意:这个例子以及这篇文章中的其他例子都将只使用DATEDIFF和DATEADD函数来计算我们想要的日期。每一个例子都将通过计算但前的时间间隔,然后进行加减来得到想要计算的日期。 这是计算一个月第一天的SQL 脚本: SELECTDATEADD(mm, DATEDIFF(mm,0,getdate()), 0) 我们把这个语句分开来看看它是如何工作的。最核心的函数是getdate(),大部分人都知道这个是返回当 阅读全文
摘要:
写有效率的SQL查询(I)大型系统的生产环境,一般情况下,我们评价一条查询是否有效率,更多的是关注逻辑IO(至于为什么,回头补一篇)。我们常说,“要建彪悍的索引”、“要写高效的SQL”,其实最终目的就是在相同结果集情况下,尽可能减少逻辑IO。1.1where条件的列上都得有统计信息。没统计信息SQLServer就无法估算不同查询计划开销优劣,而只能采用最稳妥的Scan(不管是table scan还是clustered index scan)。一般情况下我们不会犯这种错误——where条件里不使用非索引列是个常识。索引上的统计信息是无法删除的。1.2尽量不使用不等于(!=)或者NOT逻辑运算符。 阅读全文
摘要:
原文地址:http://www.cnblogs.com/kivenhou/archive/2010/10/06/1844856.html具体要注意的:1.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没有null值,然后这样查询:select id from t where num=02.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。优化器将无法通过索引来确定将要命 阅读全文
摘要:
接下来我们说说“涵盖索引”和include索引。所谓的涵盖索引,就是传统方式在多个列上创建的索引。“inlude索引”是SQL2k5提供的新功能,允许添加非键列到非聚集索引的叶节点上。创建涵盖索引:createindexix_tb_col1_col2ontb(col1,col2)创建include索引:createindexix_tb_col1ontb(col1)include(col2,col3,col4)涵盖索引和include索引的区别在于,涵盖索引的所有列都是键列,索引行的物理存储顺序就是col1、col2的顺序,这也是误区6之所以称为误区的原因。涵盖索引可以是聚集索引,也可以是非聚集 阅读全文
摘要:
declare @tmpTbl Table(uid int)declare @userid intbegin begin TRAN LUOFUXIAN INSERT INTO @tmpTbl(uid) SELECT userid FROM tbl_news declare tmpCursor CURSOR FOR SELECT uid FROM @tmpTbl OPEN tmpCursor FETCH NEXT FROM tmpCursor into @userid while @@FETCH_... 阅读全文
摘要:
SQL函数实例: returns 和returnCREATE FUNCTION [dbo].[lfx_Len]( @char VARCHAR(2000)--变量)RETURNS intBEGIN RETURN len(@char+'<LUOFUXIAN>')END 阅读全文
摘要:
在9i上执行的操作 查询test表中记录select * from test;删除test表中记录delete from test;获得过去的会话exec dbms_flashback.disable;查询出3分钟前这个test表的情况select * from test as of timesta 阅读全文
摘要:
1、记录到XML变量declare @cxml xmlset @cxml=(select * from zd_storeP for XML RAW('store'),ROOT('stores'))select @cxml2、XML到记录集方法一:用OPENXML 90000条记录速度测试,22s,16s,16sdeclare @cxml xml,@nxml intset @cxml=(select * from zd_storeP for XML RAW('store'),ROOT('stores')) --大概1sselect 阅读全文
摘要:
c#Dbtype与SQLdbtype一一对应关系,提高效率关键,正确对应,使用SQL Server监视时,可看到省城后的数据类型和数据库的数据类型一一对应,不会造成不必要数据转换的开销,也不会造成索引失效等问题AnsiString:VarCharBinary:VarBinaryByte:TinyIntBoolean:BitCurrency:MoneyDate:DateTimeDateTime:DateTimeDecimal:DecimalDouble:FloatGuid:UniqueIdentifierInt16:SmallIntInt32:IntInt64:BigIntObject:Vari 阅读全文
摘要:
原文标题:浅谈.NET下的多线程和并行计算(八)Winform多线程编程基础上链接:http://www.cnblogs.com/lovecindywang/archive/2010/01/06/1640267.html首先我们创建一个Winform的应用程序,在上面添加一个多行文本框和一个按钮控件,按钮的事件如下:Thread.Sleep(1000);StringBuilder sb = new StringBuilder();for (int i = 0; i < 10000; i++) sb.Append("test");string s = sb.ToStri 阅读全文
摘要:
原文标题:WinForm窗体之间交互的一些方法链接:http://www.cnblogs.com/xuefeng1982/archive/2010/06/11/1756620.html实际上过去我也写过类似的主题,这里把各种方法总结一下,内容的确基础了一些,所以这篇文章是写给刚刚学习C#的同行们的,希望对大家有些帮助吧!很抱歉,这篇文章没有诡异的bug来勾起大家的兴趣,但是下篇文章我会努力写些有趣的主题的!在窗体间传递数据的方法比较多:1,在子窗体中自定义一个构造函数,参数类型是主窗体,当要显示子窗体的时候,就用这个构造函数来实例化子窗体,然后把this指针传进去,说起来太抽象了,我大概一写大 阅读全文
摘要:
在9i上执行的操作查询test表中记录select * from test;删除test表中记录delete from test;获得过去的会话exec dbms_flashback.disable;查询出3分钟前这个test表的情况select * from test as of timestamp(systimestamp - interval '3' minute );将查出的记录插入到误删除数据的表中insert into test select * from test as of timestamp(systimestamp - interval '30 阅读全文
摘要:
高性能WEB开发 - HTTP服务器篇高性能WEB开发 - 图片篇高性能web开发 - 如何加载JS,JS应该放在什么位置?高性能WEB开发 - 为什么要减少请求数,如何减少请求数!高性能WEB开发(5) - 减少请求,响应的数据量高性能WEB开发(6) - web性能测试工具推荐高性能WEB开发(7) - JS、CSS的合并、压缩、缓存管理高性能WEB开发(8) - 页面呈现、重绘、回流。总结:把所有静态资源(JS,CSS,image,swf)提到单独的服务器,用更加快速的HTTP服务器(Apache,nginx)。静态图片采用PNG格式,并使用fireworks处理图片,使用Smush.i 阅读全文
摘要:
Nicholas为您讲解如何提升JavaScript操作DOM的效率!在Web开发中,JavaScript的一个很重要的作用就是对DOM进行操作,可 你知道么?对DOM的操作是非常昂贵的,因为这会导致浏览器执行回流操作,而执行了过多的回流操作,你就会发现自己的网站变得越来越慢了,我们应该尽可能 的减少DOM操作。本文是这个系列的最后一篇,给出了一些指导性原则,比如在什么时候应该对DOM可以进行什么样的操作等。【原文】Nicholas C. Zakas-Speed up your JavaScript, Part 4【译文】明达在过去的几周中,我为大家介绍了几种可以加快JavaScript脚本运 阅读全文
摘要:
原文转载:http://www.cnblogs.com/candle806/archive/2011/04/01/2002266.html最近在给网站首页做压力测试之后,发现页面的性能需要通过不断优化才能达到一个最佳的效果,关于网页内容优化方面,下面有十条策略:尽量减少HTTP请求减少DNS查找避免跳转缓存Ajxa推迟加载提前加载减少DOM元素数量用域名划分页面内容使frame数量最少避免404错误优化是不可能一步到位的,通常在页面响应时间达不到要求的情况下,必须先要从网页的内容开始优化,然后再从硬件资源方面。这里推荐几款网页优化的测试工具:YSlow,Page Speed等,都是运行于Fir 阅读全文
摘要:
原文转载:http://www.cnblogs.com/0banana0/archive/2011/06/06/2073872.html1.在对当前DOM进行操作之前,尽可能多的做一些准备工作,保证N次创建,1次写入。 2.在对DOM操作之前,把要操作的元素,先从当前DOM结构中删除: 1. 通过removeChild()或者replaceChild()实现真正意义上的删除。 2. 设置该元素的display样式为“none”。 修改操作完成后,将上面这个过程反转过来,建议使用第2种方式。 3.CSS部分 另外一个经常引起回流操作的情况是通过style属性对元素的外观进行修... 阅读全文
摘要:
原文转载:http://www.cnblogs.com/wangzhichao/archive/2011/05/16/2047633.html页面呈现流程 在讨论页面重绘、回流之前。需要对页面的呈现流程有些了解,页面是怎么把html结合css等显示到浏览器上的,下面的流程图显示了浏览器对页面的呈现的处理流程。可能不同的浏览器略微会有些不同。但基本上都是类似的。 1. 浏览器把获取到的html代码解析成1个Dom树,html中的每个tag都是Dom树中的1个节点,根节点就是我们常用的document对象 (<html> tag)。dom树就是我们用firebug或者IE Develo 阅读全文
摘要:
原文:http://www.cnblogs.com/wangyuanxun/archive/2011/06/10/2077429.html使用线程互斥变量. 通过定义互斥变量来判断是否已运行实例.C#实现如下:把program.cs文件里的Main()函数改为如下代码:static void Main(){bool runone;System.Threading.Mutex run = new System.Threading.Mutex(true, "jiaao_test", out runone);if (runone){run.ReleaseMutex();Appli 阅读全文
只有注册用户登录后才能阅读该文。 阅读全文
摘要:
1、记录到XML变量declare @cxml xmlset @cxml=(select * from zd_storeP for XML RAW('store'),ROOT('stores'))select @cxml2、XML到记录集方法一:用OPENXML 90000条记录速度测试,22s,16s,16sdeclare @cxml xml,@nxml intset @cxml=(select * from zd_storeP for XML RAW('store'),ROOT('stores')) --大概1sselect 阅读全文
摘要:
原文地址:http://www.cnblogs.com/kivenhou/archive/2010/10/06/1844856.html具体要注意的: 1.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。优化器将无法通过索引来 阅读全文
摘要:
接下来我们说说“涵盖索引”和include索引。所谓的涵盖索引,就是传统方式在多个列上创建的索引。“inlude索引”是SQL2k5提供的新功能,允许添加非键列到非聚集索引的叶节点上。创建涵盖索引:create index ix_tb_col1_col2 on tb( col1, col2)创建include索引:create index ix_tb_col1 on tb( col1)include(col2, col3,col4) 涵盖索引和include索引的区别在于,涵盖索引的所有列都是键列,索引行的物理存储顺序就是col1、col2的顺序,这也是误区6之所以称为误区的原因。涵盖索引可以 阅读全文
摘要:
原文地址:http://www.cnblogs.com/kivenhou/archive/2010/10/06/1844856.html具体要注意的: 1.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。优化器将无法通过索引来 阅读全文