精华内容
下载资源
问答
  • 服务器架构

    千次阅读 2018-04-08 11:14:17
    服务器架构图:

    服务器架构图:
    服务器架构图

    展开全文
  • 系统架构之服务器架构

    千次阅读 2019-10-09 14:46:46
    服务器架构图多以物理视图呈现,物理视图用于描述系统软件到物理硬件的映射关系,反映出系统的组件是如何部署到一组可计算机器节点上,用于指导系统的部署实施过程。受众多为运维和实施人员。 其实服务器架构如何...

    前言

    服务器架构图多以物理视图呈现,物理视图用于描述系统软件到物理硬件的映射关系,反映出系统的组件是如何部署到一组可计算机器节点上,用于指导系统的部署实施过程。受众多为运维和实施人员。

    其实服务器架构如何架设完全根据业务场景,数据量或者用户量等因素进行衡量,并没有什么架设方案是一定的,遵循“两利相权取其重”,经过综合考量后,选择最优方案。

    以下根据不同场景进行服务器架构架设进行物理视图展示(以下示例均以物理服务器为节点,不考虑虚拟化分割和容器部署情况)。

    一、单台服务器

    一般在用户量不多,应用使用频率不高,数据量不太大,业务场景相对简单情况下,单台服务器就可以满足使用。也就是一台服务器上只运行应用容器(如tomcat)和数据库,让系统运行起来,用户能通过网络访问即可,单台服务器不存在应用于数据库网络连接问题,因为应用和数据同在一台服务器,完全的"本地"环境;当然应用访问压力和数据负载压力都由一台服务器承担。其实这种完全单台的情况,一般都用于测试环境或者开发环境,再简单的生产环境至少再多一个灾备服务器会显得更优雅。

    二、应用、数据服务器分离

    如果随着用户量的增长和数据量的增大,应用服务器与数据服务器分离是迈出"分布"的第一步。只需要应用服务器新增一个远程调用数据库服务器的连接,有效的缓解了应用服务器负载的压力。当应用服务器和数据服务器需要通过网络连接时,则有可能由于两个服务器之间网络问题导致数据传输上丢包或者出现数据丢失情况。不过随着网络技术的发展及解决方案的丰富,当数据量或应用访问不太大的情况下,这种担忧完全可以忽略。

    三、应用、数据、文件服务器"三剑客"

    随着系统使用,当文件越来越多,对应用服务器的硬盘存储也是一个挑战,让文件集中化管理显得很有必要。应用服务器只管访问的事儿,数据服务器只存储应用数据(数据库数据),而文件服务器对各种静态文件集中管理,同时释放应用服务器存储空间。

    至于文件服务器到底是做成一个FTP协议的"专业"文件服务器,还是只是把文件分服务器存储,依然使用http协议,就看业务需要了,不过对于FTP管理、http管理总结了以下对比,FTP:

    1、完全基于网络,具有网络文件的上传与下载特性。如支持断点续传,不受工作组与IP地址限制等。

    2、拥有完善的用户权限管理系统,比起网络共享来说,可以详细设置每个用户的权限。如只能上传,不能修改或删除等。

    3、安全性高,可以进行数据的加密传输。更好保护个人隐私。

    与网络共享(http)对比:使用上感觉不如网络共享方便,网络共享的文件可以像本地文件一样使用。而FTP必须是下载下来才能使用。

    应用服务器与文件服务器分离优缺点

    优点:由于处于两个服务器,可以做到访问的分流,减少应用服务器压力,正常用户访问和文件下载上传不共享一个服务器带宽,做到分带宽,如果在文件和应用都在一个服务器会存在上传下载时候,其它访问很慢。且分开的话文件统一管理比较整洁。

    缺点:由于处于两个服务器,涉及到跨域访问问题,需要先把网络传输搞定。两个服务器互相通信时,可能存在网络丢包现象,需要特殊处理。

    备注:如果承载多种类型的文件服务器,可以是文档格式,可以是视频,可以是图片,支持各种类型文件,需要开启多种协议,比如:HTTP,FTP,RTSP,RTMP。流媒体协议主要是三种:HTTP、RTSP、RTMP。

    四、应用集群,加入负载均衡

    对一个应用,利用负载均衡器部署到多台服务器上(未对业务进行拆分),优化了访问请求在服务器组之间的分配,消除了服务器之间的负载不平衡,从而提高了系统的反应速度与总体性能,当然负载均衡器也可以调整每台服务器负载的权重。同时负载均衡器也可以也可实现故障转移,当一台服务器崩溃时候,把访问转到另外可用服务器上,提高了系统架构的可靠性。

    在此阶段,可以在同一服务器下实现动静分离,也就是最初版的前后端分离,用nginx管理并启动前端静态文件工程,tomcat管理后端应用和动态数据。同时一个nginx服务也可以对多个tomcat服务,tomcat服务之间存在负载均衡和故障转移。

    负载均衡器的存在提高了架构的扩展性,简化了管理难度。关于负载均衡故障转移有很多内容要讲,多啰嗦几句,负载均衡可大致分为DNS负载均衡,反向代理负载均衡,基于NAT负载均衡,其中反向代理负载均衡使用较广。当然如果单台负载均衡器感觉不够高可用,也可对负载均衡器进行多台部署,做好灾备。

    应用集群加入负载均衡后,需要注意几点问题:①单点登录②使用session+cookie维护用户③当一台服务器或者多台服务器崩溃,所有的请求由原来的均衡分布瞬间集中到一台服务器或少数几台服务器,需要用户请求突然集中化的处理机制,防止服务器集中接收过多请求而瘫痪。

    五、数据库集群,读写分离

    应用服务器负载均衡后,随着流量和数据的增加,数据库服务器遇到瓶颈,需要对数据库实行集群策略,对数据库访问分流。

    实行读写分离同时,可以加入数据库本地缓存策略。如果数据库读写分离,需要注意数据同步问题。

    六、加入搜索引擎

    加入搜索引擎集群后,需要注意索引数据同步问题:实时增量、定时全量等。

    七、加入缓存服务器

    目前最常用的缓存数据库是redis,一般加入缓存服务,除了分担读数据库的访问压力之外,缓存服务还有数据限流、高速队列、事件发布订阅等效果。加入缓存,主要需要注意的两个问题:缓存穿透与缓存雪崩。

    缓存穿透

    缓存只是为了缓解数据库压力而添加的一层保护层,当从缓存中查询不到我们需要的数据就要去数据库中查询了。如果被黑客利用,频繁去访问缓存中没有的数据,那么缓存就失去了存在的意义,瞬间所有请求的压力都落在了数据库上,这样会导致数据库连接异常。

    缓存雪崩

    缓存雪崩是指缓存不可用或者大量缓存由于超时时间相同在同一时间段失效,大量请求直接访问数据库,数据库压力过大导致系统雪崩。

    对于缓存相关问题解决方案,网上有很多方法,此处不做描述。到了这一步,服务架构还不算分布式架构,只能算高可用架构。

    八、数据库水平拆分、垂直拆分

    比如,商品和用户两个数据库原来处于同一个数据服务器,由于数据量不断增长,把商品和用户两个数据库分别放在两个数据库服务器,这种按业务分割业务数据,其实就是垂直拆分。垂直拆分后,要注意不同服务器之间数据关联与同步问题。

    如果当商品服务器又达到性能瓶颈,需要对服务器继续扩展,把同样的商品数据库的数据按条件分到扩展服务器上,这种就属于水平拆分。

    九、应用服务器垂直拆分

    把应用服务器,按业务进行垂直拆分,A业务服务器只负责A业务,B业务服务器只负责B业务,C业务服务器只负责C业务。并对每个业务服务器做好负载及灾备。

    例如,按业务拆分的3个服务器的对应三个域名:

    urlA.com,urlB.com,urlC.com

    根据不同域名请求访问不同服务器,如果涉及到用户需要查询业务A或业务B,直接在用户服务器里写DAO层查询业务A或业务B数据库表。

    此步需要注意的问题:业务服务器之间调用问题

    十、前后端服务器分离

    当服务器访问量继续加大的时候,可添加专门的用于管理前端工程的服务器,为前后端在一个服务器做访问压力分离。至于前端服务器与后端的应用服务器如何关联,则由实际业务场景判断,本文不做描述。至于更多细节,比如CDN服务器等不做描述。

    十一、微服务

    到此步就不是web应用服务了,应用服务进一步抽离为服务节点,应用服务通过调用服务节点来实现整体系统,不但让系统充分解耦,又可以使服务之间紧密相连。这一步已经属于微服务了,微服务之间的调用和消息是需要注意的重中之重。架构的选择不需要跟随"潮流",不是因为微服务火就要把所有项目都做成微服务,要充分判断用户受众及用户量之后,再做架构的选择。要让技术为业务做服务,用技术去驱动业务,驱动发展,而不是要让业务给技术让路。

    十二、加入数据中心

    到这步,应用层已经架构完毕,为实现数据驱动而加入数据中心,实现数据统一管理。让不断增长的数据价值实际落地。

    展开全文
  • 服务器架构介绍

    千次阅读 2019-10-13 20:54:38
    说起服务器架构呢,是一个高大上的话题,若有写的不好的地方,大家勿喷哦。 相信大家都知道b/s和c/s架构。我们就从这里说起。 1.浏览器——服务器架构 不知道大家有没有写网站的经历,但是我相信大家都有上网的...

    这篇文章到底放在那个模块呢?想想放哪里都不太好,没办法,最后还是放在了网络部分。

    说起服务器架构呢,是一个高大上的话题,若有写的不好的地方,大家勿喷哦。

    相信大家都知道b/s和c/s架构。我们就从这里说起。

    1.浏览器——服务器架构

    不知道大家有没有写网站的经历,但是我相信大家都有上网的经历吧。哈哈。

    浏览一个网页的时候,在搜索栏输上域名,或ip地址,或者关键字弹出一堆网站推荐,点击。然后我们就可以上网了,非常的方便。但是呢怎么实现的呢?上网无非就是两台不同主机上的进程的联系。既然是不同主机之间,就需要ip地址和端口号,才能建立连接。当我们在URL栏输入ip地址或者域名时,都会获得到ip地址.端口号,服务器端网站程序用的固定的端口号。直接绑定上就可以了。记得http时80.https:443

    这样,我们就可以非常方便的建立连接,上网了。

    一个浏览器非常小,一般也就MB为单位。这是因为大部分工作都是服务器在做。前端页面,逻辑层,数据库,都需要放在服务器端。

    浏览器的工作呢,其中包含了写前端界面中html,css,js等相应脚本语言的解释器。服务器端把前端页面的代码通过网络发送过来之后呢,解释器解释页面代码,执行,展示出来。将用户输入、点击等操作返回给服务器。这就是浏览器最主要的工作了。我们在浏览器中按fn+f12就可以看到服务器端发送过来的前端页面代码了。

    服务器端呢,需要接受用户的输入,执行相应的操作。比如从数据库中提取数据,或是写入数据,返回新的前端界面等。

    2.客户端——服务器架构

    这种方式,客户端分担了服务器端的工作。

    我们玩的游戏,通常都是几个G大小。部分逻辑层,所有前端界面都在客户端。客户端接受用户的指令后,通过客户端逻辑层运算,传递给服务器端,进行处理后,传输回来,展示画面。通常情况游戏为了流畅性,客户端会提前运行,展示界面,不必等到服务器发过数据来。不知大家玩游戏的时候发没发现。吃鸡里面,当人物跑动的时候,突然断网或是网络不好的时候,人物会后退,会退到之前的地方,就是这个原因。

    3.变型——微信小游戏

    我认为这是一种介于两者之间的一种方式。也是有客户端的,但是每次点击都需要重新通过网络下载。所以呢,限制了游戏的大小,不能太大,要不每次要花非常多的时间下载。相信5G的到来,游戏的大小会发生较大的变化。

    上面这些说的都是大的方向,那么服务器端的架构呢?

    4.单台服务器

    比如,我们自己做的网站,只有一台服务器。前端界面,逻辑处理,数据库,都在一台服务器上。这种呢,少数人共同访问没有什么问题,一但访问的人多了,服务器就要受不了了呢。

    5.简单服务器组

    单台服务器不行,我们就增加几台,将功能分到不同服务器上。一般将注册程序分出来,放到一个服务器。数据库单独一个服务器。其他的运行逻辑放到一个服务器。

    5.服务器组

    随着连接的人数更多,就需要更高级的。

    这种相对于小型游戏可以,但是对于吃鸡,英雄联盟这种游戏就不够看了。

    5.大型游戏服务器组

    这种大型游戏有一个普遍的特点,分区,不同区的玩家不能一起玩游戏。主要是数据库的分离导致了这个问题。谁让玩家太多了呢。哈哈哈。

    上面说的这些都是一个大的概念性的内容。能够快速让我们了解服务器以及服务器组的架构方式。

    想要深入,还要花时间去细致了解。

     

    展开全文
  • 基于蒲公英的企业号内网服务器架构
  • 服务器架构简介

    千次阅读 2019-06-18 11:44:07
    服务器架构和功能即服务(FaaS)是云计算的热门趋势。除微软和亚马逊外,还有许多其他供应商提供FaaS。本文是对无服务器架构的简单介绍,我会解释它是什么以及我们为什么需...
        

    无服务器架构和功能即服务(FaaS)是云计算的热门趋势。除微软和亚马逊外,还有许多其他供应商提供FaaS。本文是对无服务器架构的简单介绍,我会解释它是什么以及我们为什么需要它。

    640?wx_fmt=png云的演变

    在其发展过程中,云具有多种形式和抽象级别。

    640?wx_fmt=png

    数据中心,无论是内部的还是由供应商作为服务提供的,都是我们今天所知道的云技术的第一步。它抽象了物理托管环境,我们开始使用硬件单元扩展这些环境。随着虚拟化的发展,我们开始在云环境中托管虚拟机。我们对硬件进行了抽象,并将操作系统作为等级单位。不久之后,我们将托管环境构建到云端,并抽象出操作系统。我们新的缩放单元就是应用程序。但这并不是终点,因为我们现在已经转向了功能或无服务器架构。

    不同的云模型给我们留下了不同的责任。拥有数据中心意味着我们对正在进行的所有事务负全部责任。当迁移到云端时,进化过程中的每一步都会让我们的责任越来越少。

    640?wx_fmt=png

    无服务器架构实际上比SaaS晚,但它在图表中的SaaS之前,因为在SaaS的情况下,用户对应用程序或其基础结构没有任何控制权。

    640?wx_fmt=png无服务器架构

    函数是无服务器体系结构中的缩放单位,它抽象语言运行时。我们不讨论运行函数需要多少CPU或RAM或任何其他资源。我们只讨论运行该函数所需的时间。所有其他指标都不应该困扰我们。我们编写函数,将它们发布到云端,并且只为这些函数运行的时间付费。

    无服务器架构没有严格规定技术上必须具备的功能。这只是我们想要完成的一些工作单元。可以通过多种方式触发。它可以是定期运行函数的计时器,但它也可以是HTTP请求或某些相关服务中的某些事件。

    640?wx_fmt=gif

    在文章“无服务器架构”中,Mike Roberts提出了功能即服务(Faas)的六点:

    1.从根本上说,FaaS是在不管理自己的服务器系统或自己的服务器应用程序的情况下运行后端代码。

    2.FaaS产品不需要编码到特定的框架或库中。FaaS功能是语言和环境的常规应用程序。

    3.由于我们没有服务器应用程序可以运行,因此部署与传统系统有很大不同 - 我们将代码上传到FaaS提供商,它可以完成其他所有工作。

    4.水平扩展是完全自动的,弹性的,并由提供者管理。

    5.FaaS中的函数由提供程序定义的事件类型触发。

    6.大多数提供者还允许触发函数作为对入站HTTP请求的响应,通常在某种API网关中。

    Adrian Cockroft在他的推文中定义了“无服务器” :

    If your PaaS can efficiently start instances in 20ms that run for half a second, then call it serverless.

    由此可以得出结论,长时间运行的工作流程和其他大型任务不适合无服务器架构。

    640?wx_fmt=png函数服务

    已有公司将函数作为服务运行。以下是其中一些:


    Microsoft - Azure

    亚马逊 - AWS Lambda

    Auth0 - webtask

    Iron.io - IronWorker

    Planet Rational - webscript


    还有许多其他可用的服务,所有这些服务的技术能力和实现都各不相同。

    总结

    无服务器架构允许我们构建一些有用的代码,同时,在不消耗大量服务器资源的情况下快速运行。这并不意味着FaaS只能在小场景中使用。尽管函数是一个小单元,但它可以每秒调用数百万次。问题是,我们应该从应用程序的其他组件或层向FaaS转移哪些小功能。


    640?wx_fmt=png

    640?wx_fmt=gif

    喜欢记得来一个

    640?wx_fmt=gif

    640?wx_fmt=jpeg

    长按二维码 ▲

    订阅「架构师小秘圈」公众号

    如有启发,帮我点个在看,谢谢↓

    展开全文
  • 服务器开发的流程图 服务器架构的设计思路 服务器设计思路
  • 常用web服务器架构理解

    千次阅读 2018-06-24 17:39:16
    一、服务器架构理解 一个Web项目上线,必须依托于服务器成为互联网之中的一个节点,要使我们的应用得以运转,这个节点内容需要进行一系列的工作环境安装配置,而为了目标项目的安全性、稳定性、灵活性,同时考虑...
  • 服务器架构集群概念

    2019-02-28 20:24:23
    服务器架构集群:多台服务器组成的响应高并发,高数据量访问的架构集群。 负载均衡:分发请求到不同的服务器,使流量平均分配 静态资源服务器:存储静态资源,如css html js等。 反向代理:a想访问c,但a不能直接...
  • 手游服务器架构

    千次阅读 2019-06-08 11:44:00
    手游服务器架构 最近开始从客户端转作服务端,先贴一张基本的手游架构图。 第一层是 slb,负载均衡。 第二层是web Server,服务器游戏逻辑块。 第三层是cacheServer,常见的有redis,memcached. 第四层是数据库。 ....
  • 天龙服务器架构

    千次阅读 2013-06-22 10:18:50
    天龙服务器架构   1、整体架构    图1 服务器架构图   2、架构解析 (1)BillingServer:  计费系统服务器,点卡收费时的产物。现主要用于账号验证、游戏点兑换、游戏推广卡兑奖等功能。连接帐号...
  • 游戏服务器架构的思考

    千次阅读 2016-03-27 17:10:50
    游戏服务器架构
  • 大公司服务器架构

    万次阅读 2018-09-10 16:19:21
    大公司服务器架构图,可能 会有很多错误的地方,望大牛们指点! 1 Facebook Facebook拥有超过6万台服务器,硬件完全自行设计,并被归为Open Compute Project。 底层由运行MySQL的八核Linux服务器组成,Facebook...
  • mmo服务器架构总体来说相对比较复杂,由多组服务器进程组成。而这些服务器进程大致分为两类,一类是平台服,另一类是普通服。 一、平台服 平台服务器一般都用于处理全局相关功能,涉及玩家登陆,角色唯一性认证,...
  • Faas 和无服务器架构

    千次阅读 2018-07-30 20:31:35
    Faas 和无服务器架构 从IaaS、PaaS、SaaS到CaaS,再到火热的微服务架构,人们孜孜不倦的追求着将硬件资源抽象化,从虚拟机到容器, 再到现在的无服务器架构,FaaS是Functions as a Service的简称,代表业务方视角,...
  • 游戏服务器架构,配置

    千次阅读 2018-01-28 15:05:18
    游戏服务器架构 实验时间:2009-03-18 实验人:小风 实验名称:游戏服务器架构之《奇迹》 实验任务和目标:自己当GM做游戏服务器 以奇迹服务器为例:其他游戏原理一样!! 实验环境描述:SQL server2005 和windows...
  • 参考文章:【服务器架构】十张图带你了解大型网站架构
  • 后台服务器架构设计要点

    千次阅读 2018-12-22 10:49:08
    想做后台服务器架构设计,要把握以下几个因素 1. 要处理多大的数据量 2. 有多少种的数据 3. 延迟有多高 4. 要不要处理通知 通常情况下,数据种类越多,数据量越大,系统架构越复杂; 比如 处理 百万级的请求 一台...
  • 游戏服务器架构文档

    千次阅读 2016-09-05 15:58:29
    不少同学或朋友都问过我,Java做游戏服务器跟Java web有什么不同,趁着这次这个游戏差不多完工,我写了一个服务器架构的文档,当然,每个人都能设计不同的架构,有好的有坏的,我这里给的只是我个人的一种设计,其中...
  • SQLServer 服务器架构迁移

    千次阅读 2016-03-24 10:32:38
    最近服务器架构迁移,将原来的服务器架构迁移到新的服务器,新的服务器在硬件方面比之前更好!原来服务器使用双向同步,并且为水平划分到多个数据库服务器。迁移过程中,数据库方面涉及到数据一致性,帐号,重新划更...
  • 服务器的三条要求: 高性能:对于大量请求,及时快速的响应 高可用:7*24 不间断,出现故障自动转移,这叫fail over(故障...一个典型的服务器架构: 注: epoll是linux下最高效的网络I/O 由于服务器需要高效处理
  • MMORPG服务器架构

    千次阅读 2012-07-17 10:35:21
    MMORPG服务器架构 一.摘要 1.网络游戏MMORPG整体服务器框架,包括早期,中期,当前的一些主流架构 2.网络游戏网络层,包括网络协议,IO模型,网络框架,消息编码等。 3.网络游戏的场景管理,AI,脚本的应用等。 4...
  • c++分布式游戏服务器架构设计

    千次阅读 2019-09-30 08:58:20
    文章目录一、游戏服务器架构介绍1.1 游戏服务器介绍1.2 服务的划分1.3 服务与服务之间的通讯二、单个服务的并发2.1 多线程并发问题2.2 使用单线程协程并发三、数据库的选择与使用3.1 非关系型数据库-Redis3.2 关系型...
  • 服务器架构简图如下: 连线说明: 实线:表示客户端登录流程,①②③④⑤表示登录流程,详细解释见下文。 虚线:表示服务器间的连接,虚线箭头指向监听方。 架构说明: 英文名称 简称 中文名称 功能简介 单个...
  • 服务器架构的演变过程

    千次阅读 2018-09-02 17:06:53
    服务器架构的演变过程 1,传统单一模式 一个项目系统包含所有的功能,如登录,注册,验证,前台展示,后台管理等,所有的功能在一个项目中实现 缺点: 1)不便于维护,系统的每个功能耦合性太高,如果某一个功能出现...
  • 服务器架构及实战(架构篇) --概述 架构师是什么? 系统架构师(System Architect,简称SA或SAr),是在信息系统研发中,负责依据需求来确定主要的技术选择、设计系统的主体框架结构,并负责搭建实施...
  • 企业海量数据搜索服务器架构
  • 服务器架构类型本系列第3章中,有段落简单介绍过 服务器架构类型。对于IO游戏来说,通常会是大区大服类型本文将详细介绍,大区大服类型的服务器架构架构图 后缀(N),代表可以多开 绿色框,代表各类服务都会去连接 ...
  • 作者 | Systango,译者 | 无明。策划 | 小智Gartner 最近的一份报告表明:到 2020 年,全球将有 20% 的企业部署无服务器架构。这说明无服务器架构不只是一个流行...
  • 业界IM服务器架构

    2011-12-26 19:33:05
    业界的IM消息服务器架构是怎么样的。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 81,910
精华内容 32,764
关键字:

服务器架构