〔005〕虚幻 UE5 像素流多用户部署
✨ 目录
- ▷ 为什么要部署多用户
- ▷ 开启分发服务器
- ▷ 配置启动多个信令服务器
- ▷ 配置启动客户端
- ▷ 多用户启动整体流程和预览
- ▷ 注意事项
▷ 为什么要部署多用户
- 之前的像素流部署,属于单用户,是有很大的弊端的
- 打开多个窗口访问,可以看到当一个用户操作界面的时候,另一个界面也会相应变化,这在实际项目中,多人访问同一个项目肯定是不妥的

▷ 开启分发服务器
- 由于要部署多用户,就要通过一个分发服务器去分发用户的请求
- 先打开
Matchmaker/config.json文件,讲分发的接口统一调整成为80 - 然后进入
platform_scripts/cmd/文件夹下,点击run.bat启动分发服务器
{"HttpPort": 80,"UseHTTPS": false,"MatchmakerPort": 9999,"LogToFile": true,"EnableWebserver": true
}

▷ 配置启动多个信令服务器
- 如果想多少个用户同时访问,就复制多少个信令服务器
SignallingWebServer的包 - 然后进入各自包中,打开配置文件
config.json对各个信令服务器进行配置,只需要配置以下4项即可 UseMatchmaker:是否使用分发,这里要设置为true,用于多用户访问时自动分配HttpPort:用户在浏览器通过该端口进行访问像素流StreamerPort:像素流向外流送的端口SFUPort:转发器接口,由一个服务器和多个终端组成,收到像素流后,通过该端口转发给用户客户端,所以必须唯一,理论上可以分配 65536 个端口,但是由于其他很多端口被各种特殊软件使用,实际上能配置的端口远远小于该值- 最后进入各个信令服务器文件夹的
platform_scripts/cmd下,双击run_local.bat启动即可
// 信令服务器1
{"UseFrontend": false,"UseMatchmaker": true,"UseHTTPS": false,"UseAuthentication": false,"LogToFile": true,"LogVerbose": true,"HomepageFile": "player.html","AdditionalRoutes": {},"EnableWebserver": true,"MatchmakerAddress": "","MatchmakerPort": 9999,"PublicIp": "localhost","HttpPort": 81,"HttpsPort": 443,"StreamerPort": 881,"SFUPort": 8881,"MaxPlayerCount": -1
}
// 信令服务器2
{"UseFrontend": false,"UseMatchmaker": true,"UseHTTPS": false,"UseAuthentication": false,"LogToFile": true,"LogVerbose": true,"HomepageFile": "player.html","AdditionalRoutes": {},"EnableWebserver": true,"MatchmakerAddress": "","MatchmakerPort": 9999,"PublicIp": "localhost","HttpPort": 82,"HttpsPort": 443,"StreamerPort": 882,"SFUPort": 8882,"MaxPlayerCount": -1
}

▷ 配置启动客户端
- 复制多个快捷方式,在属性中添加
-PixelStreamingIP=localhost -PixelStreamingPort=881 -log -RenderOffScreen - 修改其中的
PixelStreamingPort参数与信令服务器中对应即可 - 然后双击启动多个客户端即可

▷ 多用户启动整体流程和预览
- 第一步: 需要在
Matchmaker\platform_scripts\cmd中开启分发服务器 - 第二步: 需要开启多个信令服务器,需要在每个信令服务器的
platform_scripts\cmd下单独开启 - 第三步: 开启多个客户端
- 第四步: 直接在浏览器中输入
http://127.0.0.1/即可,由于在第一步中配置了入口都是80端口,所以访问http://127.0.0.1/后会自动帮你分配到81或82 - 效果: 可以看到操作其中一个窗口,另一个窗口并不会随之运动,并且两者的浏览器端口不一样

▷ 注意事项
- 由于部署多用户,需要开启多个信令服务器和多个其他服务,因此及耗服务器的配置,这也是为什么很多大型游戏都分区运行,其实每个区都是一个服务器甚至是一个服务器集群,但是每个区能注册的用户也是有限制的,所以才会有服务器爆满这种说法
- 如果用户超过了信令服务器的总数,用户将一直进入不了页面,直到有人下线,将该信令服务器闲置出来后才可以进入,所以需要前端做好用户的限制和提示等
- 在linux中部署的时候,只需要将在服务器上部署多个信令服务器即可,客户端是用户自己下载到本机运行的。就相当于王者荣耀,需要先下载王者荣耀客户端一样,进入游戏的服务才是服务器提供的

