您当前的位置:首页 > 电脑百科 > 程序开发 > 架构

大数据基础架构Hadoop

时间:2023-01-29 16:56:42  来源:网易号  作者:互联网资讯看板

导读:大数据正在成为经济社会发展的新的驱动力。随着云计算、移动互联网等网络新技术的应用和发展,社会信息化进程进入大数据时代,海量数据的产生与流转成为常态。而大数据技术也如雨后春笋般正在蓬勃发展中。Hadoop分布式架构无疑是当前应用最广泛、最具代表性的大数据技术之一。

Hadoop生态系统

01

Hadoop技术概述

在大数据时代,针对大数据处理的新技术也在不断地开发和运用中,并逐渐成为数据处理挖掘行业广泛使用的主流技术。Hadoop作为处理大数据的分布式存储和计算框架,已在国内外大、中、小型企业中得到了广泛应用。学习Hadoop技术是从事大数据行业工作必不可少的一步。

1Hadoop的发展历史

Hadoop是由Apache的Lucence项目创始人道格·卡廷创建的,Lucence是一个应用广泛的文本搜索系统库。Hadoop起源于开源的网络搜索引擎Nutch,Nutch本身也是Lucence项目的一部分。Hadoop的发展历史如图1所示。

图1 Hadoop的发展历史

2Hadoop的特点

Hadoop是一个能够让用户轻松搭建和使用的分布式计算平台,能够让用户轻松地在Hadoop上开发和运行处理海量数据的应用程序。Hadoop的主要特点如下。

1)高可靠性。Hadoop的数据存储有多个备份,集群部署在不同机器上,可以防止一个节点宕机造成集群损坏。当数据处理请求失败时,Hadoop将自动重新部署计算任务。

2)高扩展性。Hadoop是在可用的计算机集群间分配数据并完成计算任务的。为集群添加新的节点并不复杂,因此可以很容易地对集群进行节点的扩展。

3)高效性。Hadoop可以在节点之间动态地移动数据,在数据所在节点进行并行处理,并保证各个节点的动态平衡,因此处理速度非常快。

4)高容错性。Hadoop的分布式文件系统HDFS在存储文件时将在多台机器或多个节点上存储文件的备份副本,当读取该文件出错或某一台机器宕机时,系统会调用其他节点上的备份文件,保证程序顺利运行。

5)低成本。Hadoop是开源的,即不需要支付任何费用即可下载并安装使用,节省了购买软件的成本。

6)可构建在廉价机器上。Hadoop不要求机器的配置达到极高的标准,大部分普通商用服务器即可满足要求,通过提供多个副本和容错机制提高集群的可靠性。

7)Hadoop基本框架是基于JAVA语言编写的。Hadoop是一个基于Java语言开发的框架,因此运行在linux系统上是非常理想的。Hadoop上的应用程序也可以使用其他语言编写,如C++和Python/ target=_blank class=infotextkey>Python。

3Hadoop存储框架—HDFS

HDFS是一种旨在普通硬件上运行的分布式文件系统,与现有的分布式文件系统有许多相似之处,但也存在明显的区别。HDFS具有非常好的容错能力,旨在部署在低成本硬件上。HDFS支持对应用程序数据进行高吞吐量访问,并且适用于具有海量数据集的读写。HDFS是Hadoop的核心组件之一,用于存储数据。

HDFS简介及架构

HDFS是以分布式进行存储的文件系统,主要负责集群数据的存储与读取。分布式系统可以划分成多个子系统或模块,各自运行在不同的机器上,子系统或模块之间通过网络通信进行协作,以实现最终的整体功能。利用多个节点共同协作完成一项或多项具体业务功能的系统即为分布式系统。

HDFS作为一个分布式文件系统,其分布式主要体现在如下3个方面。

1)HDFS并不是一个单机文件系统,而是分布在多个集群节点上的文件系统。节点之间通过网络通信进行协作,提供多个节点的文件信息,使每个用户均可以看到文件系统的文件,使多台机器上的多用户可以分享文件和存储空间。

2)当存储文件时,文件的数据将分布在多个节点上。数据存储不是按一个文件存储,而是将一个文件分成一个或多个数据块进行存储。数据块在存储时并不是都存储在一个节点上,而是被分别存储在各个节点中,并且数据块会在其他节点存储副本。

