���ѧۧݧ�ӧ�� �ާ֧ߧ֧էا֧� - ���֧էѧܧ�ڧ��ӧѧ�� - /home/rickpfrv/drive.rickard.co/systemMYs/classes/vendor/Elasticsearch/ConnectionPool/StaticConnectionPool.php
���ѧ٧ѧ�
<?php namespace Elasticsearch\ConnectionPool; use Elasticsearch\Common\Exceptions\NoNodesAvailableException; use Elasticsearch\ConnectionPool\Selectors\SelectorInterface; use Elasticsearch\Connections\Connection; use Elasticsearch\Connections\ConnectionFactoryInterface; class StaticConnectionPool extends AbstractConnectionPool implements ConnectionPoolInterface { /** * @var int */ private $pingTimeout = 60; /** * @var int */ private $maxPingTimeout = 3600; /** * {@inheritdoc} */ public function __construct($connections, SelectorInterface $selector, ConnectionFactoryInterface $factory, $connectionPoolParams) { parent::__construct($connections, $selector, $factory, $connectionPoolParams); $this->scheduleCheck(); } /** * @param bool $force * * @return Connection * @throws \Elasticsearch\Common\Exceptions\NoNodesAvailableException */ public function nextConnection($force = false) { $skipped = array(); $total = count($this->connections); while ($total--) { /** @var Connection $connection */ $connection = $this->selector->select($this->connections); if ($connection->isAlive() === true) { return $connection; } if ($this->readyToRevive($connection) === true) { if ($connection->ping() === true) { return $connection; } } else { $skipped[] = $connection; } } // All "alive" nodes failed, force pings on "dead" nodes foreach ($skipped as $connection) { if ($connection->ping() === true) { return $connection; } } throw new NoNodesAvailableException("No alive nodes found in your cluster"); } public function scheduleCheck() { foreach ($this->connections as $connection) { $connection->markDead(); } } /** * @param Connection $connection * * @return bool */ private function readyToRevive(Connection $connection) { $timeout = min( $this->pingTimeout * pow(2, $connection->getPingFailures()), $this->maxPingTimeout ); if ($connection->getLastPing() + $timeout < time()) { return true; } else { return false; } } }
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | ���֧ߧ֧�ѧ�ڧ� ����ѧߧڧ��: 0.02 |
proxy
|
phpinfo
|
���ѧ����ۧܧ