在django中运行socket server

来源:9-1 drf的api文档自动生成和功能详解

慕运维4479473

2018-10-28

老师,还有另外一个问题。
如果我想在django中运行TCP Server,该服务用来接收客户端相关信息,然后通过web http的轮询来返回给前端。那么,在哪里启动该服务比较好呢,是在manage.py中启动新进程来执行嘛?类似于下面这种:

if __name__ == '__main__':
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mat_server.settings')
    try:
        from django.core.management import execute_from_command_line
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    # 启动TCP Server
    start_tcp_server()
    execute_from_command_line(sys.argv)
写回答

1回答

bobby

2018-10-29

直接在这里启动也行, 我个人更建议你做成一个单独的服务,为什么一定要和django项目放到一起运行的,做成一个单独的服务单独运行不是更好么

0
2
bobby
回复
慕运维4479473
数据通信用redis,你这个属于进程间通信,进程间通信用redis非常常见,你也需要学会解决进程间通信的问题,也可以用celery,服务分离是很常用的解决方案,不要因为会引入新的知识点就不用,这样也能增加你的眼界
2018-11-05
共2条回复

Python前后端分离开发Vue+Django REST framework实战

Django REST framework课程视频,RESTFul API前后端分离开发

2873 学习 · 2457 问题

查看课程