原创 redis+php案例

1.通過apache的ab來進行壓力高併發測試運行下面的程序,這是往redis裏添加用戶數據 放到redis隊列裏public function r

原创 thinkphp mysql 讀寫分離

ThinkPHP提供了完善的讀寫分離功能,不需要手動切換數據庫。什麼時候讀,什麼時候寫系統會自動判斷。讀數據時系統會操作從服務器,而寫數據時系統會操作主服務器。最終由數據庫實現同步,這就是一個最典型的數據庫讀寫分離,下以將配置好的兩臺主從

原创 mysql 鎖表lock tables/unlock tables

簡單的數據庫鎖表操作 public function locktable(){ $sql="LOCK TABLES think_members WRITE"; $re=M()->execute($sql); $s

原创 php+redis 實現用戶註冊等操作

reids的hash實現用戶數據的增刪改查 1.用戶註冊 public function saveuser() { $username = $_POST ['username']; $password = md5 ( $_POST

原创 微信上傳下載臨時素材

1.微信上傳臨時素材 $tokenurl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=****

原创 mysql lock table/unlock table 表鎖/解鎖

在某個地方看到有個例子,具體描述類似如下:商店現在某商品只有1件庫存,然後A與B在網上進行下訂,A與B幾乎同時(或許也就差幾毫秒,A比B快那麼一點點)進行。 很明顯是隻有A才能成功下單的,B則會收到庫存不足的提示,但是作爲放置在服務端

原创 centos定時備份mysql數據庫 用shell腳本實現

數據很重要,上線的項目必須數據庫做到定時備份 數據量小的可用如下方法,下面的是全量備份, 數據量大的肯定行不通的,這時可用mysql主從複製了 注意事項: 1、shell腳本的mysqldump命令必須使用絕對路徑,首先用find /

原创 crontab定時執行php腳本備份數據庫

用crontab定時執行PHP腳本來備份數據庫,簡單的寫了個實例: db_backup.php代碼: [php] view plain copy <?php   date_default_timezone_s

原创 PHP中防止SQL注入的方法

【一、在服務器端配置】        安全,PHP代碼編寫是一方面,PHP的配置更是非常關鍵。 我們php手手工安裝的,php的默認配置文件在 /usr/local/apache2/conf/php.ini,我們最主要就是要

原创 Nginx/LVS/HAProxy負載均衡軟件的優缺點詳解

PS:Nginx/LVS/HAProxy是目前使用最廣泛的三種負載均衡軟件,本人都在多個項目中實施過,參考了一些資料,結合自己的一些使用經驗,總結一下。 一般對負載均衡的使用是隨着網站規模的提升根據不同的階段來使用不同的技術。具體的應

原创 設計模式之觀察者模式

<?php //1.有一個主題接口,提供觀察者註冊和通知的 //2.有一堆觀察者,觀察者先向主題註冊,然後主題通知觀察者幹什麼 //主題接口 interface Subject { public function register(Ob

原创 redis限制單ip、單用戶的訪問次數

有時候我們需要限制一個api或頁面訪問的頻率,例如單ip或單用戶一分鐘之內只能訪問多少次  類似於這樣的需求很容易用Redis來實現 [php] view plain copy <?php     $redis =

原创 centos安裝svn並配置鉤子同步到www目錄

1、安裝svn #yum install mod_dav_svn subversion    2、建立 SVN的根目錄 #mkdir -p /opt/svn/   3、建立一個數據倉庫 #mkdir -p /opt/svn

原创 30個php操作redis常用方法代碼例子

注意事項: 1、Redis分服務端和客戶端,set和get是針對單個字符串 2、list類型、string類型操作類似PHP的數組操作   這篇文章主要介紹了30個php操作redis常用方法代碼例子,本文其實不止30個方法,可

原创 MySQL大數據量分頁SQL語句優化

分頁程序原理很簡單,這裏就不多說了,本篇文章主要說的是在數據表記錄量比較大的情況下,如何將分頁SQL做到更優化,讓MySQL執行的更快的方法。 一般的情況下,我們的分頁SQL語句是這樣的: 查看代碼   打印 1 SE