当前位置:主页 > web开发
创业公司工程师应该掌握的可伸缩Web开发技术
日期:2017-09-10 浏览量:

近些年来,越来越多的行业开始和互联网结合,诞生了越来越多的互联网创业公司。互联网创业公司需要面对许多的不确定因素。如果你和你的小伙伴们够幸运,你们的公司可能会在几个星期之内让用户数、商品数、订单量增长几十倍上百倍。一次促销可能会带来平时几十倍的访问流量,一次秒杀活动可能会吸引平时数百倍的访问用户。这对公司自然是极大的好事,说明产品得到认可,公司未来前景美妙。

但是快速增长的用户和订单却对公司的技术提出极大的挑战。受计算资源本身的限制,一台服务器能启动的线程数、能存储的数据,每秒钟能完成的计算、能读写的数据、能传输的数据都是有限的。而系统处理每一个用户请求都需要消耗一定的计算资源,当大量的用户同时来访问系统的时候,会出现因计算资源不足而导致的响应延迟以及超时出错,当并发访问用户超过某个极限,甚至会导致服务器宕机,整个网站不可访问的惨剧。

当公司正在为用户增加订单量上升而庆祝的时候,却传来系统崩溃网站不可访问的噩耗。喜剧变成悲剧,庆祝会变成批斗会,作为负责公司技术的工程师,作为批斗会的主角,你,是否会觉得压力山大。

本文面向创业公司的工程师,介绍可伸缩的Web开发技术。伸缩性是指系统可以根据需求和成本调整自身处理能力的一种特性。伸缩性意味着系统可以改变自身的处理能力以满足更多用户访问处理更多数据而不会对用户体验造成任何影响。

一、构建可伸缩的Web架构

互联网创业的一个特点是开始的时候规模都很小,几个人的小团队,少量的启动资金,就开始创业了。Google是从斯坦福的实验室开始创业的,Facebook是从哈佛的宿舍里开始创业的,Alibaba是从马云家的客厅开始创业的。刚开始的时候,用户也少,所以只要一台服务器就可以应付所有的用户访问,这时整个Web系统架构如图1。数据库、Web应用、文件服务都部署在一台服务器上。

图1 互联网创业早期最简单的Web系统架构

如果创业方向正确,产品解决用户痛点,能为社会创造价值,就会有更多用户来访问网站。这时,Web系统受计算资源不足影响,会出现响应延迟,打不开网站等情况。解决方法有两种,一种方法是使用更强大计算能力的计算机,另一种方法是使用更多的计算机。第一种方法主要问题在于再强大的计算机也都有资源限制,而一个成功的网站的终极目标是服务全世界,随着网站的发展,不管多强大的计算机迟早也会遇到计算资源不足的问题;而且越强大的计算机其价格也越昂贵,这也是刚刚起步的创业公司不能承受的。所以几乎所有的互联网公司都选择了第二种方法,即构建一个弹性可伸缩的Web系统,通过逐步向系统中增加服务器从而提高整个系统的计算处理能力。

增加服务器的一个基本手段是将不同的服务部署在不同的服务器上,应用服务器,数据库服务器,文件服务器独立部署,如图2。

图2 进行简单拆分独立部署的Web系统架构

此外,还可以将不同的模块拆分到不同的服务器。比如一个电子商务网站,商城、论坛、卖家这些相对独立的模块可以独立部署,即使在商城系统内部,首页、商品列表、商品详情、订单等子模块也可以进一步独立部署,如图3。

图3 按功能模块进一步拆分独立部署的Web系统架构

事实上随着业务不断发展,网站需要使用更多的服务,缓存、消息队列、搜索、NoSQL、反向代理等,还需要将静态内容服务从应用服务器中分离出来,以及使用CDN(内容分发网络)进行静态内容访问加速。这些服务都应该部署在独立的服务器上,通过使用更多的服务器提高网站的整体处理能力。

这些可以分拆的功能和服务虽然已经独立部署,但是每个功能或者服务如果只能部署在一台服务器上,能够提供的计算能力以及能够处理的并发访问依然有限。解决方法是通过集群的方式将单一服务部署在多台服务器上,从而提供更强大的处理能力,如图4。

图4 集群部署的Web系统架构 

总之,可伸缩网站架构的核心思路就是通过分拆集群等手段向Web系统中添加各种服务器,为系统提供更多计算、存储、传输能力,这些服务器能有效分担系统访问压力,使Web系统能够支撑更多用户访问、存储更多数据而不至于影响用户体验。

二、使用可伸缩的基础技术产品
相关文章:
·Web开发技术
·WEB前端开发教程
·Web前端开发前景怎么样?哪家培训机构好?
·物联网浪潮之下,前端工程师如何迎刃而上?
·传苹果正开发人工智能专用芯片 欲赶上亚马逊和
→ 特别推荐
Web开发技术
WEB前端开发教程
Web前端开发前景怎么
物联网浪潮之下,前
传苹果正开发人工智
摩拜单车亮相数博会
乐视体育融资了还要
助力市场落实《网络
走路姿态也能解锁手
Web前端开发顶尖机构
看苹果新开发课程:
游多多客栈惊艳亮相
金立S10今日发布:男
文人墨客的手机 海信
聚焦智能营销 精品媒
→ 热点TOP10
【系列直播】
APP开发找到技
新快报官方网
腾讯开发人脸
专业时尚网站
国办印发《政
掌握这十个小
十大Web漏洞扫
WEB前端开发教
看苹果新开发

友情链接/网站合作咨询: