【发布时间】:2016-04-07 13:40:06
【问题描述】:
我正在为即将到来的 Web 应用程序项目使用 JSP/Serverlets。它是高流量并发用户网站。关于 Java 8 的性能问题,尤其是在 Streams 中,已经有很多讨论。
任何人都对流的性能有特定的了解,以及是否建议在高流量 Web 应用程序中使用它以便不影响延迟和响应时间?
【问题讨论】:
标签: java java-8 java-stream
我正在为即将到来的 Web 应用程序项目使用 JSP/Serverlets。它是高流量并发用户网站。关于 Java 8 的性能问题,尤其是在 Streams 中,已经有很多讨论。
任何人都对流的性能有特定的了解,以及是否建议在高流量 Web 应用程序中使用它以便不影响延迟和响应时间?
【问题讨论】:
标签: java java-8 java-stream
作为一般性声明,在 Java 8 Streams 之外,几乎不可能按照所述回答您的问题,因为这取决于情况。
如果您有一个每秒被调用数百次的方法,那么您需要非常小心性能。你会想尽可能地调整它。相反,如果您有一个每天调用一次的方法,那么您可能不会花太多时间优化它。
如果使用得当,流是一种有用的工具,而且很容易被滥用。我见过一些开发人员认为读取整个数据库表并使用流过滤来有效地执行 SQL“where”子句是一个好主意。这是一个糟糕的设计,但老实说,它不会在一天一次的方法调用中看到。
不要试图做出这些笼统的“这是好是坏”的陈述。做好设计并在适当的地方使用工具。优化应用程序中需要的部分,但不要进行过早的优化 - 你永远无法完成项目。
【讨论】: