原创 memcache 的內存管理介紹和 php實現memcache一致性哈希分佈式算法

1 網絡IO模型        安裝memcached需要先安裝libevent   Memcached是多線程,非阻塞IO複用的網絡模型,分爲監聽主線程和worker子線程,監聽線程監聽網絡連接,接受請求後,將連接描述字 pipe 傳遞

原创 OAuth2.0驗證 和 SSO驗證 詳細

一、OAuth2.0授權協議 一種安全的登陸協議,用戶提交的賬戶密碼不提交到本APP,而是提交到授權服務器,待服務器確認後,返回本APP一個訪問令牌,本APP即可用該訪問令牌訪問資源服務器的資源。由於用戶的賬號密碼並不與本

原创 一道PHP面試題,求兩個文件的相對路徑

首先原題是這樣子的: 寫一個函數,計算出兩個文件的相對路徑,如 $a = '/a/b/c/d/d.php',$b = '/a/b/1/2/c.php' 計算出的$b相對於$a的相對路徑應該是:../../c/d 那麼對於網上給出的答案,看

原创 深入理解Mysql讀寫分離

Mysql的 Replication 是一個異步複製的過程,從一個 Master複製到另一個 Slave。在 Master 與 Slave 之間的實現整個複製過程主要由三個線程來完成,其中兩個線程( Sql線程 和 IO線程 )

原创 PHP底層探索(二):一次請求的開始與結束

PHP開始執行以後會經過兩個主要階段: 1.處理請求之前的開始階段 2.請求之後的結束階段 開始階段有兩個過程: 1)過程是模塊初始化階段(MINIT),在整個SAPI聲明週期內,該過程只執行一次. 2)過

原创 PHP開發框架淺析

PHP開發框架是什麼 開發框架的定義我沒有找到很準確的描述,下面幾句話基本概括了開發框架的的功能和用途 框架是一種應用程序的半成品;框架就像是人的骨骼一樣;框架是一組可複用的組件;框架是一個可複用的設計構件…… 簡而言之,框架就是制定

原创 Jacascript 同步服務器時間與頁面

將以下的代碼  放置html頁面中! [html] view plain copy <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

原创 Linux下配置 Keepalived(心跳檢測部署)

首先呢,我想先給大家簡單介紹一下什麼是keepalived: Keepalived的作用是檢測服務器的狀態,如果有一臺web服務器死機,或工作出現故障,Keepalived將檢測到,並將有故障的服務器從系統中剔除,同時使用其他服務器代

原创 JSON Web Token - 在Web應用間安全地傳遞信息 JWT

JSON Web Token(JWT)是一個非常輕巧的規範。這個規範允許我們使用JWT在用戶和服務器之間傳遞安全可靠的信息。 讓我們來假想一下一個場景。在A用戶關注了B用戶的時候,系統發郵件給B用戶,並且附有一個鏈接“點此關注A用戶

原创 服務器基礎:同步、異步、阻塞與非阻塞

1 同步與異步 首先來解釋同步和異步的概念,這兩個概念與消息的通知機制有關。也就是同步與異步主要是從消息通知機制角度來說的。 1.1 概念描述 同步 所謂同步就是當一個任務的完成需要依賴另一個任務時,只有等待被依賴的任務完成後,纔

原创 TCP/IP協議三次握手與四次握手流程解析

  一、TCP報文格式   TCP/IP協議的詳細信息參看《TCP/IP協議詳解》三卷本。下面是TCP報文格式圖: 圖1 TCP報文格式   上圖中有幾個字段需要重點介紹下:   (1)序號:Seq序號,佔32位,用來標識從TCP源

原创 PHP底層探索(四):SAPI的生命週期

CLI/CGI模式的PHP屬於單進程的SAPI模式。這類的請求在處理一次請求後就關閉。也就是隻會經過如下幾個環節: 開始 - 請求開始 - 請求關閉 - 結束 SAPI接口實現就完成了其生命週期。 單進程多請求則如下圖所示:

原创 linux awk命令詳解

簡介 awk是一個強大的文本分析工具,相對於grep的查找,sed的編輯,awk在其對數據分析並生成報告時,顯得尤爲強大。簡單來說awk就是把文件逐行的讀入,以空格爲默認分隔符將每行切片,切開的部分再進行各種分析處理。 awk有3個

原创 sql語句的內外左右連接(left join and right join)

1.內連接:取的兩個表的(有能連接的字段)的交集,即字段相同的。利用內連接可獲取兩表的公共部分的記錄,  select * from A,B where A.id=B.id  與 Select * from A JOIN B ON A.

原创 PHP底層探索(一):幾種常見的SAPI

SAPI: Server Application Programming Interface 服務器端應用編程端口.即php與其他應用交互的接口. 常用的SAPI有:cgi fast-cgi cli apache的DLL