开发者网络

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 105|回复: 0

游戏服务器开发需要学习哪些知识(Java版本)

[复制链接]

3

主题

6

帖子

15

积分

新手上路

Rank: 1

积分
15
发表于 2023-3-4 04:36:45 | 显示全部楼层 |阅读模式
为什么游戏服务器很多都用Java开发

  Java 做游戏服务器开发的优势还是很多的,《我的世界》的服务器就是Java开发的。Java技术比较成熟,大数据,云计算,网站App后台,基本都采用Java开发,同时跨平台,游戏服务器这个领域,使用Java的公司月越来越多,一是技术成熟,简单,有很多框架可以使用,二来是招人也比较方便。
对啦!这里有个游戏开发学习交流小组里面聚集了一帮热爱学习unity的零基础小白,也有一些正在从事游戏开发的技术大佬,欢迎你来交流学习。
Java游戏服务器的网络通讯技术



Java游戏服务器的数据库的技术



Java 游戏服务器的日志技术

日志对于游戏服务器开发来说是非常重要的,特别是上线的时候,日志是最重要的一个调试手段,线上版本代码出了bug,也只能通过日志来查,所以一个好的日志系统非常的重要,Java的日志系统也是非常成熟的,比如log4j等,很多日志系统可用。而且都比较成熟。
Java多线程技术, 反射, 注解



游戏开发常用的算法

游戏服务器,很多采用状态同步,其实所有的业务逻辑就是在服务端来跑, 服务端要处理游戏常用的经典问题,碰撞检测,寻路导航, 怪物AI等。所以我们需要基于Java服务器实现常用的算法和工具,比如寻路导航,行为决策树,有限状态机, 物理引擎,碰撞检测等。对于大型的MMORPG而言,还需要做好AOI的状态管理等,这些游戏中常用的核心算法我们要准备好。
Java游戏服务器组织项目工具



Java来做游戏服务器需要用到的大体的一些技术点,我们就给大家讲解到这里,下面我大家分享一下我们做商业项目的Java服务器用到的库,供大家参考。
  Netty | nio socket 框架 | [http://netty.io/](http://netty.io/)   
  jprotobuf | 通信双方消息编解码 | [https://github.com/jhunters/jprotobuf](https://github.com/jhunters/jprotobuf)  
  Guava | 玩家数据缓存系统 | [https://github.com/google/guava](https://github.com/google/guava)  
  Jedis | 跨服数据内存数据库 | [https://redis.io](https://redis.io/)  
  quartz | job调度任务 | [http://www.quartz-scheduler.org/](http://www.quartz-scheduler.org/)
  groovy | 热更新维护相关 | [http://www.groovy-lang.org/](http://www.groovy-lang.org/)    
  proxool | mysql数据链接池 | [http://proxool.sourceforge.net/](http://proxool.sourceforge.net/)   
  slf4j+log4j | 日志系统 | [https://www.slf4j.org/](https://www.slf4j.org/)  
  maven | 依赖管理及项目构建 | [http://maven.apache.org/](http://maven.apache.org/)  
发现一个好的学习游戏服务器的网站也一并推荐给大家
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|开发者网络

GMT+8, 2025-6-8 02:48 , Processed in 0.109207 second(s), 23 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表