(这是互联网上的家)
在这里公司给你一个空间不受限制的网站。 国内还没有第二家能为每个会员提供这样的网站;而且你的网站是终身(99年)属于你自己的;很多人会说我连开关机都不会呀!没关系公司给我们的这套建站系统是全制式傻瓜式的,属于自主建站。一个什么都不会的人在很短的时间就可以建一个属于自己的商业性或娱乐性的网站。同时可以利用初中级编辑器建设一个动态多层次的网页、网站。它不但适合我们个人还适所有的家庭或大中型企业。
多终端接入、开放平台给互联网带来了前所未有的用户量级和访问规模,SNS网站产生了海量的UGC(用户产生内容),而且这些内容依托关 系链扩散速度之快、传播范围之广是传统网站难以想象的,海量数据的计算存储也一直是近年互联网领域的热点。本文将从发展演进的层面探讨互联网的系统架构。
天下武功唯快不破
网站初期的架构一般采用“短平快”的架构思路,架构以简单清晰、容易开发为第一衡量指标。
互联网架构选型首先包括开发语言的选择,目前PHP、Java是主力语言。开发语言的选择一般从团队人员的知识储备、社区活跃度、商业应用的成熟度、招聘人才的人力成本等方面考量。
选择语言之后,一般会选择该语言的流行框架辅助研发,例如Java的SSH、Python的Django等。但这些框架并不是通常意义上的架构,架构一般可 分为物理架构、运行架构、逻辑架构、开发架构、数据架构等多个维度,框架往往只是代码架构的一部分。代码架构是指代码的组织形式、规范、设计模式等,框架 其实是常用设计模式的软件化。例如Struts是MVC模式的实现,Hibernate、iBATIS是ORM模式的实现。
在架构视图中,早期关注的主要是开发视图和数据视图,一般数据存储采用DB,初期数据的关注点主要是安全和备份,MySQL的Master-Slave模式可以满足该需求。
鸡蛋不要放在一个篮子里
采用“短平快”三板斧将网站开发出来之后,急需解决的是网站的可用性问题。可用性最基本的要求是不能有单点,对程序节点而言,前端可采用LVS、HAProxy、Nginx等负载均衡/反向代理设备。
DB的可用性就复杂了很多,数据库天然是有状态的,状态就是其中的数据,新增一个数据节点一般伴随着大量的数据复制和迁移。对金融行业而言,昂贵的商用存储是 解决之道,“IBM Oracle EMC”是该类系统的标配。互联网企业则一般采用较为廉价的方案,例如开源的DRDB Heartbeat技术组合可 以在MySQL主库宕机时实现备机接管,接管时间可以控制在30秒内。
程序节点其实也可能存在状态,例如Web服务中常用的Session 就是保存在容器中的状态,这种状态保持要求所有相同用户的请求都在同一台机器上处理,无状态的程序节点才能水平扩展。无状态一般有两种设计思路,还以 Session为例,一种思路是把用户的状态保存在客户端Cookie,每次请求都把客户端的用户信息带到服务器端,淘宝的分布式Session就是该思 路的一种实现;另一种思路是状态保留在另外一个服务中,例如有些公司将Session放在分布式缓存中。
如果您喜欢这篇文章,就送梧桐子“”支持吧!
已获得0个“”