• sphinx ---rotate 运行机制


    如果sphinx在运行中,要indexer时,需要加上--rotate参数,这样索引完就直接生效了。

    原因是sphinx的searchd在启动时会创建一个 .spl 锁文件,并在关闭时会删除它。在indexer创建索引时如果发现有 .spl文件,则不会创建新索引,因为这时已经标志sphinx正在运行中,除非使用 –rotate。

    rotate运行机制

    ->indexer完成索引  
    ->发送SIGHUP 给searchd(同时在终端输出索引已经完成)
    ->searchd接到中断信号->等待所有子进程退出
    ->重命名 当前索引为旧索引为 .old
    ->重命名 .new 索引文件作为当前索引
    ->尝试加载当前索引文件->如果加载失败,searchd会把.old文件回滚为当前文件,并把刚建立的新索引重命名为 .new
    ->加载成的话:完成无缝切换

    手动重启的两种办法:

    1.

    关闭searchd :killall -9 searchd
    重启 searchd :searchd -c ../sphinx.conf

    2.

    关闭:searchd --stop
    启动:searchd
  • 相关阅读:
    CQL
    gossip协议
    Cassandra删除数据的坑
    Cassandra维护数据一致性的策略
    Cassandra查询出错
    string的 insert
    数字游戏(数学推理
    deque
    暗黑字符串(递推
    最大的奇约数和
  • 原文地址:https://www.cnblogs.com/timelesszhuang/p/4688095.html
Copyright © 2020-2023  润新知