精华内容
参与话题
问答
  • 简单搭建分布式计算

    万次阅读 2018-12-11 11:50:02
    #主机控制代码 import multiprocessing import multiprocessing.managers import random,time from multiprocessing import Queue 任务队列 task_queue=Queue() 结果队列 ...def return_t...

    #主机控制代码

    import multiprocessing
    import multiprocessing.managers
    import random,time
    from multiprocessing import Queue
    # 任务队列
    task_queue=Queue()
    # 结果队列
    result_queue=Queue()
    
    # 提供给从机调用后得到队列中的数据
    # 就是接口
    def return_task():
    	return task_queue
    def return_result():
    	return result_queue
    class QueueManager(multiprocessing.managers.BaseManager):
    	pass
    if __name__=="__main__":
    	# 开启分布式支持
    	multiprocessing.freeze_support()
    	# 注册可以访问队列并得到结果的函数
    	QueueManager.register('get_task',callable=return_task)
    	QueueManager.register('get_result',callable=return_result)
    	manager=QueueManager(address=('192.168.72.135',8888),authkey='password'.encode('utf-8'))
    	manager.start()
    	task=manager.get_task()
    	result=manager.get_result()
    	for i in range(1000):
    		print('task add data')
    		#将任务放入队列
    		task.put(i)
    		print('watting for ____')
    	for i in range(1000):
    	       #将结果从队列中取出
    		res=result.get()
    		print('get_data',res)
    	manager.shutdown()
    
    ×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
    ×××××××××××××××××××××
    
    import multiprocessing
    import multiprocessing.managers
    import random,time
    from multiprocessing import Queue
    
    class QueueManager(multiprocessing.managers.BaseManager):
    	pass
    if __name__=="__main__":
    	# 开启分布式支持
    	multiprocessing.freeze_support()
    	# 注册可以访问队列并得到结果的函数
    	QueueManager.register('get_task')
    	QueueManager.register('get_result')
    	manager=QueueManager(address=('192.168.72.135',8888),authkey='password'.encode('utf-8'))
    	manager.connect()
    	task=manager.get_task()
    	result=manager.get_result()
    	for i in range(1000):
    		try:
    		#从队列中取出任务
    			data=task.get()
    			print('client_get',data)
    #处理计算任务将结果放入队列中			result.put('client'+str((data+10)))
    		except:
    			pass
    

    上面是单一任务可开启多个从机来处理数据由于每个从机取出任务后该任务就会在队列中消失
    所以每个任务只能给一个从机处理所以不会造成任务重复

    另外还可以定义不同算法的从机,但在此时也因该定义不同算法的主机来控制接受数据
    所以有一个命令主机程序负责控制不同算法队列 该任务队列是将控制不同算法的输入队列的开启和控制每个从机的不同算法的开启 在自己本地执行接到的某一算法处理程序

    在这里插入图

    控制程序和算法程序除了端口和加入队列的数据不同都是一样的
    算法程序被控制程序启动 无论是主机上还是从机上
    只不过是主机上是当控制程序的命令加入队列后就立即启动了所有加入队列被控制的算法程序
    待每个从机从控制队列中拿到命令那个算法由自己执行后便开启了响应的算法
    每个从机都有所有的算法处理程序无论是接到处理什么的任务都可以处理
    且每个从机都拥有控制从机程序从控制队列中获取任务
    每个算法程序独立一个端口独立一个队列对应一个独立的从机程序
    

    队列的多样性使得 此方法 更加强大 能将多任务多机合作进行白百分百的发挥
    效率一般高效

    展开全文
  • 分布式计算

    2019-12-02 14:06:03
    一、什么是分布式计算?   分布式计算是一门计算机科学,主要研究对象是分布式系统。在介绍分布式计算概念前,首先简单了解一下什么是分布式系统。简单地说,一个分布式系统是由若干通过网络互联的计算机组成的软...

    一、什么是分布式计算?

      分布式计算是一门计算机科学,主要研究对象是分布式系统。在介绍分布式计算概念前,首先简单了解一下什么是分布式系统。简单地说,一个分布式系统是由若干通过网络互联的计算机组成的软硬件系统,且这些计算机互相配合以完成一个共同的目标(往往这个共同的目标称为“项目”)。
       分布式计算指在分布式系统上执行的计算。分布式计算是将一个大型计算任务分成很多部分分别交给其他的计算机处理,并将所有的计算结果合并为原问题的解决方案。这里与并行计算不同的是,并行计算是使用多个处理器并行执行单个计算。

    二、分布式计算的优缺点

    1.优点:
    超大规模
    虚拟化
    高可靠性
    通用性
    高可伸缩性
    按需服务
    极其廉价
    容错性
    2.缺点·:
    多点故障(一台或多台计算机的故障,或一条或多条网络链路的故障,都会导致分布式系统出现问题)
    安全性(分布式系统为非授权用户的攻击提供了更多机会)

    三、分布式计算的相关计算形式

      与分布式计算类似的计算形式有很多,例如单机计算、并行计算、网络计算、网格计算和云计算等。

    单机计算:是最简单的计算形式,即利用澹台计算机不与任何网络互连,只能使用本计算机系统内的的所有资源。一台计算机在任何时刻只能被一个用户使用。用户在该系统上执行应用程序,不能访问其他计算机上的任何资源。
    并行计算:是指在并行计算机上所做的计算,即采用多个处理器来执行单个指令。
    网络计算:是把网络连接起来的个各种自治资源和系统组合起来,以实现资源共享、协同工作和联合计算。
    网格计算:是指利用互联网把地理上广泛分布的各种资源(计算、存储、带宽、软件、数据、信息、知识等)连成一个逻辑整体,就像一台超级计算机一样,为用户提供一体化信息和应用服务(计算、存储、访问等)。
    云计算:是分布式计算、并行计算、效用计算、 网络存储、虚拟化、负载均衡、热备冗余等传统计算机和网络技术发展融合的产物。
    云计算的提出
    提出者:Google工程师,比希利亚,27岁。
    出发点:推广Google超级强大的计算资源,招贤纳士 。
    结果:蜂拥而至,名噪一时,被视为“云”的起源。

    四、分布式系统的特征

    可靠性:指一个分布式系统在它的某一个或多个硬件的软件组件造成故障时,仍能提供服务的能力。
    可扩展性:指一个系统为了支持持续增长的任务数量可以不断扩展的能力。
    可用性:指一个系统尽可能地限制系统因故障而暂停的能力。
    高效性:指一个分布式系统通过分散的计算资源来实现任务执行的高效率。

    展开全文
  • 何为分布式计算

    千次阅读 2016-03-22 15:26:44
    分布式计算是当前计算机领域常见的名词,那么到底什么事分布式,什么又是分布式计算呢?今天和大家共同研究一下这个话题。定义 一个分布式系统是由若干通过网络互联的计算机组成的硬件系统,而且者系计算机互相配合...

      分布式计算是当前计算机领域常见的名词,那么到底什么事分布式,什么又是分布式计算呢?今天和大家共同研究一下这个话题。

    定义

      一个分布式系统是由若干通过网络互联的计算机组成的硬件系统,而且者系计算机互相配合以完成共同的目标。分布式计算的一种简单定义是在分布式系统上执行的计算。更为正式的定义是,分布式计算研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机处理,最后把各部分的计算结果结合起来得到最终的结果。归其本质其实体现了一种算法的精髓:分而治之。

      这其实跟我们生活中是一样的,比如城市排污问题,在没有下水道的情况下,每家每天都会产生很大废水。假如说每家把废水都到处乱泼,显然是不合理的,但是如果让政府单独为每家都处理废水也是有点不太现实。因此这时候就需要各小区的物业了,每个小区物业给装好下水道,每家的下水道通过自己的管道集中到小区总的管道,各小区的管道又汇总到整个城市的管道,最后来统一处理。这样就是一个分而治之的思想,也是我们分布式计算的思想。

    分布式计算的优缺点

      一种新科技的兴起就会伴随着正负两方面影响,下面简单介绍一些分布式计算的优缺点。

    优点

      低廉的计算机价格和网络访问的可用性。现在计算机的价格普遍可以接受,网络相当普及,大量互联计算机为分布式计算穿件了一个理想的环境。

      资源共享,采用分布式可以有效地汇集资源。

      可伸缩性,对资源需求的增加可以通过提供额外资源来有效解决。

    缺点

      多故障点,分布式计算涉及多台计算机,而且都依赖于网络通信,因此一台或多台计算机以及一条或多条网络出现问题,都会影响分布式系统,而且一旦出现问题不易排除。

      安全性低,分布式系统为非授权用户的攻击提供了更多机会。非集中式管理使安全策略的实现和增强变得更为困难。

    分布式计算的相关计算形式

    单机计算

      单机计算是最简单的计算形式,就是利用单台计算机进行计算,不用连接任何网络,因此只能使用本计算机系统内可以被即时访问的资源。

    并行计算

      并行计算是相对于串行计算的概念,指在并行计算机上所做的计算,即采用多个处理器来执行命令。并行计算机可分为时间上并行和空间上并行。

    网络计算

      网络计算是一个比较广泛的概念,

    利用互联网把地理上广泛分布的各种资源连成一个逻辑整体,就像一台超级计算机。其核心思想是把网络连接起来的各种自治资源和系统组合起来,以实现资源共享、协同工作和联合计算,为各种用户提供基于网络的各类综合性服务。

    云计算

      云计算包含两层含义,一是商业层面,以云的方式提供服务;二是技术层面,即各种客户端的计算都有网络负责完成。通常云计算是指由网络计算、分布式计算、并行计算、效用计算等传统计算机和网络技术融合而成的一种商业计算模型。当前云计算主要形式包括基础设施即服务(IaaS)、平台即服务(PaaS)、和软件即服务(SaaS)。云计算强调专有,即请求或获取的资源是专有的,并且由少数团体提供、使用者不需要贡献自己的资源。

    展开全文
  • 分布式存储 与分布式计算

    千次阅读 2016-10-20 15:26:31
    分布式存储 与分布式计算

    这里写图片描述

    分布式存储 与分布式计算

    展开全文
  • 什么是分布式计算?所谓分布式计算是一门计算机科学,它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终的结果...
  • 分布式计算泛型

    千次阅读 2016-03-26 10:46:46
    今天和大家共同学习一下分布式计算泛型,分布式计算泛型总共可划分为五大类共九种常见泛型,接下来一一介绍。一、消息相关 消息相关的泛型包括消息传递泛型和消息系统泛型。1.消息传递泛型 消息传递是进程之间互相...
  • 并行计算vs分布式计算

    千次阅读 2014-06-17 20:57:53
    一般认为,集中在同一个机柜内或同一个地点的紧密耦合多处理机系统或大规模并行处理系统是并行处理系统,而用局域网或广域网连接的计算机系统是分布式处理系统。松散耦合并行计算机中的并行操作系统有时也称为分布式...
  • 分布式计算框架与分布式文件系统是两个概念。分布式计算框架是用于处理大数据的一种模型,而分布式文件系统可以用于大数据的存储。 一、分布式计算框架 对于如何处理大数据,计算机科学界有两大方向:一是集中式计算...
  • 分布式存储与分布式计算

    千次阅读 多人点赞 2019-03-19 10:04:53
    3、黄金搭档:分布式存储+分布式计算 这篇文章聊一个话题:什么是分布式计算系统? (1)从一个新闻门户网站案例引入 现在很多同学经常会看到一些名词,比如分布式服务框架,分布式系统,分布式存储系统...
  • 在这个数据爆炸的时代,产生的数据量不断地在攀升,从Gb,Tb,Pb,Zb.挖掘其中数据的价值也是企业在不断地追求的终极目标。但是要想对海量的数据
  • 并行计算和分布式计算有什么区别?谁能通俗易懂的讲解一下~谢谢啦
  • 常用分布式计算任务调度算法

    万次阅读 多人点赞 2019-05-10 10:12:38
    随着大规模并行分布处理系统,特别是网络工作站集群的广泛应用。如何采取有效的调度策略来平衡各节点的负载,从而提高整个系统资源的利用率,已成为人们的研究热点。 集群具有可扩展性、 高可用性、高性能、高性价比...
  • 分布式计算概念

    千次阅读 2018-06-09 16:12:18
    1.分布式计算的定义 分布式计算是一门计算机科学,主要研究对象是分布式系统。 分布式系统是由若干通过网络互联的计算机组成的软硬件系统[1],且这些计算机互相配合以完成一个共同的目标(往往这个共同的目标...
  • 分布式计算任务调度算法总结

    万次阅读 2019-02-20 17:08:55
    我们在寻求分布式计算调度算法时,就是有针对性的以解决这些问题为目的,从各个角度,不同侧面,利用一种或者集中方法结合起来的形式,从而达到最优解,使得系统效率相对最高。 二、几种基本的调度算法 获得网络负载...
  • 分布式计算框架

    千次阅读 2019-02-11 11:55:06
    分布式计算框架 Hadoop是基础,其中的HDFS提供文件存储,Yarn进行资源管理。在这上面可以运行MapReduce、Spark、Tez等计算框架。 MapReduce:是一种离线计算框架,将一个算法抽象成Map和Reduce两个阶段进行处理,...
  • 分布式计算概述

    2019-11-29 17:12:10
    **分布式计算是当前计算机领域常见的名词,那么到底什么是分布式,什么又是分布式计算呢?今天和大家共同研究一下这个话题。** 分布式计算的概念 一个分布式系统是由若干通过网络互联的计算机组成的软硬件系统,且...
  • 先说分布式计算和并行计算的异同: 解决对象上:都是大任务化为小任务,这是他们共同之处。 但是分布式的任务包互相之间有独立性,上一个任务包的结果未返回或者是结果处理错误,对下一个任务包的处理几乎没有什么...
  • 1.分布式计算和并行计算的异同:  解决对象上:都是大任务化为小任务,这是他们共同之处。  但是分布式的任务包互相之间有独立性,上一个任务包的结果未返回或者是结果处理错误,对下一个任务包的处理几乎...
  • 分布式计算实例

    千次阅读 2018-08-06 22:19:49
    分布式计算实例 July 2, 2017交易基础haotrader 本文介绍分布式计算的基本思路和关键实例代码。 Haotrader的分布式计算在之前已经说过。这篇再详细介绍一下,增加了一些必要的功能,使回测基本可以在一种CS架构下...
  • 分布式计算概论

    2017-04-27 19:55:16
    分布式计算是由若干通过网络互联的计算机组成的软硬件系统。更正式的是,分布式计算是需要非常巨大的计算机能力才能解决的问题分为许多小的部分,然后把这些部分分配给许多计算机处理进行,最后把各部分的计算结果...
  • 关于分布式计算的一些概念

    万次阅读 2018-06-03 14:56:53
    整理自《架构解密从分布式到微服务》第七章——聊聊分布式计算。 前言 不管是网络、内存、还是存储的分布式,它们最终目的都是为了实现计算的分布式:数据在各个计算机节点上流动,同时各个计算机节点都能以某种...

空空如也

1 2 3 4 5 ... 20
收藏数 392,715
精华内容 157,086
关键字:

分布式计算