原创 poll函數詳解

1 poll函數概述 select() 和 poll() 系統調用的本質一樣,poll() 的機制與 select() 類似,與 select() 在本質上沒有多大差別,管理多個描述符也是進行輪詢,根據描述符的狀態進行處理,但是 pol

原创 linux下select/poll/epoll機制的比較

select、poll、epoll簡介   epoll跟select都能提供多路I/O複用的解決方案。在現在的Linux內核裏有都能夠支持,其中epoll是Linux所特有,而select則應該是POSIX所規定,一般操作系統均有實現 s

原创 linux如何查詢進程佔用的內存

1. ps aux命令 USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND lizhibin  32986  0.0 13.8 916276

原创 MySQL主從複製原理、半同步操作步驟及原理

1.1 企業Linux運維場景數據同步方案 1.1.1 文件級別的異機同步方案 1、scp/sftp/nc 命令可以實現遠程數據同步。  2、搭建ftp/http/svn/nfs 服務器,然後在客戶端上也可以把數據同步到服務器。  3、

原创 MySQL InnoDB引擎 MVCC併發控制

首先,我們來介紹一下什麼是MVCC,爲什麼要使用MVCC,MVCC的原理,然後結合MySQL的事務隔離級別來說一下MVCC的實現。 1.MVCC定義 MVCC全稱Mutli Version Concurreny Control,多版本併發

原创 數據庫事務與鎖

一、事務的概念 事務(Transaction),是指訪問並可能更新數據庫中各種數據項的一個程序執行單元(Unit),通俗點也就是指針對數據庫中形形色色的數據,我們進行一些存取操作。  二、事務的特性 事務是恢復和併發控制的基本單位。具有四

原创 微服務--分佈式事務的實現方法及替代方案

這兩天正在研究微服務架構中分佈式事務的處理方案, 做一個小小的總結, 作爲備忘. 如有錯誤, 歡迎指正! 概念澄清 事務補償機制: 在事務鏈中的任何一個正向事務操作, 都必須存在一個完全符合回滾規則的可逆事務. CAP理論: CAP(Co

原创 深入理解分佈式事務,高併發下分佈式事務的解決方案

1、什麼是分佈式事務 分佈式事務就是指事務的參與者、支持事務的服務器、資源服務器以及事務管理器分別位於不同的分佈式系統的不同節點之上。以上是百度百科的解釋,簡單的說,就是一次大的操作由不同的小操作組成,這些小的操作分佈在不同的服務器上,且

原创 學設計模式要看懂UML類圖才行

一、UML類圖概念: 類圖(Class diagram)主要用於描述系統的結構化設計。類圖也是最常用的UML圖,用類圖可以顯示出類、接口以及它們之間的靜態結構和關係。  下面是《大話設計模式》的UML類圖的總結筆記,採用了裏面的實例。以下

原创 cli執行腳本時出現(2006 MySQL server has gone away) 問題處理

最近有同事問我,有個cli運行的處理腳本經常沒執行完就退出了,導致日誌表裏顯示腳本運行狀態一直顯示在執行中。 瞭解到他的邏輯如下: 程序開始時建立兩個數據庫連接A和B(因爲業務數據表和日誌表在兩個數據庫中),連接A用來保存抓取的業務數據,

原创 shell腳本Windows轉unix格式

在windows下寫的shell腳本,放到linux下運行經常會報以下錯誤: test.sh: line 5: $'\r': command not found test.sh: line 6: syntax error near un

原创 Mysql對於事務併發處理帶來的問題,髒讀、不可重複讀、幻讀的理解

一、緣由   衆所周知MySQL從5.5.8開始,Innodb就是默認的存儲引擎,Innodb最大的特點是:支持事務、支持行級鎖。既然支持事務,那麼就會有處理併發事務帶來的問題:更新丟失、髒讀、不可重複讀、幻讀;相應的爲了解決這四個問題,

原创 雙主模式nginx + keepalived配置(雙機互爲主備)

配置nginx+keepalived的雙主機雙機熱備,這種配置下有兩個Virtual IP,兩個機器互爲主備,最後我們把域名DNS服務器解析至兩個Virtual IP即可。 環境介紹 兩臺服務器 Server1:192.168.30.6

原创 Mysql字段類型與合理選擇

字段類型 數值 MySQL 的數值數據類型可以大致劃分爲兩個類別,一個是整數,另一個是浮點數或小數。 許多不同的子類型對這些類別中的每一個都是可用的,每個子類型支持不同大小的數據,並且 MySQL 允許我們指定數值字段中的值是否有正負之分

原创 PHP分佈式路由算法介紹與實現

在我們做負載均衡,分佈式部署,數據分表時,需要用到一些分佈式路由算法將請求路由到真實的節點上。最常用的有哈希取模,一致性哈希算法等。這裏對他們的做一些介紹及提供PHP實現。 場景舉例:分佈式緩存服務器路由 1、哈希取模算法 對緩存key進