1
我在共享主機平臺上,想限制我的應用程序中的查詢,這樣如果總執行時間在可變時間段超過一定量,那麼我可以使應用程序冷靜下來,然後再恢復。NodeJS MySQL:度量查詢執行時間
要做到這一點,我想知道我的每個查詢需要多長時間,並在應用程序中進行管理,而不是通過對外進行分析。
我在PHP中查看過在查詢前後記錄時間的例子(even phpMyAdmin does this),但是這在NodeJS或異步運行查詢的任何東西中都不起作用。
所以問題是:我將如何去得到在NodeJS查詢的實際執行時間?
僅供參考我使用這個模塊來查詢MySQL數據庫:https://github.com/felixge/node-mysql/
的這種方法的問題在於,只要調用'connection.query'函數,查詢就不一定執行,所以'duration'包含NodeJS在執行查詢之前花費的時間,直到查詢被實際執行爲止 – 2015-01-24 18:34:08
的確如此。但是,如果你真的想更密切地監控它,你可以修改node-mysql的源代碼。只需進入node_modules文件夾並編輯觸發查詢的文件部分並等待它返回。它可能在這個文件中:https://github.com/felixge/node-mysql/blob/master/lib/protocol/sequences/Query.js 這仍然包括nodejs和mysql之間的延遲,但它會與大多數小響應集的查詢執行時間相比,可以忽略不計。 – 2015-01-25 11:06:07