摘要: HTTP 基本概念HTTP Request MethodsGET、POST 专业名称是 HTTP Request Methods。但 HTTP Request Methods 不只是 GET 和 POST,完整列表如下:GETPOSTPUTDELETEHEADOPTIONSTRACECONNECTP... 阅读全文
posted @ 2014-06-26 03:44 蓝色格调 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 负载均衡 (Load Balancing) 负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。大型网站负载均衡的利器全局负载均衡系统(GSLB)内容缓存系统(CDN)服务器负载均衡系统(SLB)DNS域名解析的基本过程最初的负载均衡解决方案(DNS轮询)优点基本上无成本,因为往往域名注册商的这种解析都是免费的;部署方便,除了网络拓扑的简单扩增,新增的Web服务器只要增加一个公网IP即可缺点健康检查,如果某台服务器宕机,DNS服务器是无法知晓的,仍旧会将访问分配到此服务器。修改DNS记录全部生效起 阅读全文
posted @ 2013-10-17 17:07 蓝色格调 阅读(1366) 评论(0) 推荐(0) 编辑
摘要: 一个ASP.NET项目在部署到生产环境时,当用户并发量达到200左右时,IIS出现了明显的请求排队现象,发送的请求都进入等待,无法及时响应,系统基本处于不可用状态。当发现请求明显延迟,没有被即时处理的现象,首先就要查看Windows自带的性能日志Performance Monitor。由于我注意到只有对于.aspx或.ashx的请求才会延迟,而.htm或.jpg文件都是即时响应的,所以很明显问题出在ASP.NET上,于是我选择了性能监视器中的ASP.NET 4.0中的2个主要计数器:Requests Current(当前请求数), Requests Queued(被排队的请求数)进行观察。通过 阅读全文
posted @ 2013-09-01 22:54 蓝色格调 阅读(1130) 评论(0) 推荐(1) 编辑
摘要: Linq 出现之前,我们通常使用下面的方式来判断集合是否非空,即集合包含元素:var array = new int[0];var b1 = array.Length > 0;var list = new List();var b2 = list.Count > 0;var collection = new Collection();var b3 = collection.Count > 0;使用 Length 或 Count 属性,上面的写法没有问题。但到了 Linq 时代,Enumerable.Count 扩展方法“统一了“ Length 和 Count 属性,于是就有了 阅读全文
posted @ 2013-08-25 23:10 蓝色格调 阅读(634) 评论(0) 推荐(0) 编辑
摘要: Routing 组件ControllerController中可用的ActionResultMVC-View(使用的抽象工厂模式的视图引擎)视图模型 阅读全文
posted @ 2013-08-18 02:55 蓝色格调 阅读(495) 评论(0) 推荐(0) 编辑
摘要: 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)1.泛化(Generalization)【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特化父类的所有特征和行为。例如:老虎是动物的一种,即有老虎的特性也有动物的共性。【箭头指向】:带三角箭头的实线,箭头指向父类2.实现(Realization)【实现关系】:是一种类与接口的关系,表示类是接口所有特征和行为的实现.【箭头指向】:带三角箭头的虚 阅读全文
posted @ 2013-08-18 02:42 蓝色格调 阅读(356) 评论(1) 推荐(0) 编辑
摘要: 为了提高访问速度,也便有了预编译。关于ASP.NET网站:每个页面都编译成一个.dll文件用Assembly.GetExecutingAssembly().Location查看而ASP.NET项目,只会生成一个.dll文件 阅读全文
posted @ 2013-08-02 23:54 蓝色格调 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 配置文件在很多情况下都使用到, 配置文件分为两种 一种是应用程序的配置文件, 一种是web的配置文件.两种配置文件最大的区别是web的配置文件更新之后会实时更新, 应用程序的配置文件不会实时更新.更新应用程序的配置文件之后需刷新配置文件: 后台程序值得读取:string s=System.Configuration.ConfigurationSettings.AppSettings["name"];修改配置文件的值:/// /// 更新配置文件信息 /// /// 配置文件字段名称 /// 值 private void UpdateConfig(string name... 阅读全文
posted @ 2013-08-02 23:33 蓝色格调 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 数据库设计,一个软件项目成功的基石。很多从业人员都认为,数据库设计其实不那么重要。现实中的情景也相当雷同,开发人员的数量是数据库设计人员的数倍。多数人使用数据库中的一部分,所以也会把数据库设计想的如此简单。其实不然,数据库设计也是门学问。一 Codd的RDBMS12法则——RDBMS的起源Edgar Frank Codd(埃德加·弗兰克·科德)被誉为“关系数据库之父”,并因为在数据库管理系统的理论和实践方面的杰出贡献于1981年获图灵奖。在1985年,Codd 博士发布了12条规则,这些规则简明的定义出一个关系型数据库的理念,它们被作为所有关系数据库系统的设计指导性方针。信 阅读全文
posted @ 2013-07-31 23:45 蓝色格调 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 对于一个动态类型来说,你可以认为它包含任意成员,它们都能通过编译。但到了运行时,到底是否拥有这些成员,就真相大白了。如dynamic test = 7;Console.Write(test.Name);编译器无法在编译时知道test的真正类型,因此会使用其运行时的实际类型,而默认对于它的所有调用都是合法的,不会引发任何编译时错误。但它会抛出一个运行时异常。因为在运行时,test为一个int,它不具备Name属性。在编译时,编译器会根据会生成一些调用所需的上下文环境,如所有已知的静态类型等。但它无法知道在源代码中究竟引入了哪些命名空间。因此,你无法调用动态类型所代表的实际类型的扩展方法,也无法将 阅读全文
posted @ 2013-07-29 23:19 蓝色格调 阅读(1210) 评论(0) 推荐(0) 编辑