Memcached 是一個高效能的分散式記憶體物件快取系統,用於動態Web應用以減輕資料庫負載。它透過在記憶體中快取資料和物件來減少讀取資料庫的次數,從而提高動態、資料庫驅動網站的速度。 Memcached基於一個儲存鍵/值對的hashmap。其守護程式(daemon )是用C寫的,但是客戶端可以用任何語言來編寫,並透過memcached協定與守護程式通訊。
Memcached 是一個高效能的分散式記憶體物件快取系統,用於動態Web應用以減輕資料庫負載。它透過在記憶體中快取資料和物件來減少讀取資料庫的次數,從而提高動態、資料庫驅動網站的速度。我們收集了《布爾教育燕十八Memcached影片教學》,希望能夠幫助大家更好的學習Memcached分散式叢集。
影片播放位址:http://www.php.cn/course/314.html
1、memcached的基本設定
1)啟動Memcache的伺服器端
# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached. pid
-d選項是啟動一個守護進程,
-m是分配給Memcache使用的記憶體數量,單位是MB,我這裡是10MB,
-u是執行Memcache的用戶,我這裡是root,
-l是監聽的伺服器IP位址,如果有多個位址的話,我這裡指定了伺服器的IP位址192.168.0.200,
-p是設定Memcache監聽的端口,我這裡設定了12000,最好是1024以上的端口,
-c選項是最大運行的並發連接數,預設是1024,我這裡設定了256,按照你伺服器的負載量來設定,
- P是設定保存Memcache的pid文件,我這裡是保存在/tmp/memcached.pid,
2)如果要結束Memcache進程,執行:
# kill `cat /tmp/ memcached.pid`
雜湊演算法將任意長度的二進位值映射為固定長度的較小二進位值,這個小的二進位值稱為雜湊值。哈希值是一段資料唯一且極為緊湊的數值表示形式。如果散列一段明文而且哪怕只更改該
段落的一個字母,隨後的哈希都會產生不同的值。要找到散列為同一個值的兩個不同的輸入,在計算上是不可能的。
2、一致性Hash演算法的目的有兩點:一是節點變動後其他節點受影響盡可能小;二是節點變動後資料重新分配盡可能均衡 。
3、為什麼要執行 memcached ?
如果網站的高流量很大且大多數的存取會造成資料庫高負荷的狀況下,使用 memcached 能夠減輕資料庫的壓力。
4、適用memcached的業務場景?
1)如果網站包含了訪問量很大的動態網頁,因而資料庫的負載將會很高。由於大部分資料庫請求都是讀取操作,那麼memcached可以顯著地減少資料庫負載。
2)如果資料庫伺服器的負載比較低但CPU使用率很高,這時可以快取計算好的結果( computed objects )和渲染後的網頁模板(enderred templates)。
3)利用memcached可以快取session資料、臨時資料以減少對他們的資料庫寫入操作。
4)快取一些很小但是被頻繁存取的檔案。
5)緩存Web 'services'(非IBM宣揚的Web Services,譯者註)或RSS feeds的結果.。
5、不適用memcached的業務場景?
1)快取物件的大小大於1MB
Memcached本身就不是為了處理龐大的多媒體(large media)和巨大的二進位區塊(streaming huge blobs)而設計的。
2)key的長度大於250字元
3)虛擬主機不讓執行memcached服務
如果應用程式本身託管在低階的虛擬私有伺服器上,像vmware , xen這類虛擬化技術並不適合運行memcached。 Memcached需要接管和控制大塊的內存,如果memcached管理的內存
被OS或 hypervisor交換出去,memcached的性能將大打折扣。
4)應用程式運行在不安全的環境中
Memcached為提供任何安全策略,僅透過telnet就可以存取memcached。如果應用程式運行在共享的系統上,需要著重考慮安全問題。
5)業務本身需要的是持久化資料或是說需要的應該是database
6、能夠遍歷memcached中所有的item嗎?
不能,這個操作的速度相對緩慢且阻塞其他的操作(這裡的緩慢時相比memcached其他的命令)。 memcached所有非調試(non-debug)命令,例如add, set, get, fulsh等無論
memcached中存儲了多少數據,它們的執行都只消耗常數時間。任何遍歷所有item的命令執行所消耗的時間,將隨著memcached中資料量的增加而增加。當其他指令因為等待(遍歷所
有item的命令執行完畢)而不能被執行,因而阻塞將發生。
以上是布爾教育燕十八Memcached影片資料分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

