Tal*_*tos 5 java performance ssl https
测试之间的唯一变化是更改 TLS 版本。Chrome 和 FireFox 之间的行为是相同的。
TLSv1 和 TLSv1.1 都达到 90 兆字节/秒。他们在 Java 6 (TLSv1) 和 Java 8 (TLSv1/TLSv1.1) 上获得了这种速度。
然而,TLSv1.2 大大降低了速度。我们得到 4 兆字节/秒。没有更改密码,没有其他设置等。不仅我们的开发机器,而且客户也报告了同样的事情,Windows 操作系统、Java 8、TLSv1.2。我们使用的是 OS X、Java 8、TLSv1.2。所以这似乎是一个普遍的趋势。测试是在本地主机、至强 6 核处理器、SSD 驱动器上完成的。如果我们不使用 HTTPS,我们将获得超过 200MB/秒的速度。所以 4MB/sec 只是对我们可以做的事情的可怕侮辱。
这不是初始连接、缓存或重新协商等。这只是原始传输速度。我没有发现任何已知的 Java 错误,有没有人有任何猜测?
这是 Chrome 报告的连接和密码:
您与 127.0.0.1 的连接使用现代加密技术进行加密。
该连接使用 TLS 1.2。
您与 127.0.0.1 的连接使用过时的加密技术进行加密。
该连接使用 TLS 1.1。
想法?
讨厌回答我自己的问题,但我刚刚意识到 TLS v1.2 允许使用更新的密码。它的密码导致 Java 8 使用软件来处理加密方面而不是使用硬件加速,并导致可怕的速度。
禁用服务器上的所有 GCM 密码会导致与 chrome 使用 CBC 密码相同的速度。
使用 Java 8u20 进行慢速 AES GCM 加密和解密
——本
| 归档时间: |
|
| 查看次数: |
5513 次 |
| 最近记录: |