从事游戏服务端开发(Java),需要具备哪些技术
1、精通C++、STL及各种设计模式,熟悉各种数据结构和算法;
2、熟悉3D图形学原理,3D图形的常用技术,有较强的数学功底,有Shader编写经验;
3、有UE3、Gamebryo、Unity3D等一些游戏引擎使用经验。
游戏客户端,游戏库客户使用端,相对于游戏服务端的另一端,服务端是为游戏数据库服务的,而客户端就是游戏数据使用端。几乎现在任何游戏都有其客户端,用来连接服务端而为玩家服务。
服务端是为客户端服务的,服务的内容诸如向客户端提供资源,保存客户端数据。是实现游戏特色化的重要途径,也是最直接可以通过游戏表现出来的技术,比如要修改某个NPC的参数,重加载后,在游戏内立刻体现出来。
在Java中,要实现热部署,首先,你得明白,Java中类的加载方式。每一个应用程序的类都会被ClassLoader加载,所以,要实现一个支持热部署的应用,我们可以对每一个用户自定义的应用程序使用一个单独的ClassLoader进行加载。然后,当某个用户自定义的应用程序发生变化的时候,我们首先销毁原来的应用,然后使用一个新的ClassLoader来加载改变之后的应用。而所有其他的应用程序不会受到一点干扰。
热更新的思路:
定义一个用户自定义应用程序的接口,这是因为,我们需要在容器应用中去加载用户自定义的应用程序。
我们还需要一个配置文件,让用户去配置他们的应用程序。
应用启动的时候,加载所有已有的用户自定义应用程序。
为了支持热部署,我们需要一个监听器,来监听应用发布目录中每个文件的变动。这样,当某个应用重新部署之后,我们就可以得到通知,进而进行热部署处理。
景安河南最大的多线服务器托管商,提供专业的双机热备、负载均衡等高可用/高并发服务!
0条评论