fastapi 能做网页棋牌类游戏吗? 如象棋,五子棋,掼蛋等类型的后端。 几百人在线。 与django相比优势如何?
如果不合适。做这类网页游戏用什么语言好? go node.js ?谢谢
FastAPI 能做网页棋牌类游戏的后端,例如象棋、五子棋、掼蛋等。FastAPI 是一个高性能的框架,它基于异步请求处理和类型注解,使用 Python 的 asyncio
库来实现高效的并发请求处理,因此适合处理几百人在线的网页游戏。
与 Django 相比,FastAPI 的优势主要体现在性能方面。Django 是一个全功能的框架,提供了许多内置的功能和扩展,但可能会在处理高并发的情况下面临性能问题。而 FastAPI 则更加注重性能和灵活性,适合构建需要处理大量并发请求的场景。
对于做这类网页游戏的后端,除了 FastAPI,其他语言如 Go 和 Node.js 也是不错的选择。Go 语言具有出色的并发性能,适合处理高并发的游戏场景;而 Node.js 则具有异步 I/O 和事件驱动的特性,也适合构建实时的网页游戏后端。具体选择哪种语言和技术栈,还需要根据项目的需求和团队的技术储备来决定。
fastapi可以的啊,与django相比最大的优势就是对异步的支持更加方便和友好,吞吐量和django相比也高很多。在异步的加持下,几百并发量没得问题。而且它也支持websocket,只需要安装一下即可,可以看官网描述: fastapi-websockets
至于你列举的go和nodejs。go天生支持协程goroutine,加上go天然强劲得性能,你如果会这门语言,自然更好。nodejs虽然是单线程,但是它的协程是基于事件循环的,而且在浏览器V8引擎得加持下,异步得性能可能比python得还要好一些。
总之就是,你的那个需求,python也能达到,而且就是fastapi就可以,用起来也简单。如果和go、nodejs放一起选择的话,看你的技术倾向和熟练程度了,若对后者更熟悉,你选后者;若对前者还好,就python了。
3 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
2 回答1.9k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
1 回答2.4k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
游戏类型应该用 websocket 吧,传统的基于 http 请求的库应该都不行。
我会选择 node.js + socket.io 作为验证阶段的选型。各种云厂商也有提供消息队列服务,正式产品应该还是要选择这些服务才行。