代码改变世界

随笔分类 - 网站架构

Memcache的使用和协议分析详解

2010-08-19 15:39 by 周国选, 252 阅读, 收藏, 编辑
摘要:Memcache的使用和协议分析详解.http://blog.csdn.net/heiyeshuwu/archive/2006/11/13/1380838.aspx 阅读全文

[转载]高性能WEB开发

2010-06-21 14:27 by 周国选, 528 阅读, 收藏, 编辑
摘要:[1] HTTP服务器篇[2] web 性能测试工具推荐[3] 图片篇[4] 如何加载JS,JS应该放在什么位置?[5] 为什么要减少请求数,如何减少请求数![6] 减少请求,响应的数据量[7] JS、 CSS的合并、压缩、缓存管理[8] 页面呈现、重绘、回流 阅读全文

软件开发中存在的25个常见问题

2010-02-22 09:32 by 周国选, 588 阅读, 收藏, 编辑
摘要:一个软件项目从开始到结束,由于资源、人员、管理、方法学等等各方面的因素,往往不可避免的会存在一些问题,如需求不明确、项目管理失败、沟通问题等等,今天无意中看到老外写的关于这方面的一篇文章,总结的比较全面,翻译过来结合自己的一些经验做了点补充和修改,存档以备时常可以告诫一下自己。1.不能很好的理解用户的需求,缺少与用户之间的沟通。2.错误的预估项目的大小和难易度。3.没有计划就匆匆开始编码。4.没有... 阅读全文

架构师

2009-08-14 13:30 by 周国选, 357 阅读, 收藏, 编辑
摘要:架构师是软件行业中一种新兴职业,工作职责是在一个软件项目开发过程中,将客户的需求转换为规范的开发计划及文本,并制定这个项目的总体架构,指导整个开发团队完成这个计划。架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作。他必须对开发技术非常了解,并且需要有良好的组织管理能力。可以这样说,一个架构师工作的好坏决定了整个软件开发项目的成败。   架构师实际上就是软件的总体设计师。... 阅读全文

asp.net单点登录(SSO)解决方案

2009-07-31 16:11 by 周国选, 7230 阅读, 收藏, 编辑
摘要:前些天一位朋友要我帮忙做一单点登录,其实这个概念早已耳熟能详,但实际应用很少,难得最近轻闲,于是决定通过本文来详细描述一个SSO解决方案,希望对大家有所帮助。SSO的解决方案很多,但搜索结果令人大失所望,大部分是相互转载,并且描述的也是走马观花。 闲话少叙,进入正题,我的想法是使用集中验证方式,多个站点集中Passport验证。如下图所示: 为方便清晰描述,先定义几个名词,本文中出现之处均为如下... 阅读全文

.NET中使用Memcached的相关资源整理

2009-07-31 11:52 by 周国选, 370 阅读, 收藏, 编辑
摘要:Memcached官方站点:http://www.danga.com/memcached/Memcached Win32 1.2.6下载:http://code.jellycan.com/memcached/安装帮助:Windows下的.NET+ Memcached安装Memcached .NET客户端:1).NET memcached client library  下载地址:https://s... 阅读全文

十大最优秀的Web网站性能测试软件工具

2009-07-07 09:02 by 周国选, 2642 阅读, 收藏, 编辑
摘要:随着互联网技术和理念的快速发展和迅速普及,很多企业越来越重视互联网,把互联网当作一种更为高效的资源和工具,并建立起一系列基于Web的网站服务。企业在建立或使用基于Web的网站服务时,都很难模拟出大批量用户同时访问网站系统的情境。这样,当Web网站遇到突发访问高峰时,容易发生服务器响应速度变慢甚至服务中断(服务器宕机)。为了避免因为访问量陡增导致网站访问速度变慢甚至无法访问,我们需要能真实模拟大量用... 阅读全文

indeXus.Net Shared Cache - 高性能,分布式缓存方案

2009-06-12 09:36 by 周国选, 409 阅读, 收藏, 编辑
摘要:一、简介indeXus.Net SharedCache是高性能的、分布式的内存对象系统,用于在动态WEB或Win应用程序中减少数据库的负责,提高访问速度。SharedCache 全部的代码都是用c#写的,100% DotNet原生态。先来看一下SharedCache 的几种方式:1.Distributed Caching - partitioned 2.Replicated Caching 3.S... 阅读全文

.Net架构网站遇到大表该怎么办?

