如何使用gevent创建类似“Omegle”的随机聊天?
我查找了很多关于gevent的教程和文档,但似乎并没有很多相关资料。
我已经编写Python代码好几年了,也会写PHP、JavaScript和jQuery。
那么,我该如何创建一个Omeglish聊天呢?这个聊天的功能是一个随机的人连接上来,然后等待另一个人也连接上来。我了解到Omegle使用了gevent,但我的网站需要同时支持200到1000个人。
除了服务器端,客户端也需要完全功能齐全,我觉得应该用jQuery或JavaScript来实现。
在编码方面我需要一点帮助。我能很好地写Python,但我不知道该如何制作这样的聊天系统,也不清楚哪个Python库最合适。
这个库不一定非得是gevent,但我听说它在这类应用中非常不错。谢谢。
1 个回答
1
如果我理解得没错,你只需要把第二个人和之前已经连接过的人联系起来。这个过程应该很简单。
第一个处理人的绿色线程(我们叫它“第一个绿色线程”)会在某个地方登记它的输入和输出队列。然后,处理第二个人的绿色线程会获取这些队列,取消注册它们,并用来交换聊天信息。
接下来,第三个人的绿色线程发现没有登记的输入输出队列,于是它注册自己的队列,并等待第四个人。以此类推。
这就是你需要的内容吗?