Node.js 我们是否应该总是选择连接池而不是单个连接?什么';使用连接池而不是单个连接的确切好处是什么?
人们说连接池与单连接相比有很多好处:Node.js 我们是否应该总是选择连接池而不是单个连接?什么';使用连接池而不是单个连接的确切好处是什么?,node.js,networking,connection-pooling,Node.js,Networking,Connection Pooling,人们说连接池与单连接相比有很多好处: 在多线程环境中,连接不能由不同的线程共享(这真的会发生吗?) 连接池可以提高吞吐量:通过添加更多连接,我们可以更快地发送数据(这是真的吗?) 使程序健壮:当某些连接断开时,我们可以使用另一个连接 根据这些优点,我认为,当且仅当我们在多线程中时,我们应该使用连接池。但是单线程环境,如Rails3、nodejs,也有连接池,为什么? 我不擅长tcp/ip/socket,我知道,如果我们发送的数据包非常小(远小于MSS),一个连接可以由多线程共享(为了证明这一点
说了这么多,我希望有人能清楚地解释连接池,消除我对它的所有疑虑。任何时候你有线程,你都可能得到混乱的数据。每个线程必须使用不同的连接。没有两条路可走。连接池是解决这一问题的简单方法,它还保存了TCP连接/关闭握手。因此,我们在单线程环境中不需要连接池,例如rails(单线程模式)或nodejs?任何时候,只要有线程,都可以获得无序数据。每个线程必须使用不同的连接。没有两条路可走。连接池是解决这一问题的简单方法,它还保存了TCP连接/关闭握手。因此,我们在单线程环境中不需要连接池,例如rails(单线程模式)或NodeJ?