彩票走势图

HTML5文档查看器PrizmDoc教程:如何实现负载平衡?

翻译|使用教程|编辑:莫成敏|2020-03-12 14:52:50.307|阅读 182 次

概述:介绍了PrizmDoc查看器是如何实现负载平衡的内容,包括计算工作负载如何分布在服务器之间? HTTP请求如何路由到正确的计算机?我应该使用哪种类型的负载均衡器?

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

PrizmDoc是最快速、最有品质的HTML5文档查看器,提供安全的、全定制化的查看和协作功能。它通过一个简单部署的机制减少成本,降低安全风险和提高生产率。同时,它是基于服务器的查看器,消除了不必要的许可和下载。本文介绍了PrizmDoc查看器是如何实现负载平衡的内容,本文是上半部分内容。

点击下载PrizmDoc正式版

如果使用您的Web应用程序的人员需要直接在浏览器中查看、搜索、编辑或注释文档,则PrizmDoc查看器是一个非常好的选择。它使您可以在Web应用程序中显示Office、PDF、TIFF、电子邮件和许多其他类型的文档。

为了使所有这些成为可能,PrizmDoc查看器架构基本上有两个方面:

  • HTML查看器本身,在浏览器中运行
  • 强大的后端,可将文档逐页转换为SVG,以便在浏览器中查看

您的Web服务器位于这两者之间,充当查看器的代理,以向后端询问其需要显示的页面:

HTML5文档查看器PrizmDoc教程:如何实现负载平衡?

这种架构的优点之一是,即使文档的其余部分仍在转换中,我们也可以在文档准备好后立即提供其彩票走势图。但是,设置和维护后端并非易事。

幸运的是,Accusoft可以使用PrizmDoc Cloud为您处理所有这些。注册并获取API密钥,然后将您的Web应用程序连接到我们已经运行的,完全托管的PrizmDoc查看器后端。这是一个很好的选择,尤其是在您刚开始使用PrizmDoc查看器的情况下。

但是,当然,使用Accusoft托管的后端可能不适用于您的业务。也许甚至不允许您暂时禁止文档离开您的网络。在这种情况下,您需要自己托管和管理后端。当客户开始研究执行此操作所需的时间时,我们遇到了许多有关负载平衡如何工作的问题。计算工作负载如何分布在服务器之间? HTTP请求如何路由到正确的计算机?我应该使用哪种类型的负载均衡器?这些就是我们将在本教程中讨论的问题。

不过,要做到这一点,我们首先需要更详细的后端图片。

PrizmDoc Viewer后端是什么?

让我们仔细看看整体架构,包括您的Web应用程序和浏览器:

HTML5文档查看器PrizmDoc教程:如何实现负载平衡?

您会注意到,“后端”实际上由两层组成:PAS(PrizmDoc应用程序服务)和PrizmDoc服务器

PrizmDoc 服务器(最右边)是产品的技术核心,它实际上是将文档页面转换为SVG的引擎。它是计算密集型的,没有永久存储。

PAS(位于PrizmDoc Server前面的东西)实际上根本无法完成转换工作。相反,就像您自己的Web应用程序一样,PAS拥有对您拥有的存储(例如文件系统或数据库)的特权访问,并提供了更高级别的功能,而这些功能原本需要成为您的Web应用程序的一部分。

PAS负责两个主要功能:

  • 加载和保存注释
  • 长期缓存预转换的内容

从概念上讲,PAS只是PrizmDoc Server前面的一层。对于查看功能,它是Web应用程序要与之对话的“前门”。但是,涉及到实际的转换工作发生在PrizmDoc Server中。

现在,让我们进一步了解一下后端。

对于PAS和PrizmDoc Server层,您可能会在负载平衡器前面放置多台计算机,如下所示:

HTML5文档查看器PrizmDoc教程:如何实现负载平衡?

您设置的负载均衡器大多在此处,因此每个群集都有一个入口点。您的负载均衡器不需要花哨的东西;简单的循环负载均衡器可以正常工作。这是因为“负载平衡”和请求路由的实际工作最终由PrizmDoc Server实例本身处理。

如何查看请求路由?

每当您开始新的查看会话时,将页面转换为SVG的所有处理工作都在一台特定的PrizmDoc Server计算机上进行。当查看器发送诸如“给我SVG 0页”之类的请求时,该请求将通过管道传输(通过Web服务器,通过PAS),直到到达PrizmDoc Server集群,然后有一台机器,只有一台机器,实际上可以回答请求(PrizmDoc Server实例仅使用本地缓存;没有共享缓存或共享存储)。

幸运的是,您(和负载平衡器)无需担心将请求路由到正确的计算机上。这是因为正确机器的IP地址已被加密为查看会话ID本身,并且每个PrizmDoc Server实例都知道如何在需要时将请求通过管道传递到正确的机器:

HTML5文档查看器PrizmDoc教程:如何实现负载平衡?

实际上,尽管我们永远不建议这样做,但是如果您要完全删除PrizmDoc Server群集前面的负载平衡器,然后将所有流量发送到一台PrizmDoc Server计算机,则所有内容仍将路由到正确的位置。

CPU负载与HTTP请求负载分

当我们考虑在PrizmDoc Server群集的上下文中进行“负载平衡”时,涉及的不仅仅是简单地分配HTTP请求。这是因为PrizmDoc Server的大部分CPU工作都是后台处理,与后台处理的HTTP请求完全分开。

PrizmDoc Server处理的HTTP请求基本上有两种:

  • 开始新的后台流程的请求
  • 获得流程状态或输出的请求

为了进行查看,您的Web应用程序将自己发出第一类请求(创建查看会话并提供文档),然后HTML查看器将发出大量第二类请求(获取各个页面的SVG)。

每次您的应用程序创建一个新的查看会话并提供其关联的文档时,PrizmDoc Server都会启动一个后台进程,以将文档页面一个接一个地转换为SVG(即输出输出页面)。该过程需要花费多长时间以及使用多少CPU,完全取决于要转换的文档。

例如,在转换任何页面之前,必须先“流动”(分页)DOCX文件,而PDF的分页是预定义的。如果DOCX和PDF具有相同的可见内容,则PDF可以更快地转换并使用更少的CPU。同样,一般来说,文档包含的页面越多,或者页面上的内容越复杂,完全转换所需的CPU时间就越多。

当然,您的最终用户不必等文档完全转换后就可以开始与文档进行交互。 PrizmDoc Server会在内容准备就绪后立即提供第一页内容,甚至会根据请求内容主动将页面顺序乱序转换。但是,PrizmDoc服务器上的CPU负载并不仅取决于服务器正在处理的HTTP请求数量,还取决于服务器在后台转换的文档类型。

本教程内容较多,分为上下两篇内容,本文是上篇,想要查看下篇内容,请继续关注我们慧都网~您可以下载PrizmDoc试用版免费评估~


想要购买PrizmDoc正版授权,或了解更多产品信息请点击




标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn

文章转载自:

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP