如何在onmessage中獲取WORKER自身的進(jìn)程ID
由于開了一百多個(gè)進(jìn)程,在生成訂單號(hào) 時(shí)導(dǎo)致了重復(fù)想在訂單號(hào)上加上進(jìn)程ID這樣可以避免。
兩種方法:
1、直接使用 $pid = posix_getpid() 即可
2、間接使用 $worker_id = $connection->worker->id, 這個(gè) $worker_id 本質(zhì)上和 $pid 一一映射的。
題外話:
你看你自己場景吧,關(guān)于訂單號(hào)建議你還是采用常規(guī)那種方式來生成比如雪花算法啥的,因?yàn)檫@種方式也不能杜絕唯一性,進(jìn)程重啟的時(shí)候或者分布式部署時(shí)一樣存在重復(fù)訂單號(hào)的可能,因?yàn)檫M(jìn)程ID可能重復(fù)。