Cách tăng tốc apache bằng mod_pagespeed và Memcached trên Ubuntu 15.10

theanh

Administrator
Nhân viên
Hướng dẫn này sẽ chỉ cho bạn cách cải thiện thời gian tải trang của trang web bằng cách sử dụng mô-đun Google mod_pagespeed cho Apache kết hợp với bộ đệm trong bộ nhớ nhanh Memcached trên Ubuntu 15.10 (Wiley Werewolf). Thời gian tải trang là một yếu tố quan trọng để có được thứ hạng tốt trong các công cụ tìm kiếm, bạn có thể kiểm tra thời gian tải hiện tại, ví dụ: bằng công cụ PageSpeed Insights của Google hoặc bằng các công cụ dành cho nhà phát triển trong trình duyệt web Firefox. Pagespeed là một mô-đun Apache 2 tối ưu hóa và lưu trữ nội dung của trang web trước khi nó được phân phối đến trình duyệt, kết quả là trang tải, tải hệ thống trên máy chủ của bạn giảm và máy chủ sẽ có thể phân phối nhiều trang hơn mỗi giây. Mod_pagespeed sử dụng bộ đệm hệ thống tệp theo mặc định, trong hướng dẫn này, chúng tôi sẽ thay thế bộ đệm hệ thống tệp bằng Memcached, một daemon lưu trữ bộ đệm trong bộ nhớ nhanh sẽ cải thiện thêm thời gian tải. Hướng dẫn này tương thích với mọi loại thiết lập apache, tôi sẽ sử dụng Ubuntu LAMPserver làm cơ sở nhưng bạn cũng có thể sử dụng một trong các hướng dẫn ISPConfig 3 Perfect Server.


Cài đặt mod_pagespeed​

Google cung cấp các gói mod_pagespeed .deb cho các bản cài đặt Ubuntu 32 và 64 bit.

Làm thế nào để biết bạn cần gói 32 bit hay 64 Bit? Chạy lệnh:
Mã:
uname -a
Kết quả của lệnh sẽ tương tự như ảnh chụp màn hình bên dưới.



Khi lệnh chứa chuỗi "x86_64" thì hệ thống của bạn chạy kernel Linux 64Bit. Trong trường hợp này, hãy sử dụng các lệnh được cung cấp bên dưới cho Ubuntu 64Bit.

Ubuntu 64 bit (Mặc định cho hầu hết các máy chủ hiện tại)
Mã:
cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_amd64.deb
dpkg -i mod-pagespeed-stable_current_amd64.deb
Ubuntu 32 bit
Mã:
cd /tmp
wget https://dl-ssl.google.com/dl/linux/direct/mod-pagespeed-stable_current_i386.deb
dpkg -i mod-pagespeed-stable_current_i386.deb
Sau đó, khởi động lại Apache 2 để tải mod_pagespeed cấu hình.
Mã:
service apache2 restart

Cài đặt Memcached​

Trình nền Memcached có sẵn trong kho lưu trữ Ubuntu dưới dạng gói .deb và có thể cài đặt bằng apt:
Mã:
apt-get -y install memcached
Chạy lệnh "netstat -tap | grep memcached" để xem Memcached đã được khởi động chưa:
Mã:
netstat -tap | grep memcached
Kết quả của lệnh netstat sẽ như thế này:
Mã:
Cổng được hiển thị ngay sau từ localhost, trong trường hợp này, cổng là 11211, đây là cổng mặc định của memcached. Chúng ta cần biết số cổng đó để cấu hình mod_pagespeed.

Nếu bạn muốn sử dụng Memcache từ các ứng dụng chạy trên PHP của mình chứ không chỉ dành cho mod_pagespeed, hãy cài đặt tiện ích mở rộng PHP Memcached:
Mã:
apt-get install php5-memcached

Cấu hình mod_pagespeed để sử dụng Memcached​

Mở tệp pagespeed.conf trong trình soạn thảo, tôi sẽ sử dụng trình soạn thảo nano ở đây:
Mã:
nano /etc/apache2/mods-available/pagespeed.conf
và tìm kiếm dòng "ModPagespeedMemcachedServers":
Mã:
[....]
# ModPagespeedMemcachedServers localhost:11211
[....]
Xóa # trong phía trước dòng để dòng kết quả trông giống như dòng bên dưới:
Mã:
[....]
ModPagespeedMemcachedServers localhost:11211
[....]
Nếu bạn có nhiều bộ nhớ trong máy chủ, thì bạn có thể tăng tốc hơn nữa bằng cách xóa # ở phía trước dòng này:
Mã:
[....]
ModPagespeedCreateSharedMemoryMetadataCache "/var/cache/mod_pagespeed/" 51200
[....]
Sau đó, khởi động lại máy chủ Apache 2 để kích hoạt cấu hình mới.
Mã:
service apache2 restart
Bây giờ mod_pagespeed sẽ sử dụng Memcached làm backend lưu trữ. Bạn có thể lấy số liệu thống kê sử dụng từ Memcached bằng lệnh nc:
Mã:
echo stats | nc 127.0.0.1 11211
Mã:
root@server1:/tmp# echo stats | nc 127.0.0.1 11211
STAT pid 1636
Thời gian hoạt động của STAT 254
Thời gian STAT 1460561250
Phiên bản STAT 1.4.24 Ubuntu
STAT libevent 2.0.21-stable
STAT pointer_size 64
STAT rusage_user 0.000000
STAT rusage_system 0.020000
STAT curr_connections 6
STAT total_connections 8
STAT connection_structures 7
STAT reserved_fds 20
STAT cmd_get 34
STAT cmd_set 15
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 14
STAT get_misses 20
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 0
STAT incr_hits 0
STAT decr_misses 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 8573
STAT bytes_written 22539
STAT limit_maxbytes 67108864
STAT accepted_conns 1
STAT listen_disabled_num 0
STAT luồng 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT malloc_fails 0
STAT bytes 6856
STAT curr_items 9
STAT total_items 15
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT evictions 0
STAT reclaimed 0
STAT crawler_reclaimed 0
STAT crawler_items_checked 0
STAT lrutail_reflocked 0
END
Nhấn [ctrl] + c để quay lại dấu nhắc lệnh.

Bây giờ hãy kiểm tra lại tốc độ trang web của bạn, ví dụ bằng PageSpeed Insights. Khi trang web của bạn chưa có nhiều lưu lượng truy cập thì bạn có thể phải tải lại trang web vài lần để lấp đầy bộ nhớ đệm trước khi nhận được kết quả phù hợp.


Liên kết​

 
Back
Bên trên