2009-06-12 09:16 by 周国选, 538 阅读, 收藏, 编辑
摘要:最近做的web2.0网站本身遇到一个大表(千万rows左右),因为对于performance,web本身可用性的考虑,必须想办法boost perf.这种情况应该都用partition来搞定了,这也符合分治等算法的思想,想办法降低问题本身的复杂度,然后在一个一个解决。mysql中一般到100万操作就有点麻烦了,index要好好的做。这里还遇到了一个文本检索问题,MyIASM storage eng... 阅读全文

MySpace:.Net架构网站的王者

2009-06-12 09:13 by 周国选, 994 阅读, 收藏, 编辑
摘要:MySpace的成功对于.Net社区的开发人员来说无疑是个福音。它让很多.Net追随者吃下了一颗定心丸,也不断吸引了更多的追随者,让我们这些追随者都坚信使用.Net能够做出世界上最牛x的网站。如果没有MySpace, 当我们面对 Java, LAMP fans挑衅时候,我们该如何反击呢?哑口无言还是掩面逃窜。现在rails就缺乏一个”MySpace”, twitter.co... 阅读全文

ASP.NET中常用的26个优化性能方法

2009-06-12 09:11 by 周国选, 233 阅读, 收藏, 编辑
摘要:1. 数据库访问性能优化  数据库的连接和关闭 访问数据库资源需要创建连接、打开连接和关闭连接几个操作。这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源。ASP.NET中提供了连接池(Connection Pool)改善打开和关闭数据库对性能的影响。系统将用户的数据库连接放在连接池中,需要时取出,关闭时收回连接,等待下一次的连接请求。连接池的大小是有限的,如果在连接池达到最大限... 阅读全文

网站架构策划方案

2009-06-12 09:09 by 周国选, 347 阅读, 收藏, 编辑
摘要:这段时间一直都在为网站架构的事情所烦恼,前端,程序,服务器三个方面应该如何协调才能达到一个较为优化的网站架构呢?根据前辈的经验,我总结了以下文档,特分享。1. UIC需要做的 采用Css Sprite将背景图片,图标图片集成在一张图片内。 优点:减少用户代理对服务器的请求次数;加快用户载入页面时间。 Css && Js 统一使用YUIcompressor进行代码压缩处理。 优点:加... 阅读全文

大型网站架构心得

2009-06-12 08:54 by 周国选, 702 阅读, 收藏, 编辑
摘要:我们知道,对于一个大型网站来说,可伸缩性是非常重要的,怎么样在纵向和横向有良好的可伸缩性,就需要在做架构设计的时候考虑到一个分的原则,我想在多个方面说一下怎么分: 首先是横向的分:1. 大的网站化解为多个小网站:当我们一个网站有多个功能的时候,可以考虑把这个网站拆分成几个小模块,每一个模块可以是一个网站,这样的话我们到时候就可以很灵活地去把这些网站部署到不同的服务器上。2. 静态动态分离:静态文件... 阅读全文

CDN基本常识[转载]

2009-06-12 08:52 by 周国选, 220 阅读, 收藏, 编辑
摘要:1、CDN是什么 CDN(Content Delivery Network),就是内容发布网或者内容分发网,它的主要目的:通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络边缘,使用户可以就近取得所需的内容,从而提高用户访问网站的响应速度,提升用户体验,同时能够分散访问压力,把本来用户集中访问分散到各地去。网站的内容提供商(比如新浪、搜狐、网易等等)使用CDN,... 阅读全文

Singleton(单例模式)

2009-06-08 11:05 by 周国选, 579 阅读, 收藏, 编辑
摘要:概念设计模式的最显著的优点如下: ◆它们给你提供一个解决已有的并经过项目考验的类似问题的方案。这个解决方案促进复杂关系模块向着最低化耦合发展。它们将系统中可能存在的变化孤立起来,使整个系统更容易理解和维护。 ◆设计模式是设计人员间的交流更为有效。软件专业人员可以马上在脑海中勾画出一个高水平的设计方案,并想到以前解决类似问题的设计模式的名称。单例模式:在单例模式中,对活动的单... 阅读全文

在IIS上启用Gzip压缩(HTTP压缩)

2009-05-18 09:17 by 周国选, 232 阅读, 收藏, 编辑
摘要:一.摘要本文总结了如何为使用IIS托管的网站启用Gzip压缩, 从而减少网页网络传输大小, 提高用户显示页面的速度.二.前言.本文的知识点是从互联网收集整理, 主要来源于中文wiki. 使用YSlow检测网站启用了哪些优化时, Gzip是十分关键的一项. 启动Gip压缩将立竿见影的减少页面的网络传输大小. 三.HTTP压缩概述HTTP压缩是在Web服务器和浏览器间传输压缩文本内容的方法。HTTP压... 阅读全文

