redis學習筆記——命令執行流程

基礎知識部分

若是須要掌握Redis的整個命令的執行過程,那麼必須掌握一些基本的概念!不然根本看不懂,下面我就一些在我看來必備的基礎知識進行總結,但願能爲後面命令的整個執行過程作鋪墊。服務器

事件

Redis服務器是一個事件驅動程序,服務器須要處理如下兩類事件:網絡

  • 文件事件(file event):Redis服務器經過套接字與客戶端(或者其餘Redis服務器)進行鏈接,而文件事件就是服務器對套接字操做的抽象。服務器與客戶端(或者其餘服務器)的通訊會產生相應的文件事件,而服務器則經過監聽並處理這些事件來完成一系列網絡通訊操做;
  • ·時間事件(time event):Redis服務器中的一些操做(好比serverCron函數)須要在給定的時間點執行,而時間事件就是服務器對這類定時操做的抽象。

文件事件

文件事件處理器就是文件事件產生時,用來處理這個文件事件的函數;函數

  • 文件事件處理器使用I/O多路複用(multiplexing)程序來同時監聽多個套接字,並根據套接字目前執行的任務來爲套接字關聯不一樣的事件處理器;
  • 當被監聽的套接字準備好執行鏈接應答(accept)、讀取(read)、寫入(write)、關閉(close)等操做時,與操做相對應的文件事件就會產生,這時文件事件處理器就會調用套接字以前關聯好的事件處理器來處理這些事件。
  • 待續。。。。
相關文章
相關標籤/搜索