1. About Easysearch
INFINI Easysearch 是一个分布式的近实时搜索与分析引擎,核心引擎基于开源的 Apache Lucene。
Easysearch 衍生自基于开源协议 Apache 2.0 的 Elasticsearch 7.10 版本。
Easysearch 的目标是提供一个轻量级的 Elasticsearch 可替代版本,并继续完善和支持更多的企业级功能。
与 Elasticsearch 相比,Easysearch 更关注在搜索业务场景的优化和继续保持其产品的简洁与易用性。
详情参见:https://www.infinilabs.com/products/easysearch
本文将尝试用easysearch替代elasticsearch给Magento2使用
2. 硬件环境
- CPU: 4 Core
- RAM: 16G
- SSD: 220G
- NET: 14Mbps
- Location: Chengdu of China
3. 软件环境
- Magento: 2.4.6-P1
- Web: OpenResty
- PHP: V8.1
- Other: - imagick - redis - fileinfo - Xdebug
- JDK: Java15
- DB : Maria 10.6
- Redis: 7.0.11
- Search: Easysearch 1.2.0
4. Install Easysearch
手工安装: https://www.infinilabs.com/docs/latest/easysearch/
Docker安装: https://hub.docker.com/r/infinilabs/easysearch
5. Download Magento On Github
由于目前Magento2的Composer安装基本废了,现直接从github下载安装包进行安装
> wget https://github.com/magento/magento2/archive/refs/tags/2.4.6-p1.zip
> unzip 2.4.6-p1.zip
> mv magento2.4.6-p1 /var/www/html/magento
> cd /var/www/html/<magento install directory>
> find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
> find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
> chown -R :www-data . # Ubuntu
> chmod u+x bin/magento
> composer install
6. install Magento2
bin/magento setup:install \ --base-url=https://magento2.shuangyulin.cn \ --db-host=localhost \ --db-name=magento \ --db-user=root \ --db-password=Magentochina.org \ --admin-firstname=admin \ --admin-lastname=admin \ --admin-email=shuai.zend@qq.com \ --admin-user=shuai \ --admin-password=Magentochina.org \ --language=en_US \ --currency=USD \ --timezone=America/Chicago \ --use-rewrites=1 \ --search-engine=opensearch \ --elasticsearch-host=127.0.0.1 \ --elasticsearch-port=9200 \ --elasticsearch-index-prefix=magento2 \ --elasticsearch-timeout=15
7. 结语
通过以上测试,验证成功Magento2可以运行在easysearch上。
Elasticsearch太重了,easysearch带来了更高的性能及资源使用率。