3)数据从多个节点读取。读取一个文件时,从多个节点中找到该文件的数据块,分别读取所有数据块,直至最后一个数据块读取完毕。

HDFS是一个主/从(Master/Slave)体系架构的分布式文件系统。HDFS支持传统的层次型文件组织结构,使得用户或应用程序可以创建目录,再将文件保存至目录中。文件系统命名空间的层次结构和大多数现有的文件系统类似,可以通过文件路径对文件执行创建、读取、更新和删除操作。HDFS的基本架构如图2所示。

2Hadoop的特点

Hadoop是一个能够让用户轻松搭建和使用的分布式计算平台,能够让用户轻松地在Hadoop上开发和运行处理海量数据的应用程序。Hadoop的主要特点如下。

1)高可靠性。Hadoop的数据存储有多个备份,集群部署在不同机器上,可以防止一个节点宕机造成集群损坏。当数据处理请求失败时,Hadoop将自动重新部署计算任务。

2)高扩展性。Hadoop是在可用的计算机集群间分配数据并完成计算任务的。为集群添加新的节点并不复杂,因此可以很容易地对集群进行节点的扩展。

3)高效性。Hadoop可以在节点之间动态地移动数据,在数据所在节点进行并行处理,并保证各个节点的动态平衡,因此处理速度非常快。

4)高容错性。Hadoop的分布式文件系统HDFS在存储文件时将在多台机器或多个节点上存储文件的备份副本,当读取该文件出错或某一台机器宕机时,系统会调用其他节点上的备份文件,保证程序顺利运行。

5)低成本。Hadoop是开源的,即不需要支付任何费用即可下载并安装使用,节省了购买软件的成本。

6)可构建在廉价机器上。Hadoop不要求机器的配置达到极高的标准,大部分普通商用服务器即可满足要求,通过提供多个副本和容错机制提高集群的可靠性。

7)Hadoop基本框架是基于Java语言编写的。Hadoop是一个基于Java语言开发的框架,因此运行在Linux系统上是非常理想的。Hadoop上的应用程序也可以使用其他语言编写,如C++和Python。

3Hadoop存储框架—HDFS

HDFS是一种旨在普通硬件上运行的分布式文件系统,与现有的分布式文件系统有许多相似之处,但也存在明显的区别。HDFS具有非常好的容错能力,旨在部署在低成本硬件上。HDFS支持对应用程序数据进行高吞吐量访问,并且适用于具有海量数据集的读写。HDFS是Hadoop的核心组件之一,用于存储数据。

HDFS简介及架构

HDFS是以分布式进行存储的文件系统,主要负责集群数据的存储与读取。分布式系统可以划分成多个子系统或模块,各自运行在不同的机器上,子系统或模块之间通过网络通信进行协作,以实现最终的整体功能。利用多个节点共同协作完成一项或多项具体业务功能的系统即为分布式系统。

HDFS作为一个分布式文件系统,其分布式主要体现在如下3个方面。

1)HDFS并不是一个单机文件系统,而是分布在多个集群节点上的文件系统。节点之间通过网络通信进行协作,提供多个节点的文件信息,使每个用户均可以看到文件系统的文件,使多台机器上的多用户可以分享文件和存储空间。

2)当存储文件时,文件的数据将分布在多个节点上。数据存储不是按一个文件存储,而是将一个文件分成一个或多个数据块进行存储。数据块在存储时并不是都存储在一个节点上,而是被分别存储在各个节点中,并且数据块会在其他节点存储副本。

3)数据从多个节点读取。读取一个文件时,从多个节点中找到该文件的数据块,分别读取所有数据块,直至最后一个数据块读取完毕。

HDFS是一个主/从(Master/Slave)体系架构的分布式文件系统。HDFS支持传统的层次型文件组织结构,使得用户或应用程序可以创建目录,再将文件保存至目录中。文件系统命名空间的层次结构和大多数现有的文件系统类似,可以通过文件路径对文件执行创建、读取、更新和删除操作。HDFS的基本架构如图2所示。

图2 HDFS基本架构

HDFS文件系统主要包含一个NameNode、一个Secondary NameNode和多个DataNode。

(1)NameNode

