
首先要有一个永不言弃的心,做视频网站各方面要求挺高的,首先开发网站的相关代码,框架,控件,数据库等是基础,其次网络安全也要有所涉猎,然后服务器的知识也是不可缺少的,发布网站、视频流服务的发布,负载均衡的配置都要会,还有不可忽略的一点就是你要有足够的经济能力,毕竟是要做视频网站,租用服务器、购买域名、云数据库,视频存放的空间这都是钱砸出来的,最后祝你好运
你好,很高兴回答你的问题:短视频平台框架开发有很多方式,功能也要看运营团队的需要,在这里推荐一套开发框架给您,仅供参考:
1、 直播系统前端APP是分成安卓端和苹果端,后端是PC端,开发语言:后台PHP语言 ,Android是Java语言, IOS是 objective-c,
APP原生开发, PHP 视频互动系统由 WEB 系统、REDIS 服务、MYSQL 服务、视频服务、聊天服务、后台管理系统和定时监控组成,手机安卓端开发语言采用:java、 IOS 苹果采用:object c 原生开发,后台管理采用PHP 语言开发,所有服务提供横向扩展。
二、功能细节:
1、推荐:通过后台推荐+视频权重的方式为用户推荐相关视频,并在首页直接观看,同事直接进行关注坐着、评论、点赞以及分享;
2、搜索:
1)根据用户:可输入用户昵称来搜索用户,支持模糊查询,对搜索出的用户可进行关注;
2)分类:对应相应的不同分类
3)视频:可输入视频名称来进行搜索;
3、视频观看
1)分享:可分享到微信、朋友圈等社交平台;
2)点赞:对喜欢的视频进行点赞,表示喜欢和认可;
3)评论:可对短视频进行评论,对于评论可再次回复;
4、关注
展示当前用户关注的人发的短视频列表
5、消息
1)我发表的评论以及发表的评论回复的
2)我收到的评论,后期对我发布短视频的评论,可以添加用户发布短视频的时候添加
2、系统消息:平台可以发布平台公告
6、个人中心
1)用户资料:展示自己的头像昵称等,并可对资料进行修改
2)关注:关注的数量显示,点击关注跳转到关注列表页面,并可对自己的关注的人取消关注
3、点赞列表:查看自己点赞过的视频
基于这样一个假设,那就是客户端已经知道了服务端的地址,这部分会由后续的服务发现机制完善。通用接口
hello方法需要传递一个对象,HelloObject对象,定义如下:
注意这个对象需要实现 Serializable 接口,因为它需要在调用过程中从客户端传递给服务端。
接着我们在服务端对这个接口进行实现,实现的方式也很简单,返回一个字符串就行:
服务端需要哪些信息,才能唯一确定服务端需要调用的接口的方法呢?
那么服务端知道以上四个条件,就可以找到这个方法并且调用了。我们把这四个条件写到一个对象里,到时候传输时传输这个对象就行了。即 RpcRequest 对象:
那么服务器调用完这个方法后,需要给客户端返回哪些信息呢?
如果调用成功的话,显然需要返回值,如果调用失败了,就需要失败的信息,这里封装成一个 RpcResponse 对象:
这里还多写了两个静态方法,用于快速生成成功与失败的响应对象。其中,statusCode属性可以自行定义,客户端服务端一致即可。
客户端方面,由于在 客户端这一侧我们并没有接口的具体实现类,就没有办法直接生成实例对象 。这时,我们可以 通过动态代理的方式生成实例,并且调用方法时生成需要的RpcRequest对象并且发送给服务端 。
这里我们采用JDK动态代理,代理类是需要实现 InvocationHandler 接口的。
我们需要传递host和port来指明服务端的位置。并且使用getProxy()方法来生成代理对象。
InvocationHandler 接口需要实现invoke()方法,来指明代理对象的方法被调用时的动作。 在这里,我们显然就需要生成一个RpcRequest对象,发送出去,然后返回从服务端接收到的结果即可:
生成RpcRequest很简单,我 使用Builder模式来生成这个对象 。发送的逻辑我使用了一个RpcClient对象来实现,这个对象的作用, 就是将一个对象发过去,并且接收返回的对象。
我的实现很简单,直接使用Java的序列化方式,通过Socket传输。 创建一个Socket,获取ObjectOutputStream对象,然后把需要发送的对象传进去即可,接收时获取ObjectInputStream对象,readObject()方法就可以获得一个返回的对象。
服务端的实现就简单多了, 使用一个ServerSocket监听某个端口,循环接收连接请求,如果发来了请求就创建一个线程,在新线程中处理调用。 这里创建线程采用线程池:
这里简化了一下, RpcServer暂时只能注册一个接口,即对外提供一个接口的调用服务,添加register方法,在注册完一个服务后立刻开始监听:
这里向工作线程WorkerThread传入了socket和用于服务端实例service。
WorkerThread实现了Runnable接口,用于接收RpcRequest对象,解析并且调用,生成RpcResponse对象并传输回去。 run方法如下:
其中,通过classgetMethod方法,传入方法名和方法参数类型即可获得Method对象。如果你上面RpcRequest中使用String数组来存储方法参数类型的话,这里你就需要通过反射生成对应的Class数组了。通过methodinvoke方法,传入对象实例和参数,即可调用并且获得返回值。
服务端侧,我们已经在上面实现了一个HelloService的实现类HelloServiceImpl,我们只需要创建一个RpcServer并且把这个实现类注册进去就行了:
服务端开放在9000端口。
客户端方面,我们需要通过动态代理,生成代理对象,并且调用,动态代理会自动帮我们向服务端发送请求的:
我们这里生成了一个HelloObject对象作为方法的参数。
首先启动服务端,再启动客户端,测试结果:
搭建服务器我们总的来说需要做以下两个步骤:
①:下载饥荒联机版专用服务器。
②:配置游戏文件。
一、如何下载饥荒联机版专用服务器
饥荒:联机版中依次点击饥荒联机大厅→我的服务器→手动搭建服务器即可进入专用服务器下载界面。
二、如何配置游戏文件
首先启动游戏饥荒:联机版,创建一个游戏存档(设置好房间名,密码,需要开启的MOD)如果之前有创建过游戏存档,也可以拿之前的存档来搭建服务器。创建好游戏存档后点击游戏主依次点击页面中的账号→游戏→Don'tStarveTogetherServers→添加新服务器获取访问令牌,并将访问令牌Ctrl+C键复制到桌面新创建文本文档中备用。
做好以上几个步骤可以暂时退出游戏。之后依次打开我的电脑→文档→Klei→DoNotStarveTogetherRail→“一串数字的文件夹”。在里面可以看到我们创建好的游戏存档(一号档位即为Cluster_1),将需要搭建服务器的游戏存档的文件夹复制到DoNotStarveTogetherRail文件夹中并进入到复制好的游戏档位的文件夹中,在该文件中新建一个文本文档,并将该文档命名为:cluster_token。之后将其电脑上复制好备用的访问令牌复制粘贴至该文档中保存。
做好以上几个步骤还需要配置MOD。在WeGame中右键饥荒:饥荒联机版依次点击目录→打开mods文件夹,复制里面的所有文件夹(即你创客空间订阅过的mod)。之后在右键饥荒联机搭建专用服务器点击目录,将所有刚刚复制好的文件夹(mod)粘贴至mods文件夹中,这样就配置好服务器的mod啦。
做好以上所有步骤就可以开始搭建服务器啦。进入饥荒联机版搭建专用服务器主界面,点击注册许可证书,设置好证书有效期(长时间玩饥荒的话有效期设置长一点)和密码。注册好后点击启动,在服务器配置列表中选择自己已经配置好的游戏存档,在输入证书密码点击启动。跳出一个黑框,大约等个1分半就可以在饥荒:联机版中的联机大厅的玩家列表中搜寻自己的房间游戏名看到自己搭建好的服务器房间了。
以上做好后就搭建好了自己的专用服务器了。
在说两条要注意的:①:进入饥荒:联机版开始游戏不要点击离线游戏,而要等待上几秒登录游戏,不然就相当于玩单机游戏了。
②:电脑配置差不建议开过多mod(增加了游戏崩溃的概率)和开洞穴,如果电脑配置真的非常差不建议搭建服务器(没必要),正常开房间玩就很好了。
在最后教大家如何在搭建好服务器之后添加新的MOD。第一步:进入游戏:饥荒联机版创建游戏中将需要搭建的服务器游戏的戏存档中添加需要添加的mod(或取消不需要的),并点击右下角回到世界。第二步:依次点击我的电脑→文档→Klei→Don'tStarveTogetherServers→“一串数字的文件夹”→需要搭建服务器的游戏存档文件夹→Master复制其中的modoverrideslua命名文件并将其复制粘贴至Don'tStarveTogetherServers文件夹中游戏存档中的Master文件夹中,替换原来的文件完成。做好以上几个步骤即配置好新的游戏mod了,此后启动饥荒联机版搭建专用服务器即可。
如果大家觉得图文教程看的复杂的话,欢迎在西瓜视频中看我上传的WeGame饥荒联机版搭建服务器视频教程。
上传完,压缩看不太清!如果大家还有什么疑惑的地方,或者搭建服务器不成功的话欢迎在线咨询。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)