My Github
摘要: 在目前广泛的Web应用中,都会出现一种场景:在某一个时刻,网站会迎来一个用户请求的高峰期(比如:淘宝的双十一购物狂欢节,12306的春运抢票节等),一般的设计中,用户的请求都会被直接写入数据库或文件中,在高并发的情形下会对数据库服务器或文件服务器造成巨大的压力,同时呢,也使响应延迟加剧。这也说明了,为什么我们当时那么地抱怨和吐槽这些网站的响应速度了。 阅读全文
posted @ 2014-07-07 17:56 EdisonZhou 阅读(36312) 评论(28) 推荐(62)
摘要: 首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些第三方的开源类库。目前最流行的就是ServiceStack.Redis这个开源项目,其在GitHub上的下载地址为:https://github.com/ServiceStack/ServiceStack.Redis.进入下载页面,点击“Download Zip”按钮,即可下载该API包。解压该Zip包后,其实我们所用到的只是其中的几个DLL而已,打开build/release/MonoDevelop文件夹,看到里边还有一个zip包,这里边就是我们所需的DLL了。 阅读全文
posted @ 2014-07-04 11:19 EdisonZhou 阅读(5229) 评论(14) 推荐(13)
摘要: 随着应用对高性能需求的增加,NoSQL逐渐在各大名企的系统架构中生根发芽。时至今日,涌现出的NoSQL产品已经有很多种了,例如Membase、MongoDB、Apache Cassandra、CouchDB等。不过,在国内外互联网巨头例如社交巨头新浪微博、传媒巨头Viacom及图片分享领域佼佼者Pinterest等名企都不约而同地采用了Redis作为其NoSQL数据库的选择,到底Redis是何方神圣呢?能让如此多的名企为它而痴狂。 阅读全文
posted @ 2014-07-03 02:50 EdisonZhou 阅读(11704) 评论(27) 推荐(27)
摘要: book反向代理服务器具有以下功能:①保护网站安全:任何来自Internet的请求都必须先经过代理服务器;②通过配置缓存功能加速Web请求:减轻真实Web服务器的负载压力;③实现负载均衡:均衡地分发请求,平衡集群中各个服务器的负载压力; 网站性能优化第一定律:优先考虑使用缓存优化性能。缓存是指将数据存储在相对较高访问速度的存储介质中(如内存),以供系统进行快速处理响应用户请求。 阅读全文
posted @ 2014-06-26 17:20 EdisonZhou 阅读(6821) 评论(9) 推荐(32)
摘要: bookGzip压缩效率非常高,通常可以达到70%的压缩率,也就是说,如果你的网页有30K,压缩之后就变成了9K左右。想要启用Gzip压缩,提高浏览速度,可以浏览这篇文章:http://www.chinaz.com/web/2012/1017/278682.shtml 内容分发网络(Content Delivery Network,简称CDN)将加速内容分发至离用户最近的节点,缩短用户查看对象的延迟,提高用户访问网站的响应速度与网站的可用性,解决网络带宽小、用户访问量大、网点分布不均等问题。 阅读全文
posted @ 2014-06-24 21:20 EdisonZhou 阅读(4061) 评论(2) 推荐(4)
摘要: book最常见的架构模式,将系统在横向维度上切分成几个部分,每个部分单一职责。网站一般分为三个层次:应用层、服务层和数据层。通过分层,一个庞大系统切分成不同部分,便于分工合作和维护。但是,分层架构也有一些挑战:①必须合理规划层次边界和接口;②禁止跨层次的调用及逆向调用。 阅读全文
posted @ 2014-06-16 00:56 EdisonZhou 阅读(6729) 评论(5) 推荐(12)
摘要: book一、大型网站系统特点(1)高并发、大流量:PV量巨大(2)高可用:7*24小时不间断服务(3)海量数据:文件数目分分钟xxTB(4)用户分布广泛,网络情况复杂:网络运营商(5)安全环境恶劣:黑客的攻击(6)需求快速变更,发布频繁:快速适应市场,满足用户需求(7)渐进式发展:慢慢地运营出大型网站 阅读全文
posted @ 2014-06-07 01:40 EdisonZhou 阅读(11759) 评论(23) 推荐(53)
摘要: book《大型网站技术架构:核心原理与案例分析》通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计案例,为读者呈现一幅包括技术选型、架构设计、性能优化、Web安全、系统发布、运维监控等在内的大型网站开发全景视图。 阅读全文
posted @ 2014-06-06 23:35 EdisonZhou 阅读(13953) 评论(4) 推荐(17)
摘要: dotNet一、依赖也是哲学(1)本质诠释:“不要调用我们,我们会调用你”(2)依赖和耦合:①无依赖,无耦合;②单向依赖,耦合度不高;③双向依赖,耦合度较高;(3)设计的目标:高内聚,低耦合。(4)控制反转(IoC):代码的控制器交由系统控制而不是在代码内部,消除组件或模块间的直接依赖;(5)依赖注入(DI):①接口注入;②构造器注入;③属性注入; 阅读全文
posted @ 2014-06-05 00:50 EdisonZhou 阅读(1180) 评论(2) 推荐(0)
摘要: dotNet(1)核心思想:一个类最好只做一件事,只有一个引起它变化的原因(2)常用模式:Facade模式、Proxy模式(3)基本方法:Extract Interface 抽取接口、Extract Class 抽取类、Extract Method 抽取方法(4)DEMO:数据库管理系统中根据不同权限进行CRUD操作(这里是使用Proxy模式重构后的代码) 阅读全文
posted @ 2014-05-26 00:04 EdisonZhou 阅读(1106) 评论(0) 推荐(3)
摘要: dotNet(1)出生:系统首先会在内存中分配一定的存储空间,然后初始化其附加成员,调用构造函数执行初始化,这样一个对象实体就完成了出生过程。(2)旅程:在某种程度上就是外界通过方法与对象交互,从而达到改变对象状态信息的过程。这也和人的生存之道暗合。在.NET的世界中,对象的生命周期由GC来控制:GC管理所有的托管堆对象,当内存回收执行时,GC检查托管堆中不再被使用的对象,并执行内存回收操作;不被应用程序使用的对象,指的是对象没有任何引用。 阅读全文
posted @ 2014-05-24 11:18 EdisonZhou 阅读(1848) 评论(1) 推荐(3)
摘要: dotNet《你必须知道的.NET》来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心得和感悟,将技术问题以生动易懂的语言展开,层层深入,以例说理。全书主要,包括了.NET基础知识及其深度分析,以.NET Framework和CLR研究为核心展开.NET本质论述,涵盖了.NET基本知识几乎所有的重点内容。 阅读全文
posted @ 2014-05-10 09:53 EdisonZhou 阅读(5952) 评论(4) 推荐(7)
摘要: dotNet一、接口那点事儿(1)什么是接口?一组函数成员而未实现的引用类型。只有类和结构能实现接口。(2)从IComparable接口看接口实例:假设有如下一段代码,它使用Array类的一个静态方法Sort对一个未排序的int类型数组进行排序,并输出排序后的结果。(3)使用接口注意事项:①声明接口时:不能包含:数据成员、静态成员;只能声明:方法、属性、事件、索引器;②实现接口时:在基类列表中包括接口名称;为每一个接口的成员实现接口; 阅读全文
posted @ 2014-05-03 16:58 EdisonZhou 阅读(1722) 评论(0) 推荐(0)
摘要: dotNet一、委托初窥:一个拥有方法的对象(1)本质:持有一个或多个方法的对象;委托和典型的对象不同,执行委托实际上是执行它所“持有”的方法。如果从C++的角度来理解委托,可以将其理解为一个类型安全的、面向对象的函数指针。(2)如何使用委托?①声明委托类型(delegate关键字)②使用该委托类型声明一个委托变量③为委托类型增加方法④调用委托执行方法 阅读全文
posted @ 2014-05-03 00:45 EdisonZhou 阅读(3287) 评论(0) 推荐(2)
摘要: dotNet一、万物之宗:Object(1)除了特殊的Object类,其他所有类都是派生类,即使他们没有显示基类定义。(2)一个派生类只能有一个基类,叫做单继承。二、基类那点事儿(1)如何在派生类中访问基类成员?使用base关键字,如base.Field1;(2)如何屏蔽基类中某个方法或成员?在派生类定义的成员定义前使用new关键字; 阅读全文
posted @ 2014-05-01 16:18 EdisonZhou 阅读(1575) 评论(0) 推荐(0)
摘要: dotNet一、方法那些事儿(1)方法的结构:方法头—指定方法的特征,方法体—可执行代码的语句序列;(2)方法的调用:参数、值参数、引用参数、输出参数、参数数组;①参数:形参—本地变量,声明在参数列表中;形参的值在代码开始之前被初始化;实参—实参的值用于初始化形参;②值参数:为形参在栈上分配内存,将实参的值复制到形参; 阅读全文
posted @ 2014-05-01 01:40 EdisonZhou 阅读(1568) 评论(0) 推荐(2)
摘要: dotNet一、类型初窥:掀起你的盖头来(1)C程序是一组函数和数据类型,C++程序是一组函数和类,而C#程序是一组类型声明;(2)类型是一种模板:模板本身不是数据结构,但它详细说明了由该模板构造的对象的特征;(3)C#提供了16种预定义类型:13种简单类型(数值类型:int,float,double,decimal等;非数值类型:bool,char),3种非简单类型(object,string,dynamic); 阅读全文
posted @ 2014-04-29 17:26 EdisonZhou 阅读(2214) 评论(0) 推荐(3)
摘要: dotNet一、在.NET之前的编程世界 C#语言是在微软公司的.NET框架上开发程序而设计的,首先作者给大家纠正了一下C#的正确发音:See Sharp(而不是很多人说的什么C井之类的,每次听到C井我都只能呵呵一笑)。.NET框架由三部分组成,如下图所示。(1)编程工具:IDE、编译器、调试器、网站开发服务端技术(ASP.NET,WCF等);(2)执行环境—CLR(公共语言运行库):内存管理、垃圾回收、即时编译等;(3)BCL(基类库):在.NET框架中使用的一个大的类库,也可以在程序中使用; 阅读全文
posted @ 2014-04-28 23:10 EdisonZhou 阅读(5556) 评论(3) 推荐(8)
摘要: dotNet本书是广受赞誉C#图解教程的最新版本。作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式、朴实简洁的文字,并辅之以大量表格和代码示例,全面、直观地阐述了C#语言的各种特性。新版本除了精心修订旧版内容外,还全面涵盖了C# 5.0的新增特性,比如异步编程、调用者信息、case表达式、带参数的泛型构造函数、支持null类型运算等。通过本书,读者能够快速、深入地理解C#,为自己的编程生涯打下良好的基础。 阅读全文
posted @ 2014-04-28 14:56 EdisonZhou 阅读(6744) 评论(2) 推荐(4)
摘要: 转眼之间,来博客园已经一年多了。虽然已经不算是新人了,但是之前确实没有几篇敢放到首页的博客文章,也没有一个像样的系列文章,平时也浏览得不勤快—说到底,还是自己太懒了。2013年,我渐渐地增加了浏览博客园文章的次数,也增加了写文章的次数。特别是在2014年初这段时间浏览了不少园友写的总结和规划类博文,他们的阅读计划实在令我汗颜,也令我惭愧啊。因此,这也鼓起了我自己想写一篇总结和展望类的文章来鞭策自己的想法。放佛此时耳边又想起屈原老先森的那句“路漫漫其修远兮,吾将上下而求索!”,现在,我就来自我回顾一下我的2013,也对自己的2014做一个规划。 阅读全文
posted @ 2014-02-18 22:27 EdisonZhou 阅读(3591) 评论(7) 推荐(5)