葡萄城控件旗下网站葡萄城控件旗下网站

LEADTOOLS Distributed Computing SDK

Cloud SDK

LEADTOOLS Distributed Computing SDK为开发者提供完整的框架,开发者可以用来创建功能强大的基于云的应用程序。利用自己已有的服务器网络和工人机器,开发者可以轻松创建任何分布式的,网格计算或并行计算应用程序如:

  • 音频/视频转换和再压缩
  • OCR文字识别
  • 表单识别和处理
  • 条码识别
  • 网页爬虫
  • 分布式图形渲染

使用LEADTOOLS Distributed Computing SDK开发应用,通过使用现有的基础设施可以节省大量的时间和内存,这样能够消除密集型关键业务活动的处理器的瓶颈。

LEADTOOLS Distributed Computing SDK 技术概述

  • 支持使用任何技术开发分布式应用
  • 使用LEADTOOLS 核心功能可以实现无缝集成如图像处理OCR文字识别表单识别,及视频/音频转码及转换
  • 使用任何计算机都能够作为云的一个组件
  • 提供关于作业类型,CPU负载,时间及更多的简单配置选项
  • 创建平台无关的应用
  • 包括OCR文字识别和多媒体转换的演示

LEADTOOLS Distributed Computing SDK的框架组件

LEADTOOLS Distributed Computing SDK框架可以分解为下面描述的三个单独的组件。

Cloud SDK Diagram

客户端

客户端存在云外部,客户端可以是任何一种计算机或移动手机。客户端与中心服务器的通信是基于标准的Web服务,中心服务器允许您将数据写入与平台无关的应用程序中。

中心服务器

在云端,中心服务器是客户端与工人机器之间的主接口,中心服务器的主要职责包括:

  • 主要使用Web服务与客户端沟通。
  • 管理工人机器的设置如作业类型,作业数量等。并将这些设置存储在中心位置,是为了云中忽略的物理位置发生全局改变时,管理员操作能够简单。
  • 管理云数据库,云数据库是用来存储所有作业及关于每个作业的所有信息。

工人机器

工人机器实际上执行的是分布式应用的工作,对于云中的工人机器的数量是没有限制的,并且这些工人机器是热插或热拔的,同时不需要切断客户端的服务。每个工人机器根据需要的自定义的配置设置来承担尽可能多或尽可能少的工作,如:

  • 作业类型
  • 最大百分比的CPU使用率
  • CPU内核数
  • 线程数
  • 作业数
  • 每天的时间

云计算中分布式应用的益处

速度

并行处理的好处是众所周知的,但是尽管是最先进且功能最强大的计算机都会遇到瓶颈。例如,一台八核的计算机在100页的文档中执行OCR文字识别处理,同一时间只能处理8页。利用云计算,几乎在同一时间内进行OCR文字识别处理及转换同一文档是很可能的,因为OCR文字识别和转换文档的单页任务分配给网络上的足够多的工人机器。

除此之外,旧的硬件和功能较少的设备如移动手机,能够利用云应用以与高端服务器相同的速度和效率来完成任务。

缩减成本

云在节省成本方面具有巨大潜力。服务器硬件比台式电脑明显更昂贵。

  • 避免昂贵的服务器硬件- 可以购买一些便宜的台式计算机,并将它们连接起来提供与昂贵的服务器相同的或更好的速度。
  • 更有效的使用现有的硬件 – 使用极小的CPU能力的计算机作为工人机器,用于用户常规任务时不会有明显的性能下降。
  • 较低的硬件规格 – 客户端连接云端,需要更少的处理能力,这就意味着每个用户机器都比较便宜并且有更长的生命周期。
  • 低价升级- 可以添加或者移除工人机器。

除此之外,LEADTOOLS Distributed Computing SDK为开发者创建自己的云提供了便捷的操作,减少了对于第三方云计算服务的需求。

可靠性

分布式应用运行在多台机器中,比运行在单个机器的应用更可靠并且更易维护。一个良好设计的云应用程序不会在计划的维护时间或者硬件失效,病毒感染,甚至是停电或其他自然灾害发生时,出现停机现象。只要云端仍然有机器运行,对客户端提供的服务是不会中断的。中心服务器和工人机器实现了故障安全措施,包括重试,重启,或者重新分配作业。

平台独立

由于主要的工作是在云中完成的,几乎所有的客户端都能够访问应用。而实际的云必须一定实现在运行Windows平台的机器上的,客户端能够使用Mac,iPad,移动设备或其他能够联网的设备来访问云。

为什么要使用LEADTOOLS Distributed Computing SDK?

在您需要在农场电脑(a farm of computers)中执行一些自动化作业处理,在这种情况下的任何场景您都可以使用LEADTOOLS Distributed Computing SDK。尽管机会非常多,考虑以下场景,和如何使用LEADTOOLS Distributed Computing SDK提供成功的实现强大的动态的解决方案:

  1. 我的视频太大且需要花费太长的时间来转换。解码和编码多媒体文件是长时间的且处理器密集型的任务。通过使用对大的多媒体文件提供的云服务,客户端能够利用农场的工人机器来分解大文件,并独立的转换每一小块,并进行再多路传输,并在很短的时间内将它们合并在一起,相对于同一文件在单个机器上的转换需要消耗的时间而言是非常短的。
  2. 有太多文档要处理及OCR文字识别。云应用可以在工人机器中分割负载。一旦文档转换或文本提取完成,数据被发送回客户端,并存至数据库或者无论应用程序架构需求的是什么方法。这个过程是极其灵活的,且当其他需要执行OCR文字识别过程时,会分配一些工人机器进行文档清理。如果文件自身是比较大的,文档可以被分解为单独页面,并在处理完成时再拼接在一块。
  3. 我不想让我的电脑因为处理无序杂乱的任务而停顿。LEADTOOLS Distributed Computing SDK可以用于任何分布式计算应用中,并且对需要较少的或无用户交互的任务及会产生其他子任务的任务而言是非常理想的。例如,一个人可以使用农场机器来计算复杂的数学统计学数据或者爬虫或检索网站信息。

葡萄城成立于1980年,是全球最大的控件提供商,世界领先的企业应用定制工具、企业报表和商业智能解决方案提供商,为超过75%的全球财富500强企业提供服务。葡萄城于1988年在中国设立研发中心,在全球化产品的研发过程中,不断适应中国市场的本地需求,并为软件企业和各行业的信息化提供优秀的软件工具和咨询服务。

邮箱: leadtools.xa@grapecity.com | 电话: 029-88331988-244 | 微博: 葡萄城控件官方微博葡萄城控件

©2017 西安葡萄城