NameNode用于存储元数据以及处理客户端发出的请求。元数据不是具体的文件内容,它包含3类重要信息。第1类信息是文件和目录自身的属性信息,如文件名、目录名、父目录信息、文件大小、创建时间、修改时间等;第2类信息是记录文件内容存储的相关信息,如文件分块情况、副本个数、每个副本所在的DataNode信息等;第3类信息是用于记录HDFS中所有DataNode的信息,用于DataNode管理。

在NameNode中存放元信息的文件是fsimage文件。在系统运行期间,所有对元数据的操作均保存在内存中,并被持久化到另一个文件edits中。当NameNode启动时,fsimage文件将被加载至内存,再对内存里的数据执行edits文件所记录的操作,以确保内存所保留的数据处于最新的状态。

(2)Secondary NameNode

Secondary NameNode用于备份NameNode的数据,周期性地将edits文件合并到fsimage文件并在本地备份,然后将新的fsimage文件存储至NameNode,覆盖原有的fsimage文件,删除edits文件,并创建一个新的edits文件继续存储文件当前的修改状态。

(3)DataNode

DataNode是真正存储数据的地方。在DataNode中,文件以数据块的形式进行存储。Hadoop 3.x默认128 MB为一个数据块,如果存储一个大小为129 MB的文件,那么文件将被分为两个数据块进行存储。当文件上传至HDFS端时,HDFS会将文件按128MB的数据块大小进行切割,将每个数据块存储至不同的或相同的DataNode并备份副本,一般默认备份3个副本。NameNode负责记录文件的分块信息,以确保在读取该文件时可以找到并整合所有数据块。

HDFS的特点

随着数据量越来越多,传统的单机式文件存储系统已经不能满足日益增长的数据存储需求,分布式文件存储系统—HDFS应运而生。作为分布式文件系统,HDFS能够解决海量数据的存储问题,其优点列举如下。

1)高容错性。HDFS上传的数据会自动保存多个副本,通过增加副本的数量增加HDFS的容错性。如果某一个副本丢失,那么HDFS将复制其他节点上的副本。

2)适合大规模数据的处理。HDFS能够处理GB、TB甚至PB级别的数据,数量级规模可达百万,数量非常大。

3)流式数据访问。HDFS以流式数据访问模式存储超大文件,有着“一次写入,多次读取”的特点,且文件一旦写入,不能修改,只能增加,以保证数据的一致性。

当然HDFS也不是完美的,同样存在局限性,如不适合低延迟数据访问,无法高效存储大量小文件、不支持多用户写入及任意修改文件。

4Hadoop计算引擎—MapReduce

MapReduce是一个分布式运算程序的编程框架,是基于Hadoop的数据分析应用的核心框架。MapReduce的核心功能是将用户编写的业务逻辑代码和自带的组件整合成一个完整的分布式运算程序,并行运行在Hadoop集群上。认识MapReduce分布式计算框架,并了解MapReduce的执行流程,有利于后续的MapReduce编程学习。

MapReduce是Hadoop的核心计算框架,是用于大规模数据集(大于1TB)并行运算的编程模型,主要包括Map(映射)Reduce(规约)两个阶段。

1)当启动一个MapReduce任务时,Map端将会读取HDFS上的数据,将数据映射成所需要的键值对类型并传至Reduce端。

2)Reduce端接收Map端键值对类型的中间数据,并根据不同键进行分组,对每一组键相同的数据进行处理,得到新的键值对并输出至HDFS。

MapReduce作业执行流程如图3所示。

图3 MapReduce作业执行流程图

一个完整的MapReduce过程涉及数据的输入与分片、Map阶段数据处理、Shuffle&Sort阶段数据整合、Reduce阶段数据处理、数据输出等操作。

1)数据的输入与分片。MapReduce过程中的数据是从HDFS分布式文件系统中读取的。文件上传至HDFS时,一般按照128 MB分成若干个数据块,所以在运行MapReduce程序时,每个数据块均会对应一个Map任务。也可以通过重新设置文件分片大小调整Map的个数,在运行MapReduce程序时系统会根据所设置的分片大小对文件重新分片(Split)。

2)Map阶段数据处理。一个程序有一个或多个Map任务,具体由默认存储或分片个数决定。在Map阶段,数据将以键值对的形式被读入,键的值一般为每行首字符与文件最初始位置的偏移量,即中间所隔字符个数,值为该行的数据记录。根据具体的需求对键值对进行处理,映射成新的键值对并传输至Reduce端。

