摘要:
由于目前现有网络的各个核心部分随着业务量的提高,访问量和数据流量的快速增长,其处理能力和计算强度也相应地增大,使得单一的服务器设备根本无法承担。在此情况下,如果扔掉现有设备去做大量的硬件升级,这样将造成现有资源的浪费,而且如果再面临下一次业务量的提升时,这又将导致再一次硬件升级的高额成本投入,甚至性能再卓越的设备也不能满足当前业务量增长的需求。 针对此情况而衍生出来的一种廉价有效透明的方法以扩展现... 阅读全文
摘要:
原文:How to use the SocketAsyncEventArgs class. by Marcos Hidalgo Nunes Download client - 4.09 KB Download server - 7.5 KB引言我一直在探寻一个高性能的Socket客户端代码。以前,我使用Socket类写了一些基于传统异步编程模型的代码(BeginSend、BeginReceive,... 阅读全文
摘要:
Socket + Threads/ThreadPool大概性能:小于1500个连接实现:Accept一个Socket,就交给一个线程去管理,比较笨,但也比较有效,因为是同步方式,控制起来很方便。高级点的,就是交给一个线程池去管理,线程池由系统自动托管,省去了开销线程的时间。一般小型项目,用这个完全足够,开发也简单。但要注意,如果若干Socket长时间占用线程池中的线程,同时其它连接数又比较多,很容... 阅读全文
摘要:
1:类图2:数据结构[代码])3:开发步骤1:从数据库申请文件ID,同时得到时间。然后结合文件类型建立文件路径。2:向服务端发送文件【文件的二进制流,文件在服务器上的路径】分布式数据访问分布式缓存 阅读全文
摘要:
1:前言看到这个题目也许有的朋友会问对数据访问层扩展为分布式有没有意义,因为不管怎样到最后都是对数据库进行访问,瓶颈在数据库上。对于这个问题我的答案是“我们提供分布式的查询能力然后和缓存结合让数据库中的数据缓存起来”。解决这个问题后我们来进入正题,如何对数据访问层进行封装。其实数据访问层的方法我们常用的是ExecuteDataset,ExecuteNonQuery,Exec... 阅读全文
摘要:
1:前言我们在开发系统的过程中,缓存是个有用的模块。下面我就把我们的缓存模块给大家做个简单介绍。2:类图3:简单介绍缓存分为两个部分。一个是缓存结构一个是存储结构。缓存结构主要解决对象什么时候过期而存储结构主要解决对象存储到什么地方。3.1缓存结构我们在处理缓存过期这个功能的时候提供了两种过期时间。一种是绝对过期一种是相对过期。所谓绝对过期指的是到了时间点该对象就从缓存中移除,而相对过期则指的是只... 阅读全文
摘要:
usage NUnit attributes VSTS attributes 标识测试类 TestFixture TestClass 标识测试用例(TestCase) Test TestMethod 标识测试类初始化函数 TestFixtureSetup ClassInitialize 标识测试类资源释放函数 TestFixtureTearDown ClassCleanup 标识测试用例初始化函数... 阅读全文
摘要:
1:类间关系的种类2:关联描述了系统中对象或实例之间的离散连接,关联带有系统中各个对象之间关系的信息。2.1关联表示法2.2聚集与组合 3:泛化,继承【Generalization】泛化关系是类元的一般描述和具体描述之间的关系,具体描述建立在一般描述的基础之上,并对其进行了扩展。4: 实现【realization】实现关系将一种模型元素(如类)与另一种模型元素(如接口)连接起来,其中接口只是行为的说明而不是结构或者实现。5:依赖【Dependence】 依赖表示两个或多个模型元素之间语义上的关系。它只将模型元素本身连接起来而不需要用一组实例来表达它的意思。它表示了这样一种情形,提供者的某些变化 阅读全文
摘要:
最近站点遇到大流量,翻看日志后发觉有人在恶意注册和登陆。在不能封IP的前提下觉得用验证码来缓解问题。[代码] 阅读全文
摘要:
一、什么是架构在牛津高阶词典(第7 版)中,架构(architecture)一词的解释是:the design an structure of a computer system,而架构师(architect)一词的解释是:a person who is responsible for planning or creating an idea, an event or a situation。针对... 阅读全文
摘要:
引子 编程世界里只存在两种基本元素,一个是数据,一个是代码。编程世界就是在数据和代码千丝万缕的纠缠中呈现出无限的生机和活力。 数据天生就是文静的,总想保持自己固有的本色;而代码却天生活泼,总想改变这个世界。 你看,数据代码间的关系与物质能量间的关系有着惊人的相似。数据也是有惯性的,如果没有代码来施加外力,她总保持自己原来的状态。而代码就象能量,他存在 的唯一目的,就是... 阅读全文
摘要:
一、简介 indeXus.Net SharedCache是高性能的、分布式的内存对象系统,用于在动态WEB或Win应用程序中减少数据库的负责,提高访问速度。 SharedCache 全部的代码都是用c#写的,100% DotNet原生态。 先来看一下SharedCache 的几种方式: 1.Distributed Caching - partitioned 2.Replicated Cach... 阅读全文
摘要:
new ChannelFactory(“”);这种方式在单元测试下通过,但是在压力测试下报“找不到配置节”错误。 采用new ChannelFactory(bind, address);这种方法不会报错。 ClientSection client = ConfigurationManager.GetSection("system.serviceMode... 阅读全文
摘要:
有关多线程的一些技术问题:1、 何时使用多线程?2、 线程如何同步?3、 线程之间如何通讯?4、 进程之间如何通讯?先来回答第一个问题,线程实际主要应用于四个主要领域,当然各个领域之间不是绝对孤立的,他们有可能是重叠的,但是每个程序应该都可以归于某个领域:1、 offloading time-consuming task。由辅助线程来执行耗时计算,而使GUI有更好的反应。我想这应该是我们... 阅读全文
摘要:
前两篇简单介绍了线程同步lock,Monitor,同步事件EventWaitHandler,互斥体Mutex的基本用法,在此基础上,我们对它们用法进行比较,并给出什么时候需要锁什么时候不需要的几点建议。最后,介绍几个FCL中线程安全的类,集合类的锁定方式等,做为对线程同步系列的完善和补充。 1.几种同步方法的区别 lock和Monitor是.NET用一个特殊结构实现的... 阅读全文
摘要:
本篇继续介绍WaitHandler类及其子类Mutex,ManualResetEvent,AutoResetEvent的用法。.NET中线程同步的方式多的让人看了眼花缭乱,究竟该怎么去理解呢?其实,我们抛开.NET环境看线程同步,无非是执行两种操作:一是互斥/加锁,目的是保证临界区代码操作的“原子性”;另一种是信号灯操作,目的是保证多个线程按照一定顺序执行,如生产者线程要先于消费者线程执行。.N... 阅读全文
摘要:
本篇从Monitor,Mutex,ManualResetEvent,AutoResetEvent,WaitHandler的类关系图开始,希 望通过本篇的介绍能对常见的线程同步方法有一个整体的认识,而对每种方式的使用细节,适用场合不会过多解释。让我们来看看这几个类的关系图: 1.lock关键字 lock是C#关键词,它将语句块标记为临界区,确保当一个线程位于代码的临界区时... 阅读全文
摘要:
1. assembler 和 compiler assembler 汇编器,一般用于汇编语言,如本书的ILAsm。动词形式为assemble,翻译为汇编。 compiler 编译器,一般用于高级语言,如C#等。动词形式为compile,翻译为编译。 原书中,作者对这两个词是有所区分的。 2.assembly 程序集。很多人常常会与mo... 阅读全文
摘要:
适用于 应用程序使用的软件设计和构架 总结 软件架构一般定义为应用程序的结构。在定义这些结构的时候,软件架构师的目标就是使用不同级别的抽象,通过根据关注点把功能进行分割来最小化复杂度。我们会从最高层的抽象以及不同的关注点开始研究。因为设计的过程中需要不断深入这些层次、扩展关注点直到定义了结构为止。 内容 目标 概览 概要步骤 第一步——选择我们的分层策略 第二步——定义层之间的接口 第三步——选择... 阅读全文
摘要:
Network Interface 计数器 Bytes Total/sec 是在每个网络适配器上发送和接收字节的速率,包括帧字符在内。Network Interface\\Bytes Received/sec 是 Network Interface\\Bytes Received/sec 和 Network Interface\\Bytes Sent/sec的总和。 Current Bandwid... 阅读全文
摘要:
IT界是一个特别适合“创新”的地方,尤其是各种各样的术语。各大厂商为了自己的利益,不断的推出一些新的术语,而媒体们也在不断的站队,跟着一些忽悠,搞得我们这些IT界的前线战士们一阵一阵得晕。刚刚有了B/S、C/S、SaaS、SOA、Mash Up以及S+S,现在又出来了云计算。 什么叫云计算?根据维基百科当中的定义(基于某种原因,可能无法访问维基百科):云计算(cloud computing,分布式... 阅读全文
摘要:
传输配额是一种策略机制,用于决定连接何时正在占用过多资源。配额是一种硬性限制,它在超出配额值时立即禁止使用其他资源。传输配额可防止恶意或无意的拒绝服务攻击。 Windows Communication Foundation (WCF) 传输的默认配额值基于资源的保守分配。这些默认值适合于开发环境和小型安装方案。如果某个安装耗尽了资源或是连接受到限制,则无论是否还有其他资源可用,服务管理员都应检查传... 阅读全文
摘要:
Code Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ -->public class HttpCombiner : IHttpHandler { private const bool DO_GZIP = true; ... 阅读全文
摘要:
我在项目中遇到一个问题。要求在服务端公布一个方法返回值是IDataReader类型的。 请问WCF中是否可以返回IDataReader,能的话怎么做啊。能放个原型最好。 阅读全文
摘要:
总结C# 集合类 Array Arraylist List Hashtable Dictionary Stack Queue 我们用的比较多的非泛型集合类主要有 ArrayList类 和 HashTable类。我们经常用HashTable 来存储将要写入到数据库或者返回的信息,在这之间要不断的进行类型的转化,增加了系统装箱和拆箱的负担,如果我们操纵的数据类型相对确定的化 用Dictiona... 阅读全文
摘要:
1:前言 WCF是FrameWork3.0下的分布式框架。 本文讨论WCF与现行分布式通讯框架的性能对比。要求阅读者有一定的WCF基础(可以参照Windows Communication Foundation Architecture Overview)。 2:目标 本文的目的是WCF与现存的分布式通讯技术进行对比。这些现存的分布式通讯结构如下: ASP.NET Web Services (ASM... 阅读全文
摘要:
1:测试平台 CPU:Intel Core(TM)2 Duo CPU E8300 2.83GHz 内存:1.98G内存 平台:Windows 2003 Service 2:测试内容 测试Int,Stream,DataSet,Class在Remoting和WCF下的传输效率 服务宿主:Windows Service 通讯通道:TCP 3:测试方法 计算循环1万次传输Int,Stream,Class... 阅读全文
摘要:
Code Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> 下找有没有 name属性跟服务匹配的的配置 ... 阅读全文