分布式缓存系统Memcached简介与实践

2009-05-15 18:01 by 周国选, 179 阅读, 收藏, 编辑
摘要:缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载。缓存是解决这个问题的好办法。但是ASP.NET中的虽然已经可以实现对页面局部进行缓存,但还是不够灵活。此时Memcached或许是你想要的。Memcached是什么?Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,... 阅读全文

SQLServer数据库同步准实时解决方案

2009-05-13 17:02 by 周国选, 6273 阅读, 收藏, 编辑
摘要:1. 需求 1)如何将在线运营的SQLServer数据库数据及时同步到另外一个SQLServer数据库。 2)数据仓库系统的数据抽取会对源系统造成巨大压力,严重影响性能和响应速度。如何将生产数据快速抽取到历史数据仓库,改善业务系统的性能。 3)分布式数据库,如何将分部的数据库数据复制到总部数据库,以利于总部汇总统计。这些业务应用中常见的SQLServer数据库同步需求,都需专业的复制系统来完成。2... 阅读全文

手把手教你配置Windows2003集群

2009-05-13 11:20 by 周国选, 292 阅读, 收藏, 编辑
摘要:集群是在一组计算机上运行相同的软件并虚拟成一台主机系统为客户端与应用提供服务;计算机通过缆线物理连接并通过集群软件实现程序上的连接,可以使计算机实现单机无法实现的容错和负载均衡。集群技术在企业组织部署关键业务、电子商务与商务流程应用等领域,具有举足轻重的作用。 本文主要带领大家一起,参与到基于Windows2003操作系统的集群配置中来,从以下的配置过程中,希望读者朋友能切实了解到Windows2... 阅读全文

稳定高效大型系统架构---集群中间件开发

2009-05-12 13:39 by 周国选, 660 阅读, 收藏, 编辑
摘要:一个偶然的机会,使我接处到Corba中间件。当时公司还特意让我北京borland公司学习一段时间。我对其visibroke中间件佩服的五体投地,从理论上讲:如果你架设的中间层,可以实现多台并发运行,又能实现负荷平衡,还能实现故障热切换,那么你就有了99.99999%稳定的中间件服务器。对此,我在学习时间倾赋了所有时间和精力,就连女朋友吵着去看长城,我都不想去。 那现在来说,稳定的中间件应该是什么样... 阅读全文

维基百科WikiPedia 技术架构学习分享

2009-05-11 11:35 by 周国选, 770 阅读, 收藏, 编辑
摘要:维基百科(WikiPedia.org)位列世界十大网站,目前排名第八位。这是开放的力量。来点直接的数据: 峰值每秒钟3万个 HTTP 请求 每秒钟 3Gbit 流量, 近乎375MB 350 台 PC 服务器(数据来源) 架构示意图如下: Copy @Mark BergsmaGeoDNS在我写的这些网站架构的 Blog 中,GeoDNS 第一次出现,这东西是啥? "A 40-line patch ... 阅读全文

LiveJournal网站架构

2009-05-11 11:17 by 周国选, 901 阅读, 收藏, 编辑
摘要:一、LiveJournal发展历程LiveJournal是99年始于校园中的项目,几个人出于爱好做了这样一个应用,以实现以下功能: 博客,论坛 社会性网络,找到朋友 聚合,把朋友的文章聚合在一起 LiveJournal采用了大量的开源软件,甚至它本身也是一个开源软件。在上线后,LiveJournal实现了非常快速的增长: 2004年4月份:280万注册用户。 2005年4月份:680万注册用户。 ... 阅读全文

大型网站架构不得不考虑的10个问题

2009-05-07 13:11 by 周国选, 478 阅读, 收藏, 编辑
摘要:这里的大型网站架构只包括高互动性高交互性的数据型大型网站,基于大家众所周知的原因,我们就不谈新闻类和一些依靠HTML静态化就可以实现的架构了,我们以高负载高数据交换高数据流动性的网站为例,比如海内,开心网等类似的web2.0系列架构。我们这里不讨论是PHP还是JSP或者.NET环境,我们从架构的方面去看问题,实现语言方面并不是问题,语言的优势在于实现而不是好坏,不论你选择任何语言,架构都是必须要面... 阅读全文