3)Shuffle&Sort阶段数据整合。此阶段是指从Map端输出开始,传输至Reduce端之前的过程。该过程会对同一个Map中输出的键相同的数据先进行整合,减少传输的数据量,并在整合后将数据按照键进行排序。

4)Reduce阶段数据处理。Reduce任务可以有一个或多个,具体由Map阶段设置的数据分区确定,一个分区数据将被一个Reduce处理。针对每一个Reduce任务,Reduce会接收到不同Map任务传来的数据,并且每个Map传来的数据都是有序的。一个Reduce任务中的每一次处理均是针对所有键相同的数据,对数据进行规约,形成新的键值对。

5)数据输出。Reduce阶段处理完数据后即可将数据文件输出至HDFS,输出的文件个数和Reduce的个数一致。如果只有一个Reduce,那么输出只有一个数据文件,默认命名为“part-r-00000”。

5Hadoop资源管理器—YARN

YARN是Hadoop的资源管理器,可以提高资源在集群的利用率,加快执行速率。早期的Hadoop 1.0版本的任务执行效率低下,Hadoop 2.x版本开始引入了YARN框架。YARN框架为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。

Hadoop YARN提供了一个更加通用的资源管理和分布式应用框架。该框架使得用户可以根据自己的需求实现定制化的数据处理应用,既可以支持MapReduce计算,也可以很方便地管理如Hive、HBase、Pig、Spark/Shark等组件的应用程序。YARN的架构设计使得各类型的应用程序可以运行在Hadoop上,并通过YARN从系统层面进行统一管理。拥有了YARN框架,各种应用可以互不干扰地运行在同一个Hadoop系统中,以共享整个集群资源。

YARN框架总体上仍然是主/从结构,在整个资源管理框架中,ResourceManager为Master,NodeManager为Slave,ResourceManager负责对各个NodeManager上的资源进行统一管理和调度。用户提交一个应用程序时,需要提供一个用于跟踪和管理这个程序的ApplicationMaster,ApplicationMaster负责向ResourceManager申请资源,并要求NodeManger启动可以占用一定资源的任务。由于不同的ApplicationMaster被分布到不同的节点上,所以它们之间不会相互影响。

YARN的基本组成框架如图4所示。

图4 YARN的基本组成框架

YARN主要由ResourceManager、Node-Manager、ApplicationMaster和Client App-lication这4个部分构成,具体说明如下。

1)ResourceManager(RM)。一个全局的资源管理器,负责整个系统的资源管理和分配。ResourceManager主要由两个组件构成,即调度器(Scheduler)和应用程序管理器(Applications Manager,ASM)。

调度器负责将系统中的资源分配给各个正在运行的应用程序,不从事任何与具体应用程序相关的工作,如监控或跟踪应用的执行状态等,也不负责重新启动因应用执行失败或硬件故障而产生的失败任务。

应用程序管理器负责处理客户端提交的Job以及协商第一个ContAIner(包装资源的对象)以供ApplicationMaster运行,并且在ApplicationMaster失败时将其重新启动。其中,Container是YARN中的资源抽象,它封装了某个节点上的多维度资源,如内存、CPU、磁盘、网络等。当ApplicationMaster向RM申请资源时,RM为ApplicationMaster返回的资源就是使用Container表示的。YARN会为每个任务分配一个Container,且该任务只能使用该Container中描述的资源。

2)NodeManager(NM)。每个节点上的资源和任务管理器。一方面,NM会定时地向RM汇报本节点上的资源使用情况和各个Container的运行状态;另一方面,NM会接收并处理来自ApplicationMaster的Container启动或停止等各种请求。

3)ApplicationMaster(AM)。在用户提交每个应用程序时,系统会生成一个ApplicationMaster并保存到提交的应用程序里。ApplicationMaster的主要功能如下。

 

  • 与ResourceManager调度器协商以获取资源(用Container表示)。
  • 对得到的任务进行进一步分配。
  • 与NodeManager通信以启动或停止任务。
  • 监控所有任务运行状态,在任务运行失败时重新为任务申请资源并重启任务。

     

4)Client Application。Client Application是客户端提交的应用程序。客户端会将应用程序提交到RM,然后RM将创建一个Application上下文件对象,再设置AM必需的资源请求信息,最后提交至RM。

02

Hadoop应用场景介绍

