Nhắc tới Memcache chắc các bạn cũng đã hiểu nó là gì, nếu không có
thể vào google để tìm hiểu rất đơn giản, nó là hệ thống Cache làm cho
ứng dụng được chạy nhanh hơn.
Một số giới thiệu về Memcache
Memcache là một daemon, có nghĩa là nó chạy
như một dịch vụ riêng biệt trên máy tính của bạn. Cũng giống như MySQL
chạy như một dịch vụ riêng biệt. Trong thực tế, để sử dụng memcache
trong PHP bạn phải kết nối đến nó, giống như MySQL.
Hãy suy nghĩ của memcache là biến $_SESSION cho PHP, nhưng thay vì nó
làm việc trên cơ sở mỗi người dùng, nó chạy trên toàn bộ ứng dụng – như
MySQL. Trong thực tế, bạn có thể sử dụng memcache là một phiên xử lý
đối với PHP.
Cài đặt Memcache cho Windows
- Tải về memcache từ http://code.jellycan.com/memcached (Chọn phiên bản Win32)
- Cài đặt memcache như một dịch vụ:- Giải nén và sao chép các tập tin
nhị phân vào thư mục mong muốn của bạn (ví dụ c:\memcached) bạn sẽ
thấy một tập tin, memcached.exe
- Cài đặt dịch vụ bằng cách sử dụng lệnh: c:\memcached\memcached.exe -d install từ dòng lệnh
- Khởi động máy chủ từ Microsoft Management Console hoặc bằng cách chạy một trong các lệnh sau: c:\memcached\memcached.exe -d start, hoặc net start “memcached Server”
- Chép tập tin php_memcache.dll vào thư mục chứa Extensions của PHPNếu bạn không có file này tải từ các địa chỉ sau (Địa chỉ nằm trên nhất được đề nghị)
- www.pureformsolutions.com/pureform.wordpress.com/2008/06/17/php_memcache.dll for PHP 5.2.* (GOOD) - downloads.php.net/pierre/ [thanks to Henrik Gemal]
- kromann.info/download.php?strFolder=php5_1-Release_TS&strIndex=PHP5_1 for PHP 5.1.* [thanks, Rich] - Tìm file cấu hình php.ini của Php và thêm đoạn sau vào (Nên đặt chung các phần định nghĩa Extension để dể dàng bảo trì :))
extension=php_memcache.dll
- Khởi động lại Apache
- Chạy thử đoạn code sau để kiểm tra
$memcache = new Memcache;Nếu không báo lỗi => Thành công, chúc mừng bạn, bạn có thể sử dụng được Memcache
$memcache->connect(‘localhost’,11211); # You might need to set ‘localhost’ to ’127.0.0.1′
echo ‘Server\’s version: ‘ . $memcache->getVersion() . ‘
’;
if (!$memcache->get(‘key’))
{
$tmp_object = new stdClass;
$tmp_object->author = ‘Nguyen Hoang Duy’;
$tmp_object->email = ‘nhduy88@gmail.com’;
$tmp_object->website = ‘https://nhduy88.wordpress.com/’;
$tmp_object->date = date(‘d-m-Y h:i:s’, time());
$memcache->set(‘key’,$tmp_object,false,30);
echo ‘Store data in the cache (data will expire in 30 seconds)
’;
}
else
{
echo ‘Read data from cache you have created
’;
}
echo ‘
Data from the cache:
’;
echo ‘’; var_dump($memcache->get(‘key’)); echo ‘’;
echo ‘
Current date time:’ .date(‘d-m-Y h:i:s’, time());
?>
Ghi chú
Memcached, theo mặc định, chỉ lưu trữ với 64mb bộ nhớ, nó là thấp đối với hầu hết các ứng dụng. Để thay đổi, điều hướng đến HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Server Services\memcached trong registry của bạn, tìm mục ImagePath và thay đổi nó thành như thế này:
“C:\memcached\memcached.exe” -d runservice -m 512
Bây giờ khi bạn bắt đầu dịch vụ qua net start “memcached Server”, nó sẽ chạy với 512MB bộ nhớ lúc nó xử lý.
Nếu cần bất cứ thắc mắc hoặc cấu hình gõ vào dòng lệnh c:\memcached\memcached.exe -help trong một cửa sổ lệnh.
Bạn có thể tải file PDF ở đây Memcached Windows PHP