摘要: 一.概念 1.路由是计算机网络中的一个技术概念,表示把数据包从一个网段转发至另一网段。ASP.NET中的路由系统作用类似,其作用是把请求Url映射到相应的"资源"上,资源可以是一段代码或具体的Web页面.路由系统提供了一种简单抽象机制,让我们利用Url更加精简方式表示资源,而无关资源具体的实现或表示。 2. 路由系统包含一系列重要的概念,现介绍如下:路由规则(RouteBase): 表示其中具体的一条路由条件,如果满足该路由条件,则转发至该路由处理. 路由规则由路由名称,路由默认值,Url路由模式,约束,附加数据这几部分组成路由表(RouteCollection): 路由规 阅读全文
posted @ 2014-03-10 23:17 十三 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 断断续续使用ASP.NET MVC框架也有一年多了,也算积累了一些经验,唉,一直想写一些笔记好好总结一下,人太懒不想动笔,今天终于决定开始.希望自己能坚持下去. 这篇文章大体介绍ASP.NET MVC的基本架构,帮助你快速理解该框架的工作原理。关于MVC模式的介绍已经是汗牛充栋了,这里就不再赘述了。ASP.NET MVC 是基于原有ASP.NET运行时,ASP.NET运行时采用通道过滤器模式,可以高度的扩展。如下图所示: 图中Module相当于IHttpModule,Handler类似于IHttpHandler, 整个asp.net web应用程序的容器是HttpAppliction,... 阅读全文
posted @ 2014-03-06 23:02 十三 阅读(554) 评论(0) 推荐(0) 编辑
摘要: 一.背景介绍 Web Capacity Analysis Tool是微软轻量级Web压力测试工具, 早先是IIS 6.0Resource Tool kit 工具包中的一个组件,现在独立出来有一个社区版本,下载地址在http://www.iis.net/downloads/community/2007/05/wcat-63-(x64)。二. 安装与工作原理简介 a.执行安装文件后目录结构如下: 简单说明一下: wcctl.exe 主导测试的控制器,负责协调各测试客户端(wcclient.exe),收集客户端的测试结果和服务器性能数据信息 wcclient.exe 测试客户端,... 阅读全文
posted @ 2013-12-16 00:31 十三 阅读(1538) 评论(0) 推荐(0) 编辑
摘要: 1. 使用同一个绑定对象实现地址跨终结点共享2. 地址报头帮助辅助寻址3. 使用端口共享为多个服务使用相同端口4. WCF终结点地址分为逻辑地址和物理地址, 客户端使用ClientViaBehavior实现逻辑地址和物理地址分离,服务端由终结点的ListenUri和LirtenUriMode共同决定5. 消息分发模型ServiceHost ----->ChannelDisPatcher----------->(通过AddressFilter和ContractFilter)EndPointDispatcher通过ServiceBehaviorAttribute的AddressFilt 阅读全文
posted @ 2013-08-12 23:12 十三 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 1. 自旋,线程所有权和递归2. 混合构造 a.ManualResetEventSlim b.SemaphoreSlim c.Monitor d.ReaderWriterLockSlim3.条件变量模式4.用集合防止占有锁太长时间5.并发集合类 a.ConcurrentQueue b.ConcurrentStack c.ConcurrentDictionary d.ConcurrentBag 阅读全文
posted @ 2013-07-28 21:30 十三 阅读(321) 评论(0) 推荐(0) 编辑
摘要: 1. 分为用户模式构造和内核模式构造2. 用户模式构造 a.易失构造 在一个简单数据类型的变量上执行原子性读或写操作 VolaileWrite 强制address中的值在调用时写入,除此之外,按照源代码顺序,在之前的加载和存储操作必须在调用VolatileWrite之前发生 VoatlieRead 强制address中的值在调用时读取, 除此之外,按照源代码顺序,在之后的加载和存储操作必须在调用VolatileRead之后发生 b.互锁构造 在一个简单数据类型的变量上执行原子性的读和写操作 Interlocked Interlocked Anything 模式3. 内核模式构造 W... 阅读全文
posted @ 2013-07-28 21:10 十三 阅读(215) 评论(0) 推荐(0) 编辑
摘要: 1. 使用线程池搪行简单的计算限制操作 ThreadPool.QueueUserWorkItem(WaitCallback callback)2.CLR默认情况下自动使初始线程的执行上下文流向辅助线程 (CallContext, ExcutionContext)3.协作式取消类 CancellationTokenSource4.新的异步操作编程模型 Task a. 等待任务完成 Wait() b. 任务结束后开始新任务 ContinueWith() c. 任务包含子任务,创建时指定AttachedToParent标志5.任务工厂TaskFactory6.任务调度器 调度执行任务7.并行静态.. 阅读全文
posted @ 2013-07-25 08:24 十三 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 1.线程的开销 a.线程内核对象 b.线程环境块 c.用户模式栈(1MB) d.内核模式栈 f.DLL线程连接和线程分离通知2.线程的优先级由进程优先级和线程优先级共同组成3.进程中所有的前台线程停止时,CLR强制终止仍在运行的任何后台线程,前台线程用于确实想要完成的任务 阅读全文
posted @ 2013-07-22 22:19 十三 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 1. 序列化格式类 a. 二进制BinaryFormatter b. XML流 NetDataContractSerializer c. CLR类据类型与非CLR数据类型之间互操作 XmlSerializer, DataContractSerializer2.使类型可以序列化,应用SerializableAttribute, 使用NonSerializedAttribute指明那些字段不序列化3.反序列化时, 应用OnDeserializedAttribute在类型某个方法上为类型反序列化后初始化对象4.OnSerialzingAttribute, OnSerializedAttribut.. 阅读全文
posted @ 2013-07-21 22:04 十三 阅读(208) 评论(0) 推荐(0) 编辑
摘要: 1. CLR 垃圾回收采用基于代的机制, 在一次垃圾回收中存活下来的对象被提升到另一代2. 在确认对象是否垃圾时,从一组根开始,根包括静态字段,方法参数,局部变量等3. 使用CriticalFinalizerObject类型确保终结4. 避免使用Finalize方法 a. 对象要花更长的时间来分配,指向它们的指针必须放到终结列表 b. 可终结对象会提升到较老的代,会增大内存压力 c. 可终结的对象导致应用程序速试为变慢,因为每人对象回收时必须进行额外处理5. 使用Dispose模式强制清理资源6. 基于代的垃圾回收算法做以下假设: a. 对象越新,生存期越短 b. 对象越老,生存期越长c. 回 阅读全文
posted @ 2013-07-14 18:19 十三 阅读(226) 评论(0) 推荐(0) 编辑