服务热线:400-0033-166
万商云集 - 企业数字化选用平台

企业首选的

数字选用平台

学习和掌握构建大型网站的架构,抓住以下几个主题

2021-01-12 10:00:42 阅读(272 评论(0)

学习和掌握构建大型网站的结构,需要总结分散的文章,整理分散的内容。做好这项工作很有意义,但也很难。我们的经验是,我们不妨把握以下主题,逐一分析大型网站的实例,然后横向比较。1.Database数据存储一直很麻烦,特别是当需要存储大量数据时,单个数据库的容量往往不够,甚至一个数据库集群也不够。常见的解决方案是分割,例如根据用户ID将海量数据分割成若干块,每一块都存储在一个独立的数据库中。但是分割的做法降低了join操作的效率。GoogleBigtable的效率如何?什么是好处,什么是缺陷?什么样的场景最适合Bigtable?基于Bigtable原理实现的开源软件,Hadoop/HBase的运行效率如何?2.Cache用户访问网站时,通常比写作更频繁地阅读操作。为了提高阅读操作,不妨将相关内容缓存到内存中,减少DiskIO的消耗。Memcached最近很热,Wikipedia,YouTube,Digg,Twitter等大型网站都使用Memcached作为缓存工具。SquidCache、Varnish等工具也与缓存有关。Twitter的做法是将Memcached和Varnish结合起来,同时使用。什么样的内容,应该使用什么样的缓存工具?如何协调不同工具之间的协调?各大网站实际运营的经验教训是什么?3.Filesystem既不需要存储在数据库中,也不适合存储在缓存中,如log和images。在这种情况下,我们需要文件系统。当文件系统中需要存储大量内容时,我们需要使用分布式文件系统。GoogleFilesystem适用于什么样的场景,不适用于什么样的场景?分布式文件系统往往需要相应的锁定机制,以确保并发读写操作不会相互干扰。Chubby有什么好处?在什么情况下不适用?据说MogileFS更适合存储大量但单体尺寸较小的文件,如images。GoogleFilesystem更适合存储大尺寸但数量少的文件。是否有可能将小尺寸的多个文件合并成大文件,然后存储在谷歌Filesystem中。在这种情况下,MogileFS和GogleFS的性能有什么区别吗?4.一套ThreadManagement工序通常由多个任务组成。多线程的方法是一个线程完全负责整个过程的操作。另一种方法是将过程切割成几段,每段由一条或几条线程负责,称为工作台。多线程的方法很常见。但工作台的做法有利于集中计算资源处理繁重任务,避免瓶颈。但缺陷是,记录中间状态的数据需要在不同的线程之间传输。什么样的情况适合多线程,什么时候使用工作台?5.Scheduler通常在同一个网站上提供多种服务,不同的服务需要调用不同的业务逻辑。在同一台服务器上可以完成一些业务逻辑,但当业务逻辑复杂时,需要调用多台服务器进行合作。不同服务的受众对象不同,流量不同,流量不同,服务流量不同,需要动态分配计算资源。这是scheduler的工作。当Scheduler将工作分配给不同的服务器时,最简单的方法是启动预先安装在服务器上的相关程序。因为不能保证每个程序都是完美的,所以当一个程序出现错误时,应该避免整个服务器崩溃,影响其他工作的正常进行。是否需要使用virtualmachine来实现不同工作之间的隔离?6.Signalflowdataflow大型网站的后台系统往往由许多服务器组成,数据交换不时发生在服务器和服务器之间。例如,在WebServer分析用户请求后,请求转发给应用程序Server。在完成部分工作后,该应用程序Server将中间数据转发给下一个应用程序Server。而且第二个AppServer完成任务后,整个工作就结束了,结果应该还给WebServer。问题是如何让第一个Appserver知道中间结果应该给第二个Appserver,而第二个Appserver如何知道其目的地是webserver?一种更有效的方法是区分数据流和控制流。Server和Server之间的常设通道,专门用于控制流,并传递控制数据流发送的指令。数据流不占用控制流通道,只有在需要时才能建立数据流通道。为了优化设计,减少带宽消耗,缩短数据传输时间,需要结合具体的业务逻辑来控制流和数据流的组织。7.Instrumentation网站后台的各个部分是否正常运行,瓶颈在哪里,空闲在哪里。这些都需要实时监控。既能及时避免整个后台系统的崩溃,又能分析各部分的运行规律,从而找到优化系统的途径。问题是,为了减少对系统程序的干扰,同时提供有价值的信息,应该选择什么样的监控工具?8.Anti-abuse通常面对各种各样的用户,绝大多数用户都很友好,但不排除少数用户故意恶作剧。若事先没有设计预防措施,少数恶意用户的胡作非为,会干扰其他用户享受正常服务。问题是,如何及时预防和制止恶意行为的发生?9.ExceptionHandling,无论预设有多仔细,在实际操作中都会遇到这样那样的事故。比如敏感词的出现,往往事先没有征兆。因此,在设计系统架构时,应为网络管理提供必要的工具,以应对突发事件。

内容来源:网络,以上内容来源于网络,不代表本站观点,如有侵权,请联系删除。

推荐阅读

什么是高并发、高性能、高可用?

  优质答案(1)  感谢邀请!  具有独立开发的能力的程序员顾名思义就是相当于全栈,像以前的老项目很多都是这样,后端程序员又当爹又当妈,既要自己写前端页面样式,又要编写后台核心代码。  但是个人经验来说,具有独立开发能力的程序员也分两种:…查看详情

员工和老板挑选的项目管理软件有什么区别?

现在项目管理软件在企业中使用的越来越广泛,因为项目管理软件可以轻松掌握整个项目的进度,对项目起到监督和管理的作用,大大的提升了项目管理的效率,所以很多企业在项目开发、建设的时候都会使用项目管理关键来帮助企业更科学、规范的管理项目。企业要使用…查看详情

键盘失灵怎么办?

  优质答案(1)  键盘菜单键失灵表现为系统闪退,原因和解决方法如下  2、运行程序过多  如果不进行设置,很多软件都会自己运行,而手机后台程序过多会造成内存不足,从而造成应用闪退。如出现软件闪退,可先清理内存后再试试。  3、手机杀毒软…查看详情

【开网店如何运营】互联网转型和电商创业失败的主要原因有这两点

“互联网+”是未来发展大趋势,是无可置疑的概念。然而这个概念爆火,很多时候并不是成功率很高,相反,进行选择互联网转型或电商创业的成功概率并不是那么理想。而,其中主要的原因是什么?开网店如何运营才能稳步前行呢?图片来源于网络企业进行互联网转型…查看详情

企业如何利用知识产权改革发展契机,稳固市场并寻求新发展?

十八大以来,知识产权保护工作就提升到了国家战略层面,国内知识产权保护体系也开启了加速模式,中央出台了一系列重大政策、行动和规划,以引导知识产权事业发展。这是基于国际形势的发展需求,也是社会创新活力和市场营商环境发展的共同需求。各地在规范管理…查看详情

如何打造一款有用的酒店小程序

酒店和餐饮行业面临着同样的互联网发展问题:过度依赖线上平台。一旦平台提高点数,酒店自身运营的租金、人员管理费用就会成为困扰。小程序的出现,逐渐让酒店、餐饮商家找到新的突破方向。1、设置附近的小程序,宣传酒店企业文化设置附近的小程序,让客人可…查看详情

sqrt函数怎么用

开根号函数在excel里怎么输入?在Excel中,要使用开根号函数可以使用SQRT函数。该函数可以计算一个数的平方根。 下面是使用SQRT函数的方法: 1.选定一个单元格作为结果输出的位置。 2.输入“=SQRT(数字)”并按下回车键…查看详情

浏览器字体大小如何设置 浏览器字体大小设置方法

  在平时的生活工作中浏览器是我们经常用到的,很多的小伙伴会遇到浏览器字体的相关问题,有时我们会发现浏览器字体突然变得好小,这样看着很不舒服。下面万商云集小编给大家来详细介绍一下浏览器字体大小如何设置 浏览器字体大小设置方法这一块的内容…查看详情

好用的杀毒软件有哪些 最好的杀毒软件

  个人电脑安全的话题与个人电脑本身一样古老。无数的病毒、恶意软件或网络钓鱼使得在每台Windows 电脑上使用防病毒程序不可避免。全球杀毒软件市场每年约为400 亿美元,不可小觑。与此相应,竞争也非常激烈。因此,为自己的计算机选择理想…查看详情

如何在手机上建立自己的网站

现在移动互联网是越来越发达了,很多的用户都在移动端获取信息,下面万商云集小编就给大家来介绍一下如何在手机上建立自己的网站,希望能帮助到大家。  1、手机网站的兼容性问题  现在市场上不同的智能手机有不同的屏幕尺寸,很多用户使用的是不同的搜索…查看详情

sql server数据库下载

sqlserver安装具体步骤?SQLserver的安装 一、SQLserver的安装步骤 1.SQLserver的下载:官网下载网址 下载Developer版本即可。 2.运行完成后安装类型选择“基本”,之后选择合适的语言和安…查看详情

励志书籍排行榜前十名,能激励人的几本书

在人生的历程中,总会经历很多的困难,也属于人生的考验了,只有大家经历了考验,才能够学习更多的能力,同时也可以证明自己的实力,如果感觉生活非常的困苦,那么不妨读一些励志的书籍吧,下面就为大家介绍励志书籍排行榜前十名。 1、人…查看详情

php的trim是什么意思

TRim是什么意思?TRim是一个英语单词,其主要含义是"修剪",通常用于描述修剪物体的某个部分,使其变得更加整洁和有序。这个词最常见的用法是在描述修剪植物、树木、草坪和花园等景观,以使其外观更加美观可观。 除此之外,TRim还可以用于描…查看详情

小程序设计一般用什么软件

小程序设计是指开发和设计微信小程序的过程,通常需要使用以下软件和工具:1. 开发工具:微信开发者工具是设计和开发小程序的主要工具。它提供了一个集成开发环境(IDE),使开发人员能够编写代码、调试和预览小程序的效果。微信开发者工具支持多种操作…查看详情

小程序直播平台具有哪些优势?四大优势让你选择小程序这个平台

现在小程序的发展可以说是比较好的很多的企业,包括个人也都会制定一个小程序,尤其是很多直播行业都会选择小程序直播平台,其实小程序直播平台也是具有很大优势的,在使用之前也应该要多了解,这样才能够更好的运用,那么小程序,直播平台具有哪…查看详情

最新文章