在大数据背景下,Apache Hadoop作为一种分布式存储和计算框架,已经被广泛应用到各行各业,业界对于Hadoop这一开源分布式技术的应用也在不断地拓展中。了解Hadoop的应用场景,从而可以更深刻地了解Hadoop在实际生活中的应用。

1)在线旅游。目前全球范围内大多数在线旅游网站都使用了Cloudera公司提供的Hadoop发行版,Expedia作为全球最大的在线旅游公司也在使用Hadoop。在国内目前比较受欢迎的一些旅游网站如携程、去哪儿网等也采用了大数据技术对数据进行存储和计算。

2)移动数据。中国移动于2010年5月正式推出大云BigCloud 1.0,集群节点达到了1024个。华为对Hadoop的HA方案及HBase领域也有深入研究,并已经向业界推出了自己的基于Hadoop的大数据解决方案。

3)电子商务。阿里巴巴的Hadoop集群拥有150个用户组、4500个集群用户,为淘宝、天猫、一淘、聚划算、CBU、支付宝提供底层的基础计算和存储服务。

4)诈骗检测。一般金融服务或政府机构会使用Hadoop存储所有的客户交易数据,包括一些非结构化的数据,以帮助机构发现客户的异常活动,预防欺诈行为。例如国内支付宝、微信钱包这类庞大的互联网支付平台,对诈骗、黑客、病毒的防护都十分重视,均使用大数据技术进行诈骗检测,以保障线上资金的安全。

5)IT安全。除企业IT基础机构的管理外,Hadoop还可以用于处理机器生成的数据以便识别出来自恶意软件或网络中的攻击。国内奇虎360安全软件在应用方面也使用Hadoop的HBase组件进行数据存储,缩短了异常恢复的时间。

6)医疗保健。医疗行业也可以使用Hadoop,如IBM Watson技术平台使用Hadoop集群作为语义分析等高级分析技术的基础。医疗机构可以利用语义分析为患者提供医护人员,并协助医生更好地为患者进行诊断。

7)搜索引擎。我们在使用搜索引擎的过程中会产生大规模的数据,此时,使用Hadoop进行海量数据挖掘可以提高数据处理的效率。国外的雅虎已将Hadoop应用到搜索引擎中,国内的百度和阿里巴巴也将Hadoop应用到搜索引擎、推荐、数据分析等多个领域。

8)社交平台。目前网络社交已经成为人们日常生活的一部分,网络社交平台每天产生的数据量十分庞大。腾讯和脸书作为国内外的大型社交平台,在数据库存储方面均利用了Hadoop生态系统中的Hive组件进行数据存储和处理。

03

Hadoop生态系统

Hadoop经过多年的发展,已经形成了一个相当成熟的生态系统。现代生活节奏快速,各行各业无时无刻产生着大量的数据,Hadoop发挥着重要的作用。因为各行各业的需求不同,很多时候需要在Hadoop的基础上进行一些改进和优化,也因此产生了许多围绕Hadoop衍生的工具,逐渐地演变成一个庞大的Hadoop生态系统,如图5所示。

图5 Hadoop生态系统

Hadoop生态系统中常用的组件列举如下,不同的组件分别提供特定的服务。

1)Hive。Hive是建立在Hadoop基础上的数据仓库基础框架,提供了一系列工具,可存储、查询和分析存储在Hadoop中的大规模数据。Hive定义了一种类SQL语言为HQL,该语言编写的查询语句在Hive的底层将转换为复杂的MapReduce程序,运行在Hadoop大数据平台上。

2)ZooKeeper。ZooKeeper主要用于保证集群各项功能的正常进行,并能够在功能出现异常时及时通知集群进行处理,保持数据一致性。ZooKeeper是对整个集群进行监控,可解决分布式环境下的数据管理问题。

3)HBase。HBase是一个针对非结构化数据的可伸缩、高可靠、高性能、分布式和面向列的动态模式数据库。HBase提供了对大规模数据的随机、实时读写访问。同时,HBase中保存的数据可以使用MapReduce进行处理。HBase将数据存储和并行计算很好地结合在一起。

4)Spark。Spark是一种快速、通用、可扩展的大数据处理引擎,继承了MapReduce分布式计算的优点并改进了MapReduce明显的缺点。Spark的中间输出结果可以保存在内存中,因此能更好地适用于数据挖掘与机器学习中迭代次数较多的算法。

