基于Hadoop的分布式服务注册中心研究和实现 PDF

2019-03-28 13:36|来源: 网络

随着服务体系架构和服务计算的概念在IT企业内的流行,如何准确地进行服务搜索和服务发现越来越受到重视。当前主要的研究方法是扩展Web服务的描述信息。例如,通过增加服务的语义信息或者服务的服务质量信息来使得服务信息本身更加完善。但是同时这也使得服务的文件内容急剧扩展。此外,成为服务提供者的门槛也在不断降低,这进一步加剧了Web服务数量的增长速度。传统关系型数据库虽然能够满足复杂条件的查询,但是在处理大规模服务数据集时就显得力不从心。因此,Web服务数量的增长给传统服务注册中心带来诸多的挑战,必须提高其数据存储和处理能力,以应对这种挑战。

“云”通常由成千上万的服务器集群组成,具有可动态伸缩的特点,可以为人们提供强大的存储能力和计算能力。云计算的兴起和发展为我们解决大规模服务数据的存储和计算提供了新的思路和方法。在分析了Web服务注册中心和云计算平台的基础上,本文提出了一种建立在云上的分布式服务注册中心的应用模型,称为HDSR (Hadoop-based Distributed Service Registry),它采用了Hadoop云平台来实现。该模型既可以支持基于服务行为的服务发现工作,也可以支持基于服务质量的服务发现工作。

本文重点研究了服务数据的分布式存储与并行查询在Hadoop平台上的实现。在HDSR中,Hadoop分布式文件系统和HBase分布式数据库用来存储服务数据,MapReduce并行计算框架用来处理服务数据。本文所实现的分布式注册中心包括:请求解析模块、基于服务行为的匹配模块和基于服务质量的匹配模块。一条服务请求首先进入请求解析模块,然后被分解为两个子请求,其中,服务的功能性请求进入基于服务行为的匹配模块,而服务的非功能性请求进入基于服务质量的匹配模块。这两个服务匹配模块是系统的核心模块。本文针对该分布式服务注册中心进行了性能评估,实验结果证明了分布式服务注册中心HDSR的可行性和效率。本文最后对研究中存在的问题及有待于进一步研究的课题进行了探讨。

由于当前Web服务的种类和数量迅速增长,所以服务数据的分布式存储与并行处理在Hadoop平台上的成功实施具有重要意义。本文为分布式Web服务注册中心的设计提供了有价值的参考。

关键词:Web服务注册中心 Hadoop MapReduce HBase 分布式系统

免费下载地址在 http://linux.linuxidc.com/

用户名与密码都是www.linuxidc.com

具体下载目录在 /2012年资料/7月/15日/基于Hadoop的分布式服务注册中心研究和实现 PDF/

相关问答

更多
  • 1、能搭好环境说明水平还不错。 2、下边应该分以下几步走: 一,依据示例程序,自己手写wordcount之类的示例程序,以此充分了解m/r和hdfs的简单原理。 二,针对某些知识点,如hadoop应用场景、hadoop的简单应用等,去百度一下搞定,这样的问题最关键、最需要做的。 三,深入阅读hadoop的源码,把框架的数据流或说工作流搞个大致清楚。 四,试着用hadoop解决一些实际问题和项目应用。 参考下吧。
  • 搭建的文本,很久了,现在更新的最新版本搭建更加简单,建议你去看看黑马里边的教程,免费的
  • hadoop集群指的是一群机器在一起提供一个hadoop的集群的服务。 hadoop分布式指的是hadoop支持任务分布式运行,因为有hadoop集群提供服务,所以hadoop将任务分发到集群的多台机器运行,所以叫做分布式。 一个是服务器架构,一个是任务运行架构。
  • 我无法用当前的实现解决关闭MemoryStream的问题,所以我不得不完全重构。 相反,我使用本文所述的PdfFileEditor.Concatenate()方法。 我的实施如下: public byte[] GetPrintContent(List models) { PdfFileEditor pdfEditor = new PdfFileEditor(); MemoryStream ...
  • 抱歉,上面的链接失败了。 最后,我们发现将PDF作为包装在JSON中的二进制数据发送不起作用。 该服务的创建者发现他们的框架正在轻微地操纵二进制数据并转换一些字符。 他们最终切换到Base 64编码,效果很好。 Sorry the above link failed. In the end we found that sending the PDF as binary data wrapped in JSON did not work very well. The creators of the servi ...
  • 看看以下主题。 如何将pdf文件转换为图像 就个人而言,我更喜欢Xfinium PDF Library,因为它也与Mono一起使用,并且非常易于使用。 不过,这是一个商业解决方案 I preferred Xfinium PDF Library as it also worked with Mono and was pretty easy to use. It is a commercial solution, though.
  • 在顶部...... use CAM::PDF; 我假设这将使用整个CAM :: PDF包。 但是,我需要...... use CAM::PDF; use CAM::PDF::PageText; Here at the top... use CAM::PDF; I assumed this will use the whole CAM::PDF package. However, instead I needed... use CAM::PDF; use CAM::PDF::PageText;
  • 你可以使用PHP的文件删除函数unlink() 使用生成的PDF文件(或任何文件)的完整路径调用此函数,PHP将删除该文件。 http://php.net/manual/en/function.unlink.php 用户下载后,您不一定要立即删除该文件。 您可以轻松地将所有生成的文件放在一个中央文件夹中,并让cron作业执行更通用的清理脚本,只需删除旧文件即可。 一种方法可能是 - 使用scandir()扫描文件夹的内容。 在foreach循环中迭代它的文件.. 使用filemtime()检查每个文件的创建 ...
  • 对的,这是可能的。 你可以去这个链接。 https://github.com/mozilla/pdf.js/ 该库用于阅读PDF并使用HTML5构建。 关于此问题还有另一个Stack Overflow问题。 如何使用pdf.js Yes, it is possible. You can go to this link. https://github.com/mozilla/pdf.js/ This library is for reading PDF and and built with HTML5. Th ...
  • 我会说你的代码存在缺陷,不仅仅是一点点,而是很大的时间。 您正在检查是否可以读取文件,如果不是,则重新开始写入同一文件的过程(至少两次)。 在某些时候,您将最终尝试写入同一文件的多个进程,从而导致奇怪的行为。 我会重构printApp方法以返回它创建的Process 。 然后在该进程上调用waitFor 。 如果它返回0并且没有被中断则成功完成并且您应该能够下载该文件。 @RequestMapping(value="/dwn.htm",method=RequestMethod.GET) public voi ...