Memcached是一种常用的缓存技术,它可以使Web应用程序的性能得到很大的提升。在PHP中,常用的Session处理方式是将Session文件存放在服务器的硬盘上。但是,这种方式并不是最优的,因为服务器的硬盘会成为性能瓶颈之一。而使用Memcached缓存技术可以对PHP中的Session处理进行优化,提高Web应用程序的性能。PHP中的Session处

PHP8.0中的缓存库:Memcached随着互联网的快速发展,现代应用程序需要高效可靠的缓存技术来提高性能和处理大量数据。由于PHP的流行和开源特性,PHP缓存库已经成为了Web开发社区的一个必备工具。Memcached是一种广泛使用的开源高速内存缓存系统,它能处理数百万个同时连接的缓存请求,可以用于许多不同类型的应用程序,例如社交网络、在线

随着互联网的快速发展,大规模MySQL数据库备份和恢复成为各大企业和网站必备的技能之一。而随着Memcached的广泛应用,如何备份和恢复Memcached也成为了一个重要的问题。PHP作为Web开发的主力语言之一,在处理备份和恢复MySQL和Memcached上拥有独特的优势和技巧。本文将详细介绍PHP处理MySQL和Memcached备份与恢复的实现方法

随着网络应用的不断增加和数据量的不断膨胀,数据的读写效率成为影响应用性能的重要因素之一。而缓存技术的应用则可以很好地解决这个问题。在PHP应用中,Memcached是最常用的缓存服务器。Memcached是一个高性能的分布式内存对象缓存系统,可以将常用的数据存储在内存中,提高数据检索的效率。本文将介绍如何使用PHP和Memcached进行缓存管理,以及如何优

随着互联网技术的不断发展,音视频资源已经成为了互联网上非常重要的一种内容形式,而PHP作为网络开发中使用最广泛的语言之一,也在不断地应用于视频和音频播放领域。然而,随着音视频网站的用户日益增加,许多网站已经发现了一个问题:在高并发的情况下,PHP对于音视频的处理速度明显变缓,会导致无法及时播放或者播放卡顿等问题。为了解决这个问题,Memcached缓存技术应

随着现代互联网应用的快速发展,用户体验对于一个应用的成功至关重要。如何保证应用的高性能和高可用性,成为了开发人员需要解决的重要问题之一。PHP作为一种广泛应用的编程语言之一,它的性能监控和优化也是非常重要的。Memcached是一个高性能、分布式的内存对象缓存系统,可以帮助应用提高性能和扩展性。本文将介绍如何使用PHP和Memcached实现性能监控的方法。

随着互联网应用的快速发展,数据存储和处理变得越来越庞大和复杂。在这样的背景下,Memcached作为一款高性能、轻量级的分布式内存缓存系统,逐渐成为互联网应用领域中不可或缺的一部分。在PHP语言中,Memcached可以通过扩展内置的Memcached类实现与Memcached服务器的交互,而在实际生产环境中,我们需要通过搭建Memcached数据库集群来保

随着现代应用程序的快速增长,缓存已成为许多开发人员的至关重要的部分。缓存可以大大提高应用程序的性能并减少服务器负载。在CakePHP中,实现缓存的一种方法是使用Memcached。Memcached是一个基于内存的分布式缓存系统。它将数据存储在内存中,可以快速地读取和写入数据。在多服务器环境中,Memcached可以分布式存储数据并通过网络进行共享。不仅可以


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SAP NetWeaver Server Adapter for Eclipse
將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。