DITA文档发布慢怎么办?

▲ 搜索“大龙谈智能内容”关注公众号▲ 


扫码见我视频号上的视频


前段时间,有个文档工程师朋友跟我抱怨他们的DITA文档发布很慢。正常发布需要一个晚上才能完成。中间如果出点错,就得重新发布,中间等待的时间比较长。 

我们知道,DITA文档不像MS Word或者InDesign这样所见即所得的软件,它源文件是XML格式的,有点像计算机代码,不能直接使用。要使用的话,必须经过发布环节,生成PDF或者HTML才能使用。 

发布过程呢, HTML很少出问题,出问题最多的是发布PDF。主要是因为发布HTML的时候是一个Topic一个Topic地处理的。发布PDF则需要将所有Topic合成为一个文件,然后处理。当发布文档很大,比如:几千页,这对服务器的CPU、内存和磁盘提出了很高的要求。这就像小孩子吃饭,一小口一小口地吃没有问题;如果一下子将嘴里塞满东西,吃得就慢了,甚至会噎住。

那怎样来做性能分析和调优呢?接下来就说一说总体思路。 

首先,看看发布使用的服务器硬件资源有没有被利用起来。不管是物理服务器或者云服务器,都有监控的功能。比如,下边这个是阿里云服务器的监控信息。 

从这张图上,我们可以看到服务器近段时间资源的利用情况。特别关注CPU使用率、内存使用率和磁盘读写这三个指标。如果这三个资源利用率都小于30%,则说明服务器硬件资源没有被利用起来。 如果硬件资源没有被利用起来,有两个设置可以调整 

  1. 调整发布程序的内存设置。比如:对于服务器是16G内存的,可以发布程序的内存设置成10G。如果是32G的服务器,则可设置成26G。

  2. 调整可同时运行的发布任务数。发布引擎一般同时可以执行多个发布任务。CPU利用率很低代表计算能力没有用上,也就是CPU在那等活儿干。适当地增加同时可执行的发布任务数,让CPU忙起来。 发布引擎一般是按照CPU核来卖的。核越多表示同一时刻发布引擎能使用CPU越多,这样能执行的任务也越多。如果发布任务数提高了,CPU利用率还很低,那么要看看购买的发布引擎,并考虑是否需要升级。

如果服务器硬件资源已经利用起来了,那么可以考虑以下5种优化的办法

  1. 升级服务器硬件。硬件资源的成本每年是成递减趋势的,所以如果升级服务器硬件能解决的问题,就不要动软件,这样成本最低。

  2. 将文档拆分,让发布的文件变小,好发布。比如将一个100M的DITA书册,拆分成上下册,每册各50M.

  3. 将文档中的图形精度降低,让图形文件变小。 曾经碰到过过一个图达近100M,后来打开文件将图形尺寸缩小,将图大小放在5M以内可以大大提高发布效率。

  4. 样式代码分析和调优。这里虽然叫样式(Stylesheet),但是其实中间是有数据处理逻辑的,它由编程语言实现。合格的软件工程师都知道快速排序比冒泡排序效率高。但开发样式的小伙伴一般很少是计算机科班出生的,不一定知道这个。开发样式表的时候,不会考虑到内存和CPU占用的问题。一不小心一个嵌套就能吃掉一大块内存却不知道,或者让CPU白忙活一阵却做的无用功。这时,可以让懂程序开发的小伙伴帮样式开发人员分析样式处理逻辑中内存和CPU利用的问题。 

  5. 如果以上四种办法还不能解决问题,那么考虑第5种办法,也就是改装发布程序,用多台服务器支持发布,然后合成。这个难度最高,轻易不要考虑使用这种方式。 因为它需要系统架构师、高级工程师以及高级样式开发配合,而且开发和维护成本很高。

这个就是发布程序性能调优的基本方法,大龙谈智能内容,欢迎加我微信和我交(jingjun_long)。

  • 20
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值