/** * 获取一个自动分配的序号(注册服务器用) * * @return int|false */ public static function getNewHostId($group = 'default') { if (!self::$isRegisterServer) { throw new \Exception('function Host::getNewHostId() only run by register server.'); } while (true) { # 获取一个自增ID $id = self::$groupIdTable->incr($group, 'id'); if (false === $id) { return false; } else { $id--; if (self::$table->exist("{$group}_{$id}")) { # 已经存在 continue; } else { return $id; } } } return false; }