网站开发工资,利用网上菜谱做网站,昨晚贵州出大事,做哪些网站比较好的Tomcat有几个连接器可供选择。 我将把APR连接器放在一边#xff0c;而将重点放在BIO和NIO上。 BIO连接器#xff08;阻塞I / O#xff09;正在阻塞–它使用线程池#xff0c;每个线程在该线程池中接收请求#xff0c;处理请求#xff0c;响应并返回到该池。 在阻塞操作期… Tomcat有几个连接器可供选择。 我将把APR连接器放在一边而将重点放在BIO和NIO上。 BIO连接器阻塞I / O正在阻塞–它使用线程池每个线程在该线程池中接收请求处理请求响应并返回到该池。 在阻塞操作期间例如从数据库读取或调用外部API线程被阻塞。 NIO连接器非阻塞I / O 要复杂一些 。 它使用java NIO库并在请求之间进行多路复用。 它有两个线程池–一个容纳轮询器线程该轮询器线程处理所有传入的请求并将这些请求推送到由另一个线程池中的工作线程处理。 两种池大小都是可配置的。 何时选择NIO与BIO取决于使用情况。 如果您大多数情况下都是常规的请求-响应用法那么这无关紧要甚至BIO可能也是一个更好的选择如我之前的基准测试所示 。 如果您有长期的连接那么NIO是更好的选择因为它可以为更多的并发用户提供服务而无需为每个用户分配阻塞的线程。 轮询线程负责将数据发送回客户端而工作线程则负责处理新请求。 换句话说轮询器和工作线程都不会被单个用户阻止和保留。 随着异步处理servlet的引入拥有上一段中的后一种情况变得更加容易。 也许这就是在Tomcat 8中将默认连接器从BIO切换到NIO的原因之一。记住这一点很重要尤其是因为它们没有完全更改“默认值”。 默认值始终为“ HTTP / 1.1”但是在Tomcat 7中“使用自动切换机制选择基于阻塞 Java的连接器或基于APR / native的连接器”而在Tomcat 8中“使用自动切换”。选择基于非阻塞 Java NIO的连接器或基于APR /基于本机的连接器的机制”。 为了使事情变得更艰难他们引入了NIO2连接器。 老实说我不知道默认情况下使用两个NIO连接器之一。 因此即使您对tomcat配置有所了解也请记住默认值的这种更改。 通常我建议阅读所有属性的文档并在服务器上使用它们 翻译自: https://www.javacodegeeks.com/2015/07/tomcats-default-connectors.html