我記錄了一些api請求。它目前已完成同步,並且我希望處理此數據庫調用異步以允許實際api調用的更快響應時間。 在Laravel中這樣做的方式似乎是隊列/工作系統。但是我不知道這是否也是加入DB簡單的日誌條目的情況:laravel隊列作業登錄到數據庫?
$log = new Log();
$log->request = $request->all();
$log->response = $response;
$log->save();
所以,我應該創建一個作業,並派遣它呢?看起來像矯枉過正有一個隊列工作者和所有的樣板只是爲了這個。
編輯: 我只是意識到,這可能是愚蠢的,因爲隊列還需要寫入作業表。所以排隊的東西需要1個數據庫查詢,對吧? 因此,對單個查詢操作使用作業可能沒有意義。
有沒有其他的方式推遲日誌的執行,直到響應之後?
您需要做的第一件事是確定這個*真正*添加到每個請求的開銷。序列化和排隊的可能性完全一樣慢 – apokryfos