我有一个关于每次从DB检索数据时减少数据库连接的问题。我假设我有5个表格(通知,订单,用户,产品,交易)
在仪表板中,我必须显示:
最简单的方法(伪代码):
$notis = Notification::where('unread')->get();
$orderStat = Order::join('user')->where('count(order.id)', 'status')->groupby('status');
$product = Product::count();
$transactions = Transaction::join('user')->where('count(trans.id)', 'status')->groupby('status');
Run Code Online (Sandbox Code Playgroud)
因此,我必须运行4个单独的查询,正如我的导师说的那样,如果每个表中有很多记录,或者仪表板需要更多表(而不用于联接)进行查询,那么该解决方案将减少服务器的语音。
我已经做了:
我想问:对于上述情况,还有其他方法可以减少处理时间吗?。
和其他有关的问题connection pool,他说用它来提高速度。经过研究发现,Laravel已经建立了连接池,不是吗?
编辑:
用户有许多通知,订单,交易。
我只想问一下上面没有提到的提高性能的方法。