NỘI DUNG
I. Elasticsearch là gì?
Elasticsearch là một công cụ tìm kiếm dựa trên phần mềm Lucene. Nó cung cấp một bộ máy tìm kiếm dạng phân tán, có đầy đủ công cụ với một giao diện web HTTP có hỗ trợ dữ liệu JSON. Elasticsearch được phát triển bằng Java và được phát hành dạng nguồn mở theo giấy phép Apache.
Việc cài đặt cấu hình Elasticsearch lên các website sử dụng nền tảng WordPress sẽ giúp lập chỉ mục dữ liệu các bài viết, các sản phẩm Woocommerce, nhằm tăng tốc độ tìm kiếm trên trang.
Hiểu đơn giản hơn là:
Elasticsearch
là mộtsearch engine
.Elasticsearch
được kế thừa từLucene Apache
Elasticsearch
thực chất hoặt động như 1 web server, có khả năng tìm kiếm nhanh chóng (near realtime) thông qua giao thức RESTful.Elasticsearch
có khả năng phân tích và thống kê dữ liệuElasticsearch
chạy trên server riêng và đồng thời giao tiếp thông qua RESTful do vậy nên nó không phụ thuộc vào client viết bằng gì hay hệ thống hiện tại của bạn viết bằng gì. Nên việc tích hợp nó vào hệ thống bạn là dễ dàng, bạn chỉ cần gửi request http lên là nó trả về kết quả.Elasticsearch
là 1 hệ thống phân tán và có khả năng mở rộng tuyệt vời (horizontal scalability). Lắp thêm node cho nó là nó tự động auto mở rộng cho bạn.Elasticsearch
là 1open source
được phát triển bằngJava
.
Những công ty đang sử dụng Elasticsearch
:
- Wikimedia
- athenahealth
- Adobe Systems
- StumbleUpon Mozilla,
- Amadeus IT Group
- Quora
- Foursquare
- Etsy
- SoundCloud
- GitHub
- FDA
- CERN
- Stack Exchange
- Center for Open Science
- Reverb
- Netflix
- Pixabay
- Motili
- Sophos
- Slurm Workload Manager
II. Cài đặt cấu hình Elasticsearch trên WordPress
Bước 1: Cài đặt Elasticsearch
Hiện tại máy chủ VPS của mình sử dụng CyberPanel. Nên mình cài đặt nhanh Elasticsearch trên CyberPanel bằng cách truy cập vào Manage Services => Applications
Sau đó ở dòng Elasticsearch bạn click INSTALL để thực hiện cài đặt nhanh.
Đối với các Panel hoặc script không có sẵn bạn có thể cài đặt Elasticsearch trên CentOS 7 theo cách thủ công nhé..
Bước 2: Thiết lập Elasticsearch trên WordPress với ElasticPress
Đối với WordPerss bạn cần cài đặt Plugin để làm môi trường kết nối. Ở đây mình sử dụng Plugin sau để cài đặt.
1. Cài đặt Plugin ElasticPress
- Link tải Plugin ElasticPress
Bạn đăng nhập vào WordPress và tìm Plugin có tên ElasticPress và thực hiện cài đặt vào.
2. Cấu hình ElasticPress
Sau khi cài đặt thành công. Bạn chưa thể sử dụng ngay mà phải cấu hình ElasticPress. Bạn truy cập vào mã nguồn website tìm file có tên wp-config.php
và mở file này lên. Sau đó bạn thêm đoạn sau vào bên trong file và thực hiện lưu lại.
/** ElasticPress */ define( 'EP_HOST', 'http://127.0.0.1:9200' );
Tiếp theo bạn truy cập vào admin WordPress. Click vào ElasticPress và chọn Index Your Content
Sau đó bạn sẽ thấy dữ liệu đang được sync. Tuy vào các dữ liệu của web mà diễn ra nhanh hay chậm.
Ngoài ra bạn có thể sử dụng WP-CLI để quản lý ElasticPress
Các lệnh sử dụng ELasticPress
# Thống kê Index wp elasticpress stats # Kiểm tra trạng thái Index wp elasticpress status # Đánh chỉ mục lại Website wp elasticpress index
Kích hoạt sử dụng Elasticsearch trong WP Query
Trong các truy cấn đến CSDL dùng WP Query, cho thêm vào tham số để nó truy vấn đến Index Elasticsearh thay vì đến CSDL MySQL, đó là tham số
'ep_integrate' => true
Chúc bạn thực hiện thành công.