Java MakeSignature.SignDistached操作在通过WebService在JBoss EAP上发送请求时,花费了太多的时间用于少数PDF

Java MakeSignature.SignDistached操作在通过WebService在JBoss EAP上发送请求时,花费了太多的时间用于少数PDF,java,jakarta-ee,itext,jboss-eap-6,Java,Jakarta Ee,Itext,Jboss Eap 6,我们正在生成带有数字签名的pdf。对于使用itextpdf 5.5.3在JbossEAP上发送的少量请求,这段代码会随机花费10到15秒 switch (digiSignDetails.getSigningMode()) { case 1: algorithm = "RIPEMD160"; break; case 2: algorithm = "SHA1

我们正在生成带有数字签名的pdf。对于使用itextpdf 5.5.3在JbossEAP上发送的少量请求,这段代码会随机花费10到15秒

switch (digiSignDetails.getSigningMode()) {
            case 1:
                algorithm = "RIPEMD160";
                break;
            case 2:
                algorithm = "SHA1";
                break;
            case 3:
                algorithm = "SHA256";
                break;
            case 4:
                algorithm = "SHA384";
                break;
            case 5:
                algorithm = "SHA512";
                break;
            }
            ExternalSignature es = new PrivateKeySignature(pk, algorithm, "BC");
            ExternalDigest digest = new BouncyCastleDigest();
            MakeSignature.signDetached(appearance, digest, es, chain, null, null, null, 0, MakeSignature.CryptoStandard.CMS);

您显示的代码本身并不需要花费太多时间。你忽略了一些外部因素。例如,您的
pk
私钥:它是否驻留在可能导致延迟的外部设备上?我假设你确实检查并排除了“随机”延迟与大文件大小有关,不是吗?你展示的代码本身并不需要太多时间。你忽略了一些外部因素。例如,您的
pk
私钥:它是否驻留在可能导致延迟的外部设备上?我想你确实检查并排除了“随机”延迟与大文件大小有关,不是吗?