Java 21 虚拟线程如何限流控制吞吐量
虚拟线程(Virtual Threads)是 Java 21 所有新特性中最为吸引人的内容,它可以大大来简化和增强Java应用的并发性。但是,随着这些变化而来的是如何最好地管理此吞吐量的问题。本文,就让我们看一下开发人员在使用虚拟线程时,应该如何管理吞吐量。
在大多数情况下,开发人员不需要自己创建虚拟线程。例如,对于 Web 应用程序,Tomcat 或 Jetty 等底层框架将为每个传入请求自动生成一个虚拟线程。
如果在应用程序内部需要自行调用来提供业务并发能力时,我们可以使用Java 21新特性:虚拟线程(Virtual Threads)中介绍的方法去创建和使用,比如较为常用的就是Executors.newVirtualThreadPerTaskExecutor()
。