磨砺技術珠矶,踐行資料之道,追求卓越價值
回到上一級頁面: PostgreSQL基礎知識與基本操作索引頁 回到頂級頁面:PostgreSQL索引頁
開兩個終端執行psql,進行notify 與 listen動作的實驗,當時我有一個疑問:
從listen 端看到的PID ,到底是誰的ID?
驗證如下:
啟動 postgres, 執行 ps -ef|grep postgres
看到除了系統級别的postgres外,并沒有其他的。
postgres -D /usr/local/data (程序号為19651/父程序号為1)
postgres:writer process
postgres:wal writer process
postgres:autovacuum launcher process
postgres:stats collector process
再來看 ps -ef|grep postgre:
發現多了一個 程序号19924/父程序号19651 的 名為postgres的程序。
這表明:為給session A 的psql 服務,伺服器端啟動了一個程序 号為19924的back end prosgres。
發現又多了一個 程序号19938/父程序号19651 的 名為postgres的程序。
這表明:為給session B的psql 服務,伺服器端啟動了一個程序 号為19938的back end prosgres。
再回到session A, 随便執行一條指令:
這表明 資訊的發送者實際上是 和notify 端對應的 背景postgres程序。