原创 PHP的pcntl進程控制教程一(pcntl_fork) 轉

pcntl 簡介 PHP的進程控制支持實現了Unix方式的進程創建, 程序執行, 信號處理以及進程的中斷。 進程控制不能被應用在Web服務器環境,當其被用於Web服務環境時可能會帶來意外的結果。 這份文檔用於闡述每個進程控制函數的通常用

原创 MySQL性能管理及架構設計(一):什麼影響了數據庫查詢速度、什麼影響了MySQL性能 轉

一、什麼影響了數據庫查詢速度 1.1 影響數據庫查詢速度的四個因素     1.2 風險分析 QPS: Queries Per Second意思是“每秒查詢率”,是一臺服務器每秒能夠相應的查詢次數,是對一個特定的查詢服務器在規定時

原创 什麼是微服務架構 轉

什麼是微服務? 微服務(Microservices Architecture)是一種架構風格,一個大型複雜軟件應用由一個或多個微服務組成。系統中的各個微服務可被獨立部署,各個微服務之間是鬆耦合的。每個微服務僅關注於完成一件任務並很好地完成

原创 MySQL/InnoDB中,樂觀鎖、悲觀鎖、共享鎖、排它鎖、行鎖、表鎖、死鎖概念的理解 轉

MySQL/InnoDB的加鎖,一直是一個面試中常問的話題。例如,數據庫如果有高併發請求,如何保證數據完整性?產生死鎖問題如何排查並解決?我在工作過程中,也會經常用到,樂觀鎖,排它鎖,等。於是今天就對這幾個概念進行學習,屢屢思路,記錄一下。

原创 利用keepalived實現高可用nginx(修改正) 原

實驗拓撲圖 (1)本次基於VMware Workstation搭建一個四臺Linux(CentOS 7.5)系統所構成的一個服務器集羣,其中兩臺nginx做前端調度服務器(一臺爲主機,另一臺爲備機),另外兩臺作爲真實的Web服務器   (

原创 PHP面向對象編程:面向對象概念、基本實踐、高級實戰、PHP面向對象特殊實踐 轉

一、面向對象的概念 1.1 什麼是面向對象(object oriented)      世間萬物皆對象,抽象的也是對象,一切可見或不可見都是對象 1.2 對象的基本組成      對象包含兩個部分: 對象的組成元素 是對象的數據

原创 linux 在文件中查找ip的命令行 原

grep -E -o "([0-9]{1,3}[\.]){3}[0-9]{1,3}" access.log 以下是比較準確的寫法 grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(2

原创 MySQL性能管理及架構設計(二):數據庫結構優化、高可用架構設計、數據庫索引優化 轉

一、數據庫結構優化(非常重要) 1.1 數據庫結構優化目的     1、減少數據冗餘:(數據冗餘是指在數據庫中存在相同的數據,或者某些數據可以由其他數據計算得到),注意,儘量減少不代表完全避免數據冗餘;   2、儘量避免數據維護中出現更

原创 十個 PHP 開發者最容易犯的錯誤 轉

PHP 語言讓 WEB 端程序設計變得簡單,這也是它能流行起來的原因。但也是因爲它的簡單,PHP 也慢慢發展成一個相對複雜的語言,層出不窮的框架,各種語言特性和版本差異都時常讓搞的我們頭大,不得不浪費大量時間去調試。這篇文章列出了十個最容

原创 mysqlslap詳解--MySQL自帶的性能壓力測試工具(測試修正版) 轉

mysqlslap 是 Mysql 自帶的壓力測試工具,可以模擬出大量客戶端同時操作數據庫的情況,通過結果信息來了解數據庫的性能狀況 mysqlslap 的一個主要工作場景就是對數據庫服務器做基準測試 例如我們拿到了一臺服務器,準備做爲數據

原创 PHP遠程調用, 爲什麼需要使用RPC 轉

前言   一個項目,從開始到版本更新,一直到最後的版本維護。功能在不斷增多,對應的代碼量也在不斷增加,也就意味着項目變得更不可維護,這時候,我們需要用拆分的方式將一個項目打散,以便開發團隊更好的對項目進行維護。 分模塊 這個階段,一般也

原创 數據進一步優化篇:千萬級數據下的Mysql優化 轉

前言 平時在寫一些小web系統時,我們總會對mysql不以爲然。然而真正的系統易用應該講數據量展望拓展到千萬級別來考慮。因此,今天下午實在是無聊的慌,自己隨手搭建一個千萬級的數據庫,然後對數據庫進行一些簡單的CRUD來看看大數據情況下的

原创 linux一些查看進程情況的命令 轉

Linux根據端口號查看進程PID 1、命令lsof,以查找佔用端口80爲例,用法如下: [root@localhost nginx]# lsof -i:80 [root@localhost nginx]#     以上爲沒有進程

原创 php中echo(),print(),print_r(),var_dump()與var_export()間的區別 原

echo()函數:輸出一個或多個字符串。 輸出所有參數。不會換行。 echo 不是一個函數(它是一個語言結構), 因此你不一定要使用小括號來指明參數,單引號,雙引號都可以。 echo (不像其他語言構造)不表現得像一個函數, 所以不能總

原创 nginx長連接出現504的解決辦法 原

在http 中添加如下         fastcgi_connect_timeout 300s;         fastcgi_send_timeout 300s;         fastcgi_read_timeout 300s;