代码改变世界

【系列索引】抓虫系列 从基本程序、架构出发抓出项目中容易忽视的问题

2011-11-02 22:57 by 熬夜的虫子, 441 阅读, 0 推荐, 收藏, 编辑
摘要:此系列的文章主要是虫子随笔之作 从基本的程序与架构入手 剥离出一些大家项目过程中的一些盲点或者是经常忽视的地方,不过虫子的观点未必是正确的,欢迎大家一起交流引导目录抓虫系列(一) 从简单程序开始 线程安全抓虫系列(二) 不要轻视web程序中常用的三个"池" 之应用程序池抓虫系列(三) 不要轻视web程序中常用的三个"池" 之数据库连接池抓虫系列(四) 不要轻视web程序中常用的三个"池" 之线程池抓虫系列(五) 浅谈依赖注入与控制反转 阅读全文

走向DBA[MSSQL篇] 积跬步行千里

2011-10-25 22:29 by 熬夜的虫子, 1654 阅读, 1 推荐, 收藏, 编辑
摘要:不知道大家对SQL系列的感不感兴趣 先在这里探个路 本文针对的读者为SQL菜鸟 欢迎大牛驳论或者补充既然是探路篇 就先说下数据过滤中的偏门匹配 希望能给大家带来收获create table 虫子的临时表( 编号 varchar(30), 名称 varchar(30), 备注 varchar(100))insert into 虫子的临时表 values('编号01','name01','这是一个奇迹')insert into 虫子的临时表 values('编号02','name02','这是一个神话' 阅读全文

抓虫系列(五) 浅谈依赖注入与控制反转

2011-10-23 23:09 by 熬夜的虫子, 3390 阅读, 2 推荐, 收藏, 编辑
摘要:前篇回顾:前篇虫子介绍了3个"池"中线程池的相关问题,不过谬论的可能性比较大 仅代表虫子的个人观点了- -本章结合实例给大家阐述下依赖注入与控制反转可以给自己的项目带来哪些优缺点。先回顾下OO的一些设计原则:开放封闭原则 软件实体(类、模块、函数等)应该是可以开展的,但是不可修改。依赖倒置原则 抽象不应该依赖于细节。细节应该依赖于抽象。接口隔离原则 不应该强迫客户依赖于它们不用的方法。接口属于客户,不属于它所在的类层次结构。单一职责原则 就一个类而言,应该仅有一个引起它变化的原因。......随着面向对象分析与设计的发展,一个良好的设计,核心原则之一就是将变化隔离,使得变化 阅读全文

抓虫系列(四) 不要轻视web程序中常用的三个"池" 之线程池

2011-10-22 14:12 by 熬夜的虫子, 907 阅读, 0 推荐, 收藏, 编辑
摘要:前篇回顾:上篇讲了数据库连接池的问题,其实关于是否是活动连接还是有很大问题可以挖掘的。这个有空虫子再和大家交流了本篇谈下线程池的相关问题,希望各位看官留个爪印,应用程序池和数据库连接池可能大部分程序员不需要关心那个,不过线程池可所谓是重头戏了。先把虫子的观点放上: 个人表示排斥在项目中使用ThreadPool这个类,至于.net中关联到ThreadPool的资源我们暂且不做讨论。如果需要操作线程池可以使用第三方例如SmartThreadPool或者自己按照自己的项目需求开发一个。线程池的相关概念我就不多说了,同样这里我只介绍下。线程池中容易被忽视的问题。一. 相对池外线程,池内线程操作的性能极 阅读全文

【系列索引】结合项目实例 回顾传统设计模式 打造属于自己的模式类系列

2011-10-22 13:54 by 熬夜的虫子, 1328 阅读, 2 推荐, 收藏, 编辑
摘要:网上设计模式的文章很多 虫子就不再和大家扯一些没有营养的理论 开此系列博文 一方面因为自己颓废了大半年 趁此机会回顾一下 另一方面希望能够帮助新人走出设计模式的误区,如何做好设计模式1.在发掘新的模式之前,必须熟悉理解现有的模式。许多模式看起来像是全新的,但是事实上只是现有模式的变相。通过研究现有的模式更容易的识别模式。2.花时间反思与评估,反思过去的经验,并将它用在以后的新设计当中,这样你所了解的设计模式才是财富。3.将自己的想法记录下来,让自己回顾也让别人能够理解。4.让其他人使用你的设计模式,然后再持续改进。...这个系列完成后希望大家都能结合自己的项目实例思考引导目录结合项目实例 打造 阅读全文

【系列索引】架构类随笔

2011-10-22 13:21 by 熬夜的虫子, 332 阅读, 0 推荐, 收藏, 编辑
摘要:CUDA并行计算框架(一)概念相关、内容比较抽象。CUDA并行计算框架(二)实例相关。CUDA并行计算框架(三)应用前景。相比价微软的并行计算框架分布式文件系统应用(上篇 理论)分布式文件系统应用(下篇 实践)视频网站相关(视频解码、特大文件上传等) 针对web高并发量的处理 针对sql高并发量的处理关于领域驱动设计与面向数据库设计动态方法与动态代理(上篇)动态方法与动态代理(下篇) 重构与设计解析(非原创 资料整理).NET互联网网站架构(非原创 资料整理)..... 阅读全文

【系列索引】热门技术随笔

2011-10-22 13:02 by 熬夜的虫子, 293 阅读, 0 推荐, 收藏, 编辑
摘要:mongodb相关小试RavenDBXSS跨站脚本实例wcf、webservivce、remoting、wse、Enterprise Service、msmq.... 乱谈(非原创 资料整理)Webservice 安全与应用(非原创 资料整理)Windows、(*)nux回忆录 作为架构师的你 值得拥有 O(∩_∩)O~ (非原创 资料整理) 阅读全文

【系列索引】3年再回头系列 本系列为虫子学习整理 非虫子原创

2011-10-22 12:59 by 熬夜的虫子, 448 阅读, 0 推荐, 收藏, 编辑
摘要:此系列文章大部分为网上资料或者参考其他博主的博文 如果有涉及到版权问题 请和虫子联系3年经验回头再学Asp.net系列--基础篇(序)3年经验回头再学Asp.net系列--基础篇(一)3年经验回头再学Asp.net系列--基础篇(二)3年经验回头再学Asp.net系列--基础篇(三)3年经验回头再学Asp.net系列--基础篇(四)3年经验回头再学Asp.net系列--基础篇(五)3年经验回头再学Asp.net系列--基础篇(六) 阅读全文

回头再学Asp.net系列--基础篇(六)

2011-10-21 21:41 by 熬夜的虫子, 350 阅读, 0 推荐, 收藏, 编辑
摘要:随着面向对象分析与设计的发展,一个良好的设计,核心原则之一就是将变化隔离,使得变化部分发生变化时,不变部分不受影响(这也是OCP的目的)。为了做到这一点,要利用面向对象中的多态性,使用多态性后,客户类不再直接依赖服务类,而是依赖于一个抽象的接口,这样,客户类就不能在内部直接实例化具体的服务类。但是,客户类在运作中又客观需要具体的服务类提供服务,因为接口是不能实例化去提供服务的。就产生了“客户类不准实例化具体服务类”和“客户类需要具体服务类”这样一对矛盾。依赖注入(Dependency Injection),是这样一个过程:由于某客户类只依赖于服务类的一个接口,而不依赖于具体服务类,所以客户类只 阅读全文

抓虫系列(三) 不要轻视web程序中常用的三个"池" 之数据库连接池

2011-10-20 14:31 by 熬夜的虫子, 2047 阅读, 1 推荐, 收藏, 编辑
摘要:前篇回顾:应用程序池在项目中引发的问题不多,不过如果遇到了没有经历过的话可能会比较茫然,呵呵。当然重点还是数据库连接池与线程池了。本篇虫子就结合demo程序给大家演示下数据库连接池会给大家的程序带来什么样的影响。private string mConnectionString = "server=127.0.0.1;uid=chongzi;pwd=123456;database=AntiXSS;Connection Reset=FALSE;Max Pool Size=15"连接字符串中设定池化,池的最大数目为15 [Serializable] public class DA 阅读全文

回头再学Asp.net系列--基础篇(五)

2011-10-19 16:43 by 熬夜的虫子, 332 阅读, 0 推荐, 收藏, 编辑
摘要:泛型是 2.0 版 C# 语言和公共语言运行库 (CLR) 中的一个新功能。泛型将类型参数的概念引入 .NET Framework,类型参数使得设计如下类和方法成为可能:这些类和方法将一个或多个类型的指定推迟到客户端代码声明并实例化该类或方法的时候。例如,通过使用泛型类型参数 T,您可以编写其他客户端代码能够使用的单个类,而不致引入运行时强制转换或装箱操作的成本或风险。泛型类和泛型方法同时具备可重用性、类型安全和效率,这是非泛型类和非泛型方法无法具备的。比较ArrayListArrayList 是一个使用起来非常方便的集合类,无需进行修改即可用来存储任何引用或值类型。但这种方便是需要付出代价的 阅读全文

抓虫系列(二) 不要轻视web程序中常用的三个"池" 之应用程序池

2011-10-19 15:34 by 熬夜的虫子, 2048 阅读, 0 推荐, 收藏, 编辑
摘要:前篇回顾:上一篇虫子给大家介绍了线程安全中容易出错的地方 内容不深 引发大家的思考与关注 看似简单的小程序可是为引发大麻烦的额 ~ ~下面虫子给大家介绍下web应用范围的应用程序池、线程池以及数据库连接池中容易出现的问题首先来看应用程序池你的session丢失了吗?! 有 当然有 不过我们一般都是设置超时时间或者新版本更新修改了配置文件导致丢失的。好吧,可以预见的异常虫子就不和大家多扯了。 应用程序池是将一个或多个应用程序链接到一个或多个工作进程集合的配置。因为应用程序池中的应用程序与其他应用程序被工作进程边界分隔,所以某个应用程序池中的应用程序不会受到其他应用程序池中应用程序所产生的问题的影 阅读全文

抓虫系列(一) 从简单程序开始 线程安全

2011-10-19 12:03 by 熬夜的虫子, 2740 阅读, 1 推荐, 收藏, 编辑
摘要:简单的程序也可以存在很多值得思考的地方,作为一名程序员或者架构师,首先要具备的就是追根和追新的心态。抓虫系列的代码我想大部分人都接触过或者犯过这样的错误,有些可能涉及的知识面很基础很浅,留个烂文在此引导新手、路人。虫子尽量将问题放大,追的深一点偏一点,如果大家有其他自己的想法或者补充也可以留爪印。PS一下:看了下面的评论,大家有点误会虫子的意思了,此系列的博文旨在抓虫,从抓虫中关注我们的程序中容易出现的问题而并非是找寻更佳的解决方案 嘿嘿~ ~先看原始bug程序class testObj { public object Result { get; set; } ... 阅读全文

回头再学Asp.net系列--基础篇(四)

2011-10-15 15:51 by 熬夜的虫子, 353 阅读, 0 推荐, 收藏, 编辑
摘要:.Net的数据库访问技术在windows系统下的数据库访问技术主要有:ODBC(开放数据库连接),DAO(数据访问对象),RDO(远程数据对象),JDBC(java数据库连接),OLE DB(对象链接嵌入数据库),ADO(ActiveX数据对象),随着微软.net框架的推出,基于.net平台的数据库访问技术也在原来ado的基础上做出了重大的改进,升级到了全新的ado.net数据库访问技术,ado.net也是.net平台上最重要的数据库访问技术。使用 DAO 和 MFC DAO 类,可以访问下列数据源:1.用数据库引擎版本为 1.x、2.x 和 3.0 的 Microsoft Access 或 阅读全文

CUDA并行计算框架(三)应用前景。相比价微软的并行计算框架

2011-10-10 11:26 by 熬夜的虫子, 1241 阅读, 1 推荐, 收藏, 编辑
摘要:关于微软.net4.0推出的并行计算框架 还没深入了解有兴趣的同学可以参考下http://bitfan.blog.51cto.com/907048/200199系列博文不过发表下个人的观点 微软.NET 4.0中引入的并行扩展(包括任务并行库TPL和PLINQ)开发技术基于cpu。从应用领域上来说CPU擅长处理不规则数据结构以及递归算法、分支密集型代码和单线程程序。这类程序任务拥有复杂的指令调度、循环、分支、逻辑判断以及执行等步骤。例如,操作系统、文字处理等,而GPU擅于处理规则数据结构。例如,光影处理,游戏显像等。从微架构上看,CPU和GPU看起来完全不是按照相同的设计思路设计的,当代CPU 阅读全文