简而言之,我正在创建一个基于Flash的多人游戏,现在我开始研究服务器端代码了。嗯,我是该项目的唯一开发人员,所以我正在寻找一个适合游戏的高级套接字库,以加快我的开发时间。
我试图使用Twisted Framework(对于Python),但我遇到了一些个人问题,所以我正在寻找另一种解决方案。
我对Java或基于Python的库开放。最重要的是,该库对于多人游戏来说足够稳定,并且库需要“高级”(抽象),因为我不熟悉游戏的套接字编程。
我还要注意,我将在Flash游戏(Actionscript 3.0)中使用原始二进制套接字,因为我认为它将比传统的Flash XML套接字更快。
答案 0 :(得分:7)
Python的一个选项是Concurrence框架。我最近与Stackless Python一起使用它来模拟每秒可能有数千个请求的环境,每个请求必须在不到2秒的时间内处理。 API非常简单,并且有很好的文档记录。
我非常接近使用Netty在Java中实现,这是一个JBoss项目。
答案 1 :(得分:0)
一方是高级别,另一方是原始二进制套接字不起作用。对不起,你也需要在服务器端进行低级别的操作。
编辑:回应OP的评论。我不知道你正在谈论Java的任何“高级”接口。坦率地说,我认为它没有多大意义。如果你要在Socket流上谈论字节,你真的需要理解标准的JDK Socket / ServerSocket API;例如超时,保持活力等等。
答案 2 :(得分:0)
见"A Quick Guide to ActionScript 3 and Flash Programming"。它有一个ActionScript客户端代码的详细示例,该代码使用套接字与Python服务器通信(包含代码)。不是任何人都会称之为高级,它利用基本的Python套接字模块进行通信。
(注意:Python服务器示例是而不是pythonic 。在获得在Python中使用套接字的一般概念之后,写一些更简单且无from socket import *
)
答案 3 :(得分:0)
对于java,有Apache mina和Grizzly框架,这两个框架都真正简化了套接字的工作