02 2014 档案

摘要:如果在.NET下写过网络通讯的同学应该感觉不陌生了,有很多刚入门的同学很多都认为这东西可以大大提高处理效能还有就是使用上很不适应.其实使用之前最好通过MSDN了解一下,该对象紧紧是Begin End模式的一个增强版本,它的主要作用主要是解决之前异步过程时创建不可复用的异步对象而产生的.主要是在高并发下节省大量对象重分配和同步相关问题,从而实现在高并发吞吐下更少的资源损耗(如果你的应用紧紧是密集通讯那性能提供相对来说是可观一点,但应用还存在其他处理那就不要想着它能有质的改变了). SocketAsyncEventArgs(SAEA)在.net 2.0 sp1所提供开发人员主要使用它的... 阅读全文
posted @ 2014-02-28 10:52 beetlex 阅读(34986) 评论(6) 推荐(8)
摘要:前言 在互联网应用项目中分布式设计是必不可少的环节,通过分布式设计从而达到简单扩容硬件的方式来提高系统和平能的总体吞吐能力。但实际应用中并不是简单地进行分布式设计就能解决问题,因为在现实应用并不是所有硬件资源都可以很好地进行扩容,比较常见的就是数据库资源,所以在设计整个架构的时候必须考虑部署资源的局限制性;否则整个构架所产生的效果就不能达到设计前规划水平。下面讲述构建一个可靠、高吞吐的分布式业务架构基础改造。现有架构​ 以上结构是最常见的分布式设计结构,而我们现有项目也是遵循着这种结构。这种结构看上去似乎比较理想,通过添加的硬件就能支撑所需要的访问量;但这种架构在实际应用中不一定达到效果... 阅读全文
posted @ 2014-02-25 11:57 beetlex 阅读(2913) 评论(3) 推荐(1)
摘要:在.NET下对进程的性能计数可以使用PerformanceCounter,通过该对象可以对进程的CPU,内存等信息进行统计.对于正常使用来说这个对象还是很方便,但对于同一名称的多个进程进行性能计数那真是可以无比蛋痛...详细说一下PerformanceCounter对多个同一名称的进程计数所面对的问题.应用情况PerformanceCounter是通过进程实例名来监控计数,但这个实例名是操作系统实时动态分配的,如果同一名称的进程只有一个那就比较好处理.如果同一名称的进程有多个那悲剧的事情就来的,随着同一名称的进程创建和关闭会影响到其他同一名称进程的实例名.这样会导致相应的Performance 阅读全文
posted @ 2014-02-20 13:02 beetlex 阅读(5419) 评论(4) 推荐(2)
摘要:AMS全称是Application Management Server即应用程序管理服;由于经常要写些一些应用服务,每次部署和维护都比较麻烦,首先要针对服务编写一个windows服务程序方便系统启动里加载;而当要对服务进行更新的时候不得不对服务进行停止和启等一系列的繁琐工作;而对于平常所有服务运行跟踪管理上就更加难以处理,即使IIS本身也无法方便查看具体WEB服务中处理业务上的统计信息,为了解决以上的种种问题所以考虑针对.NET程序设计一个应用程序管理服务。目标功能AMS的主要功能是可以根据需要在服务上创建多个进程,而每个进程里都可以挂载多个应用服务。其实进程挂载应用服务在之前的Glue4Ne 阅读全文
posted @ 2014-02-19 13:11 beetlex 阅读(919) 评论(1) 推荐(0)
摘要:IKende.CLI是一款开源的命令行分解组件,它可以简地把命令行字符转换成命令对象。在编写CLI应用的时候经常要对命令字符进行繁锁的分解和转换工作,而IKende.CLI的存也是为了解决以上问题而产生;通过特性的描述来简化命令分析工作,从而让在编写CLI的时候制定命令变得更方便简单。下面简单地讲解组件的使用组件结构 在使用前先了解一下组件的结构 Parse是组件的切入点,也是使用的主要对象。他依据两个对象来对数据进行分析处理分别是ILineAnalyzer和CommandBuilder.ILineAnalyzer 接口主要描述对命令行字符进行分析并返回一个统一的数据结构,组... 阅读全文
posted @ 2014-02-12 16:30 beetlex 阅读(1193) 评论(1) 推荐(0)