相关文章:
〔005〕虚幻 UE5 像素流多用户部署
✨ 目录 ▷ 为什么要部署多用户▷ 开启分发服务器▷ 配置启动多个信令服务器▷ 配置启动客户端▷ 多用户启动整体流程和预览▷ 注意事项 ▷ 为什么要部署多用户 之前的像素流部署,属于单用户,是有很大的弊端的打开多个窗口访问,可以看到当一…...
11. 哈希冲突
上一节提到,通常情况下哈希函数的输入空间远大于输出空间,因此理论上哈希冲突是不可避免的。比如,输入空间为全体整数,输出空间为数组容量大小,则必然有多个整数映射至同一桶索引。 哈希冲突会导致查询结果错误&#…...
12.04 二叉树中等题
513. 找树左下角的值 给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 示例 1: 输入: root [2,1,3] 输出: 1 思路:找到最低层中最左侧的节点值,比较适合层序遍历,返回最…...
Redis的安装
本文采用原生的方式安装Redis,Redis的版本为5.0.5 安装 下载 下载网站:https://download.redis.io/releases/ wget http://download.redis.io/releases/redis-5.0.5.tar.gz解压 tar -zxvf redis-5.0.5.tar.gz进入redis目录 cd redis-5.0.5执行编译…...
JDK安装太麻烦?一篇文章搞定
JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVMJava系统类库)和JAVA工具。 JDK包含的基本组件包括: javac – 编译器…...
漫谈HBuilderX App-Jenkins热更新构建
漫谈Uniapp App热更新包-Jenkins CI/CD打包工具链的搭建 零、写在前面 HBuilderX是DCloud旗下的IDE产品,目前只提供了Windows和Mac版本使用。本项目组在开发阶段经常需要向测试环境提交热更新包,使用Jenkins进行CD是非常有必要的一步。尽管HBuilderX提…...
技术前沿丨Teranode如何实现无限扩容
发表时间:2023年9月15日 BSV区块链协会的技术团队目前正在努力开发Teranode,这是一款比特币节点软件,其最终目标是实现比特币的无限扩容。然而,正如BSV区块链协会网络基础设施负责人Jake Jones在2023年6月举行的伦敦区块链大会…...
世岩清上:如何制作年终工作汇报宣传片
年终工作汇报宣传片是一种以视觉和口头语言为主要表现形式的宣传手段,旨在向领导、同事、客户等展示一年来的工作成果和亮点。以下是制作年终工作汇报宣传片的几个关键步骤: 明确目的和受众:在制作宣传片前,要明确宣传片的目的和受…...
练习十一:简单卷积器的设计
简单卷积器的设计 1,任务目的:2,明确设计任务2.1,目前这部分代码两个文件没找到,见第5、6节,待解决中。 ,卷积器的设计,RTL:con1.v4,前仿真和后仿真,测试信号…...
外包干了4年,技术退步太明显了。。。。。
先说一下自己的情况,本科生生,18年通过校招进入武汉某软件公司,干了接近4年的功能测试,今年国庆,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测…...
微服务实战系列之EhCache
前言 书接前文,继续深耕。上一篇博主对Redis进行了入门级介绍,大体知道了Redis可以干什么以及怎么使用它。 今日博主继续带着大家学习如何使用EhCache,这是一款基于Java的缓存框架。 微服务实战系列之Redis微服务实战系列之Cache微服务实战…...
SpringBoot:SpringMVC(上)
文章目录 前言一、SpringMVC是什么?1.1 MVC的定义:1.2 MVC 和 Spring MVC 的关系 二、Spring MVC 创建和连接2.1创建springmvc2.2接下来,创建⼀个 UserController 类,实现⽤户到 Spring 程序的互联互通,具体实现代码如…...
一文搞懂Go语言中包导入
一文搞懂Go语言中包导入 定义包 在go语言中,定义包的关键字为package,如package main等,在go语言中有一个约定俗成的标准,那就是包名与目录名把持一致。 //service目录下 package servicepackage utils 可以看到,我…...
Vue2学习笔记(事件处理)
一、基本使用 1.使用v-on:xxx 或 xxx 绑定事件,其中xxx是事件名;2.事件的回调需要配置在methods对象中,最终会在vm上;3.methods中配置的函数,不要用箭头函数!否则this就不是vm了;4.methods中配…...
【2023第十二届“认证杯”数学中国数学建模国际赛】A题 太阳黑子预报完整解题思路
A题 太阳黑子预报 题目任务思路分析第一问第二问第三问 题目 太阳黑子是太阳光球上的一种现象,表现为比周围区域更暗的临时斑点。它们是由于磁通量集中而导致表面温度降低的区域,磁通量的集中抑制了对流。太阳黑子出现在活跃区域内,通常成对…...
Huawei FusionSphere FusionCompte FusionManager
什么是FusionSphere FusionSphere 解决方案不独立发布软件,由各配套部件发布,请参 《FusionSphere_V100R005C10U1_版本配套表_01》。 目前我们主要讨论FusionManager和FusionCompute两个组件。 什么是FusionCompte FusionCompute是华为提供的虚拟化软…...
GSLB是什么?谈谈对该技术的一点理解
GSLB是什么?它又称为全局负载均衡,是主流的负载均衡类型之一。众所周知,负载均衡位于服务器的前面,负责将客户端请求路由到所有能够满足这些请求的服务器,同时最大限度地提高速度和资源利用率,并确保无任何…...
【接口测试】POST请求提交数据的三种方式及Postman实现
1. 什么是POST请求? POST请求是HTPP协议中一种常用的请求方法,它的使用场景是向客户端向服务器提交数据,比如登录、注册、添加等场景。另一种常用的请求方法是GET,它的使用场景是向服务器获取数据。 2. POST请求提交数据的常见编…...
SpringBoot系列之集成Jedis教程
SpringBoot系列之集成Jedis教程,Jedis是老牌的redis客户端框架,提供了比较齐全的redis使用命令,是一款开源的Java 客户端框架,本文使用Jedis3.1.0加上Springboot2.0,配合spring-boot-starter-data-redis使用࿰…...
centos用什么命令可查看版本号
概述 查版本号的命令:1、“cat /etc/redhat-release”,可输出centos版本号;2、“cat /proc/version”、“uname -a”或“uname -r”,可输出内核版本号。 本教程操作环境:centos7.9.2009系统。 查看centos版本 [roo…...
超短脉冲激光自聚焦效应
前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应,这是一种非线性光学现象,主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场,对材料产生非线性响应,可能…...
8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...
ip子接口配置及删除
配置永久生效的子接口,2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?
uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件,用于在原生应用中加载 HTML 页面: 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...
