您的位置:首页 > 运维架构 > 网站架构

网站建设新技术的选择及思考 推荐

2012-08-19 08:37 204 查看
随着互联网的技术发展和各种新型网站技术的诞生,我们有时候很迷茫很困扰,特别是对一些中小企业的构架师,系统管理员来说,是采纳新技术来优化当前的网络架构,关键服务软件呢,还是保留当前的经典优化方案,很值得思考!

其实纵观当前的网络现状,我们可以发现各大IT公司,如facebook,淘宝,google...在软件上的优化项目无非集中在系统平台(文件系统,云),前端web服务器,后端的php,jsp服务器端解释语言,还有就是数据库了,因为基本上来讲,网站的就这4大环节。

纯软件来讲优化的方案大致是:

1,前端是否采用缓存cdn,其中还要选择squid,varnish

2,apache,nginx,tengine选择

3,php(jsp不了解)是进行apc,xcache.zendoptimize还是干脆使用facebook的hiphop编译成c++(加速的同时还能代替zend guard保护php源代码很好),是否使用php框架设计还是直接纯php设计

4,mysql,postgresql+memcached还是直接nosql(mongodb,redis)或者在mysql基础上采用handlesocket

5,Hadoop分布式文件系统,大数据,云(openstack)等(这里不做考虑真用到的都是规模很大的应用了,基本不用考虑,有成熟的案例就上就是了,不用考虑成本,不怕新技术能用就用)

而在硬件上的优化则大致是:

1,千兆万兆高速网络设备,带宽

2,大规模集群,负载均衡设备(F5)

3,InfiniBand架构(不考虑,一般有服务器承包商整体部署,牵扯很多东西)

4,采用更强大的多核心cpu,高速大容量的内存,pci-e ssd等

5,mips多核心+网络加速模块防火墙

我个人认为,如果你的企业是超大规模企业,经济-技术实力雄厚,世界500强等,请不用考虑,有什么新技术新硬件尽管上,只要成熟稳定就好,如果你刚处于创业阶段,或是中小企业,没有特殊情况还是不要过分追求极限优化,就采用成熟稳定的lamp架构就好,若果您真的想追潮流,应该首先考虑一下几点问题:

1,当前的网络架构,软件配置是否能满足企业业务在未来2-3年的发展需求(软件,硬件整体评价)

2,是否找出现了网站发展的瓶颈,在哪里?是局部改进还是整体改进,如果是需要整体改造是一次改造还是否分步骤来。(到底哪里需要极限优化)

3,当前的web前后端程序设计,数据库表的设计是否是最优化的,能否减少nginx的请求,php运算处理,数据库查询次数(毕竟使用少是最好的优化,到底是不是服务器软件或硬件的问题,同时决定是否采用php-c++编译提高性能,编译后还能保护php源代码不可见)

4,企业网站的高峰流量是否达到防火墙过滤带宽,或者企业总带宽,(决定是由采用cdn,前端缓存,考虑防止DDOS攻击)

5,当前的数据库是否够用,如果并发不是很大,数据量500万左右,mysql就够了,如果并发很大,cpu遇到瓶颈可以选择mysql-handlesocket模式,如果并发很大,数据文件也很大10G左右上亿条,而且查询是简单的pk查询,就是用nosql-mongodb了,但是nosql基本不支持安全权限,复杂事务查询。

6,当前的php应用兼容性代码安全性问题,是否能采用nginx-tengine1.30或apache2.4.2是否能采用php5.3-5.4.是否需要采用zend optimize

总结起来,优化时我们需要考虑的问题顺序是:

网络总带宽>防火墙rnat带宽>磁盘-ssd速度,容量>cpu>内存>web应用程序设计(是否采用先用的php框架来设计)>数据库表设计>数据库>php服务器端>web服务器>各种前后端缓存>集群,网络构架优化(实在没办法只能扩展了)

软件优化的同时我们要时刻考虑硬件的搭配问题,不能软件超过硬件的能力,也不能硬件拖软件的后退,硬件的优化相对简单哪里不行就换哪里,考虑下系统支持,稳定性就好。

优化无止境,我们要理性的选择优化方案,请根据自身的经济,技术实力来评断选择,就好比个人小公司选择centos一样,大企业关键业务还是选择rhel吧,不光是为了出来问题由来处理来背,确实centos和rhel是有差别的(10%左右),反过来你如果只是有几个人的小公司,你非要去整facebook的hiphop搞php编译优化,除了问题你哪有那么多精力去整啊。技术上来说问题出在哪里你都不好找到。。。毕竟咱们不是天才精通c++,php,php解释器,c++编译器。。。。一切以实际的情况,实际的业务量来进行,要不优化了没经济效果不说,还会带来维护成本增加,业务的不稳定诸多麻烦。。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nginx nosql hiphop