互联网中发送数据库请求和socket请求比较,哪个更影响性能

1.30W用户的SELECT请求 肯定性能更差一些,因为需要做的事情多,为此耗时也多;2.30W用户要是并发的话,数据库服务器那可能真的要挂了,而且网络卡也会撑爆的;3.30W的socket连接 还是有可能的,关键看网卡和CPU是否撑得住;4.数据库肯定需要采用数据库连接池的技术控制并发数,因为数据库并不是越多的并发数越好,而是跟硬件相关联的,一般现在PC服务器 256个连接是负载+性能最佳的状态,也即是抛物线的高点,然后就下落。
■网友
发 Socket 请求的目的也是查询数据库吗?如果你是说 HandlerSocket 这样的,肯定是 HandlerSocket 效率高。SQL 查询,需要解析 SQL,优化,然后才是真正对存储引擎查询,必然会一定程度影响性能。
■网友
现在的数据库操作,一般是需要通过连接数据库的,因此30W的Select请求,至少需要30W的Socket连接(因为SOCKET底层也必定是TCP或者UDP)。至于哪个压力大,要看数据库服务器的实现和你接受Socket连接的服务器的实现机制是什么样的,同等情况下应该是Select请求的压力大,但如果Socket服务器实现算法比较弱,则可能表现不如专业的数据库服务器。
■网友
30wsocket连接会相对耗时。在select中,太多的连接池技术,使得socket是可以重用的。而处于一般的客户端请求,是出于一个复杂的数据链中的,所以30w个请求不一定需要建立30w个数据库连接,因为部分时间消耗在数据的其他端,如应用,如前端。


    推荐阅读