2
我們的開發人員聲稱memcached擁有一些本地緩存緩衝區。因此他正在代碼中執行一些操作,這將導致幾乎每次調用相同的密鑰時都會調用memcached。 它會定義導致許多內存分配,但它會需要網絡開銷?php-memcached是否有任何本地緩存緩存?
我嘗試閱讀php-memcached的源代碼,但它只是調用libmemcached的函數(我不記得它的名字),我無法弄清楚我在哪裏可以找到它的定義。
我們的開發人員聲稱memcached擁有一些本地緩存緩衝區。因此他正在代碼中執行一些操作,這將導致幾乎每次調用相同的密鑰時都會調用memcached。 它會定義導致許多內存分配,但它會需要網絡開銷?php-memcached是否有任何本地緩存緩存?
我嘗試閱讀php-memcached的源代碼,但它只是調用libmemcached的函數(我不記得它的名字),我無法弄清楚我在哪裏可以找到它的定義。
您的首席開發人員如何設法提取該信息將會非常有用。從list of constants,這種特殊的選項伸出:
Memcached::OPT_BUFFER_WRITES
它用於緩衝區寫入Memcached的降低網絡費用;不過,它也表示立即讀取操作將緩存到服務器。
到目前爲止,網絡搜索沒有提供任何證實或反駁聲明的信息,但如果有這樣的特徵,應該有一個選項來關閉該行爲;沒有這些讓我相信它不在那裏。
所以問題是,如果你使用同一個鍵執行多個操作,memcached是在目標機器上分配還是分配內存,還是隻是在「本地緩衝區」中執行這些操作? –
你的意思是它保持客戶端的本地緩衝區?如果是這樣,它肯定會減少網絡開銷。 –
@ N.B。 ,傑克,是的,我的意思是本地緩存 – nikita2206