在Django中使用Twisted

5 投票
3 回答
16285 浏览
提问于 2025-04-15 18:14

1) 我想开发一个网站,这个网站有论坛和聊天功能。聊天和论坛是有联系的。也就是说,对于每个讨论主题,用户可以在该主题的聊天室里聊天,或者可以在论坛上回复。 我在考虑用django来做论坛,用twisted来做聊天功能。请问我可以把这两个结合起来吗?用twisted开发的聊天应用是和论坛相连的。

2) 如果我同时使用twisted和django,那我在把网站放到网上的时候,应该选择什么样的网络主机呢?我应该使用VPS吗?还是可以找到支持这两者的主机?

3 个回答

1

如果论坛应用需要从聊天应用获取一些信息,最简单的方法就是让论坛应用通过普通的HTTP请求与聊天应用进行沟通,并且让它们各自独立运行。

10

我有一个项目,可能正是你想要的(至少可以作为一个起点)。这个项目叫做Hotdot:http://github.com/clemesha/hotdot

另外,我在这里写了更多关于这个主题的细节:http://clemesha.org/blog/2009/dec/17/realtime-web-apps-python-django-orbited-twisted/

14

我不建议把这两者结合在一起,因为调用Django的过程是同步的,这样会导致Twisted的事件循环被阻塞。更好的做法是把Twisted当作一个独立的Django应用来使用,让一个传统的网络服务器来处理Django应用。

你可能找不到一个共享主机来运行Twisted应用,所以我建议你选择虚拟私人服务器(VPS)。

撰写回答