原创 PHP封裝MongoDB類

<?php class MongoDB{ private $_manager; private $_host; private $_username; private $_password; p

原创 Kafka簡介及使用PHP處理Kafka消息

Kafka簡介及使用PHP處理Kafka消息 Kafka 是一種高吞吐的分佈式消息系統,能夠替代傳統的消息隊列用於解耦合數據處理,緩存未處理消息等,同時具有更高的吞吐率,支持分區、多副本、冗餘,因此被廣泛用於大規模消息數據處理應用。

原创 vim常用命令

顯示行號: :set number 隱藏行號: :set nonumber 回退(相當於Ctrl+Z): u 撤銷回退:ctrl+r 回到底部:GG 回到頂部:gg 上一頁:Page Up(Win) ctrl+↑(Mac)   下一頁:P

原创 PHP使用多線程

PHP 5.3 以上版本,使用pthreads PHP擴展,可以使PHP真正地支持多線程。多線程在處理重複性的循環任務,能夠大大縮短程序執行時間。   我之前的文章中說過,大多數網站的性能瓶頸不在PHP服務器上,因爲它可以簡單地通過橫向增

原创 PHP二分法查找、快速排序、冒泡排序

二分法查找: /* 遞歸調用實現二分法查找 //$search 函數 $array爲數組,$K爲要找的值,$low爲查找範圍的最小鍵值,$high爲查找範圍的最大鍵值 //intval返回整數值*/ function searc

原创 Nginx負載均衡配置

準備工作: 服務器1: 地址:10.10.10.10    端口:默認80 服務器2: 地址:20.20.20.20    端口:默認80 服務器3: 地址:30.30.30.30    端口:默認80 服務器4: 地址:40.40.40

原创 通過Linux定時任務加shell腳本檢測RabbitMQ消費者運行狀況以及自啓

目的:防止RabbitMQ消費者進程中斷影響業務 1、編寫 rabbitmq_consumer.php消費者文件 (關於消費者和生產者請移步:https://blog.csdn.net/why444216978/article/detai

原创 RabbitMQ實現生產者和消費者(帶註釋)

1、生產者:rabbitmq_publisher.php <?php date_default_timezone_set("Asia/Shanghai"); //配置信息 $conn_args = array( 'host'

原创 MySQL使用IN代替OR的原因

對於許多數據庫服務器而言,IN()列表不過是多個OR語句的同義詞而已,因爲IN和OR在邏輯上是等同的。不僅是在MySQL數據庫服務器,對於許多其他的數據庫服務器使用到IN查詢時,都是按照如下方式處理的: [1] 對IN列表中的數值進行排序

原创 關於git提交不上去的坑

1、首先檢查對應文件夾是不是爲空,git默認不提交空文件夾 2、檢查.gitignore文件裏是否設置了忽略對應文件夾和文件

原创 Mysql給現有表分區遇到的問題

一、需要注意的問題: 1、分區的字段必須是主鍵 2、不可以創建兩個主鍵,只能創建複合主鍵,所以要將原來的主鍵刪除再創建新的複合主鍵 3、要刪除原來的主鍵必須要先刪除對應字段上的自增 二、操作步驟 1、刪除自增: alter table

原创 MyISAM與InnoDB對比

一、鎖差異 myisam支持表級鎖,鎖定對象的顆粒度大,所以加鎖和開鎖的速度很快,能夠很好地避免死鎖 innodb支持行級鎖,對象的顆粒度小,所以鎖定資源爭用的概率也小,能夠更好地支持併發,容易發生死鎖 二、事務 myisam不支持事務

原创 小心MySQL聯合索引的效率陷阱

場景: 表中有兩個索引:索引index_1(create_Time, category_id), index_2(category_id)  查詢語句爲:select create_time,category_id from table 

原创 一張圖看明白MySQL中的B+樹索引

葉子節點爲鏈表結構,僅在葉子節點上存放數據,並且從根節點到葉子節點的高度相同。  

原创 關於MySQL的權限控制

GRANK 賦予username用戶使用password在所有主機(%)上對所有數據庫(*.)的所有表(.*)的所有權限(all) grant all privileges on *.* to 'username'@'%' identif