譬如和电商,互联网金融,等等的服务器 java 开发相比 可以相互之间跳吗?
1
sheep3 2017-03-21 09:35:14 +08:00
不清楚,猜测主要在协议这块的是主要区别
|
2
x537196 2017-03-21 10:30:52 +08:00
并没有什么区别,轮子不同而已
|
3
murmur 2017-03-21 10:32:27 +08:00
现在游戏开发不会选 java 吧 没什么太大优势
|
4
warlock 2017-03-21 10:51:06 +08:00
我是从电商跳到游戏的 然而现在已经不再用 java 写了
|
5
suliuyes 2017-03-21 11:16:34 +08:00
有区别。游戏的以协议, IO 为主。 MINA , netty 这些。后端是 java 的大多数都是页游。
|
6
weiweiwitch 2017-03-21 11:39:50 +08:00 3
@esolve 差别挺大的,各个方面的差别。之前和朋友聊,可能和做游戏最接近的也就是做 Java 中间件吧。但反过来说,如果做游戏做到一定程度,要转其他的行业,也还是能胜任的,原因后面说。
从组织上来说。做游戏大多数都是工作室的组织结构,里面分程序、美术、策划。一个工作室不大,几个人到几十个人不等,看游戏规模。这么分下来,程序其实没多少人。大多数游戏开发的程序一般都遵循少而精的原则来招人。即使游戏做大了,最多也就扩充部分人,然后再拆分出几个工作室出来。不会像互联网那样,几十个人围着一个组件做。 从业务上来说。对游戏需求的理解一般不能直接沿用到其他行业,逻辑的实现方式也因为底层结构不同,也不能直接沿用到其他行业。不过思考问题的方式整个软件行业都差不多,有能力吃下游戏逻辑,其他行业的业务代码也不会有什么问题,只是花时间理解需求和底层结构而已。 从技术上来说。这里针对涉及底层技术的后端,而不是一般的业务逻辑实现。由于游戏开发是工作室性质的,程序少而精,所以主程一般什么都要会!从长短连接的网络通讯、数据库、缓存、线程进程管理、多机集群,到运维、后台页面框架、巨量日志的生态分析,到关键游戏逻辑的各种 AI 算法、各种复杂战斗系统的实现等等,麻雀虽小,五脏俱全。 由于游戏通常情况下,比其他行业更容易引入用户,所以游戏程序面对性能挑战也会来的更早。你不可能有时间来慢慢改架构来应对流量的急剧上升,所以早期的架构制定很关键。 游戏的技术挑战大致分为关键系统实现、上线时的单机负载、游戏火了以后的集群实现上的挑战。大部分游戏基本在前两项就过不去了。由于游戏的高响应要求(比电商等的响应时间高一个数量级),单机的高承载以及逻辑和底层的强关联性,游戏逻辑状态的复杂等,再加上服务器很精贵、开发时间很紧张、人员少,所以做游戏开发很有压力! 但相对的,只要经历过项目上线,就会对技术有很大的提升,特别是那些上线过全球统一服的游戏! |
7
xiaowangge 2017-03-21 14:29:45 +08:00
一般游戏公司都有自己的引擎,或者写引擎的人。看你进公司写啥了。
游戏引擎、业务逻辑、通行证相关、统计相关、 OA 相关、客服系统 |
8
js1gsb 2017-03-21 16:24:10 +08:00
游戏服务器对并发要求,响应要求极高,非常容易遇到性能瓶颈。一般需要高定制化,削掉性能瓶颈,消耗机器所有的资源。 web 开发使用 http 协议,使用虚拟机,使用低效率脚本语言等等,减少开发管理难度而选择资源浪费。
|