最新公告
  • 欢迎您光临码农资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!加入我们
  • MeiliSearch作为服务如何在服务器中自动运行

    Meilisearch是一个强大且快速的开源搜索引擎,内置于Rust. 它旨在为用户提供非常有用和可定制的搜索体验,包括开箱即用的功能,例如任何类型的项目的错字容错、过滤和同义词。

    Meilisearch全文检索

    运行一个用于测试目的的 Meilisearch 实例非常容易,并且可以通过多种方式完成:使用 Docker、Homebrew、Aptitude、二进制文件、简单的curl,甚至是源代码。

    在 Linux 环境中,systemd是一个可以在操作系统启动时启动的进程,它将在后台继续运行。它的最大优势之一是让您的程序随时可用。即使发生一些执行问题或崩溃,服务也会重新启动,您的程序将再次运行。

    systemd允许您创建和管理自己的自定义服务。为了确保 Meilisearch 始终响应您的请求,您可以构建自己的服务。这样,您将确保其在发生崩溃或系统重新启动时的可用性。如果出现上述任何一种情况,systemdMeilisearch 会自动重启。

    首先在/etc/systemd/system文件夹下创建一个meilisearch.service文件,把下面的代码放进去

    [Unit]
    Description=Meilisearch
    After=systemd-user-sessions.service
    
    [Service]
    Type=simple
    ExecStart=/usr/local/meilisearch --http-addr 127.0.0.1:7700 --env production --master-key Zm6J76XT6d84f3Wh
    
    [Install]
    WantedBy=default.target

    meilisearch.service中的配置参数

    1、“/usr/local/meilisearch”是meilisearch所在的地址。

    2、“–http-addr”是HTTP地址和端口,设置Meilisearch将使用的 HTTP 地址和端口

    3、“–env”是配置实例的环境。值必须是production或development。production:必须设置主密钥,搜索预览界面被禁用;
    development:设置主密钥是可选的,搜索预览已启用。

    注意:当服务器环境设置为 时development,不强制提供主密钥。这在调试和原型设计时很有用,但在其他情况下很危险,因为 API 路由不受保护。

    4、“–master-key”是设置实例的主密钥。–env设置为production时必须提供主密钥,如果没有设置主密钥,那么 Meilisearch 将抛出错误并拒绝启动。如果development环境中没有提供主密钥,则所有路由都将不受保护且可公开访问。

    使用Nginx创建反向代理

    解析域名到服务器上,在网站的nginx配置文件中监听7700端口,使用Nginx创建反向代理,Nginx 将接收外部 HTTP 请求并将其重定向到 Meilisearch。当 Meilisearch 完成其惊人的工作时,它会将其响应传达给 Nginx,然后 Nginx 会将后者传输给最初发送请求的用户。这是隔离和保护任何应用程序的常用方法

    server {
    	listen 80;
    	server_name  search.codesou.cn;
    	location / {
    			proxy_pass http://127.0.0.1:7700;
    	}
    } 

    Nginx修改配置文件后需要重启Nginx服务,反向代理在安全性、性能、可伸缩性和日志记录方面非常有用。

    # 重新加载操作系统守护进程/服务
    systemctl daemon-reload
    
    # 启用并启动Nginx服务
    systemctl enable nginx
    systemctl restart nginx

    现在你需要enable告诉操作系统我们希望它在每次启动时运行 Meilisearch。然后您可以start使该服务立即运行。通过检查服务确保一切工作顺利status

    # 设置服务meilisearch
    systemctl enable meilisearch
    
    # 启动meilisearch服务
    systemctl start meilisearch
    
    # 验证服务是否正在真实运行
    systemctl status meilisearch

    至此,Meilisearch每次服务器启动都会自动运行。它免受最终崩溃、系统重新启动以及运行时可能发现的大多数问题的影响。Meilisearch现在已经启动,部署在生产环境中,使用安全的 API 密钥,并由反向代理 Nginx 提供服务。您现在应该能够从外部向您的服务器发送请求。打开您的网络浏览器并访问:( http://search.codesou.cn),显示如下图,那表示你配置成功过了。

    想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
    本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
    如有侵权请发送邮件至1943759704@qq.com删除

    码农资源网 » MeiliSearch作为服务如何在服务器中自动运行
    • 7会员总数(位)
    • 25846资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 293稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情