5)Flume。Flume是Cloudera提供的一个高可用的、高可靠的、分布式的海量日志采集、聚合和传输系统,适用于日志文件的采集。

6)Kafka。Kafka是一个分布式的基于发布/订阅模式的消息队列,主要应用于大数据实时处理领域。Kafka是一个事件流平台,能够连接其他数据源进行持续的数据导入或导出,并且可以根据需求持久可靠地存储数据。

本文转载于http://blog.itpub.NET/70024420/viewspace-2928855/,作者摘编于Hadoop与大数据挖掘》。



Tags:Hadoop   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
在Linux系统中实现容器化的大规模数据分析平台:Hadoop和Spark
在Linux系统中实现容器化的大规模数据分析平台,我们可以利用Hadoop和Spark这两个强大的开源工具。Hadoop是一个分布式计算框架,适用于处理大规模数据集。它提供了分布式文件系...【详细内容】
2023-12-15  Search: Hadoop  点击:(159)  评论:(0)  加入收藏
Hadoop高可用集群部署
背景生产中Hadoop分布式集群中可能存在着单点故障问题,如果Namenode宕机或是软硬件升级,集群将无法使用,所以进行搭建高可用的来消除单点故障。Hadoop介绍Hadoop集群一般为一个...【详细内容】
2023-11-07  Search: Hadoop  点击:(296)  评论:(0)  加入收藏
Hadoop所有命令详解
FS Shell调用文件系统(FS)Shell命令应使用 bin/hadoop fs 的形式。 所有的的FS shell命令使用URI路径作为参数。URI格式是scheme://authority/path。对HDFS文件系统,scheme是...【详细内容】
2023-09-26  Search: Hadoop  点击:(321)  评论:(0)  加入收藏
Hadoop运行环境搭建
1 虚拟机环境准备采用前面的章节的方式准备三台虚拟机 : 1)ymm工具(1)使用yum安装需要虚拟机可以正常上网,yum安装前可以先测试下虚拟机联网情况[root@hadoop100 ~]# ping www.b...【详细内容】
2023-08-21  Search: Hadoop  点击:(248)  评论:(0)  加入收藏
9个步骤,手把手教你在Windows上安装Hadoop
在 Microsoft Windows 上运行 Apache Hadoop 是比较繁琐的任务,在安装过程中会出现许多错误,最终,大多数用户放弃了通过 Windows 使用 Hadoop,并转而使用基于 Linux 的操作系统...【详细内容】
2023-05-24  Search: Hadoop  点击:(32)  评论:(0)  加入收藏
Hadoop 及Spark 分布式HA运行环境搭建
欲善其事必先利其器,在深入学习大数据相关技术之前,先手动从0到1搭建一个属于自己的本地Hadoop和Spark运行环境,对于继续研究大数据生态圈各类技术具有重要意义。本文旨在站在...【详细内容】
2023-02-21  Search: Hadoop  点击:(116)  评论:(0)  加入收藏
大数据基础架构Hadoop
导读:大数据正在成为经济社会发展的新的驱动力。随着云计算、移动互联网等网络新技术的应用和发展,社会信息化进程进入大数据时代,海量数据的产生与流转成为常态。而大数据技术...【详细内容】
2023-01-29  Search: Hadoop  点击:(186)  评论:(0)  加入收藏
“后Hadoop时代”,大数据从业者如何应对新技术趋势带来的挑战?
作者 | 蔡芳芳采访嘉宾 | 刘京娟、贾扬清、王峰作为开源大数据项目的发端,Hadoop 兴起至今已经超过十五年。在过去这十数年里,开源大数据领域飞速发展,我们见证了多元化技术的...【详细内容】
2022-11-23  Search: Hadoop  点击:(372)  评论:(0)  加入收藏
hadoop集群的搭建、完全分布式运行 一看就会
前期准备模板机准备修改静态IPvim /etc/sysconfig/network-scripts/ifcfg-ens33TYPE="Ethernet"PROXY_METHOD="none"BROWSER_ONLY="no"BOOTPROTO="static" //这里改成stati...【详细内容】
2022-08-27  Search: Hadoop  点击:(413)  评论:(0)  加入收藏
大数据Hadoop之——Zookeeper鉴权认证
一、Zookeeper概述与安装Zookeeper概述与安装请参考我之前的文章:分布式开源协调服务——ZookeeperZookeeper的安装方式有两种,两种方式都会讲,其实大致配置都是一样...【详细内容】
2022-07-15  Search: Hadoop  点击:(3148)  评论:(0)  加入收藏
▌简易百科推荐
对于微服务架构监控应该遵守的原则
随着软件交付方式的变革,微服务架构的兴起使得软件开发变得更加快速和灵活。在这种情况下,监控系统成为了微服务控制系统的核心组成部分。随着软件的复杂性不断增加,了解系统的...【详细内容】
2024-04-03  步步运维步步坑    Tags:架构   点击:(5)  评论:(0)  加入收藏
大模型应用的 10 种架构模式
作者 | 曹洪伟在塑造新领域的过程中,我们往往依赖于一些经过实践验证的策略、方法和模式。这种观念对于软件工程领域的专业人士来说,已经司空见惯,设计模式已成为程序员们的重...【详细内容】
2024-03-27    InfoQ  Tags:架构模式   点击:(16)  评论:(0)  加入收藏
哈啰云原生架构落地实践
一、弹性伸缩技术实践1.全网容器化后一线研发的使用问题全网容器化后一线研发会面临一系列使用问题,包括时机、容量、效率和成本问题,弹性伸缩是云原生容器化后的必然技术选择...【详细内容】
2024-03-27  哈啰技术  微信公众号  Tags:架构   点击:(12)  评论:(0)  加入收藏
DDD 与 CQRS 才是黄金组合
在日常工作中,你是否也遇到过下面几种情况: 使用一个已有接口进行业务开发,上线后出现严重的性能问题,被老板当众质疑:“你为什么不使用缓存接口,这个接口全部走数据库,这怎么能扛...【详细内容】
2024-03-27  dbaplus社群    Tags:DDD   点击:(15)  评论:(0)  加入收藏
高并发架构设计(三大利器:缓存、限流和降级)
软件系统有三个追求:高性能、高并发、高可用,俗称三高。本篇讨论高并发,从高并发是什么到高并发应对的策略、缓存、限流、降级等。引言1.高并发背景互联网行业迅速发展,用户量剧...【详细内容】
2024-03-13    阿里云开发者  Tags:高并发   点击:(8)  评论:(0)  加入收藏
如何判断架构设计的优劣?
架构设计的基本准则是非常重要的,它们指导着我们如何构建可靠、可维护、可测试的系统。下面是这些准则的转换表达方式:简单即美(KISS):KISS原则的核心思想是保持简单。在设计系统...【详细内容】
2024-02-20  二进制跳动  微信公众号  Tags:架构设计   点击:(38)  评论:(0)  加入收藏
详解基于SpringBoot的WebSocket应用开发
在现代Web应用中,实时交互和数据推送的需求日益增长。WebSocket协议作为一种全双工通信协议,允许服务端与客户端之间建立持久性的连接,实现实时、双向的数据传输,极大地提升了用...【详细内容】
2024-01-30  ijunfu  今日头条  Tags:SpringBoot   点击:(21)  评论:(0)  加入收藏
PHP+Go 开发仿简书,实战高并发高可用微服务架构
来百度APP畅享高清图片//下栽のke:chaoxingit.com/2105/PHP和Go语言结合,可以开发出高效且稳定的仿简书应用。在实现高并发和高可用微服务架构时,我们可以采用一些关键技术。首...【详细内容】
2024-01-14  547蓝色星球    Tags:架构   点击:(120)  评论:(0)  加入收藏
GraalVM与Spring Boot 3.0:加速应用性能的完美融合
在2023年,SpringBoot3.0的发布标志着Spring框架对GraalVM的全面支持,这一支持是对Spring技术栈的重要补充。GraalVM是一个高性能的多语言虚拟机,它提供了Ahead-of-Time(AOT)编...【详细内容】
2024-01-11    王建立  Tags:Spring Boot   点击:(128)  评论:(0)  加入收藏
Spring Boot虚拟线程的性能还不如Webflux?
早上看到一篇关于Spring Boot虚拟线程和Webflux性能对比的文章,觉得还不错。内容较长,抓重点给大家介绍一下这篇文章的核心内容,方便大家快速阅读。测试场景作者采用了一个尽可...【详细内容】
2024-01-10  互联网架构小马哥    Tags:Spring Boot   点击:(125)  评论:(0)  加入收藏
站内最新
站内热门
站内头条