django作为后台运维的话,有些时候可能涉及到多进程并发,这个时候django会开启多个程序和进程池子程序一致
在我的views.py某一个功能模块中增加一个函数,然后在调用如下代码
from multiprocessing import Pool
import time,datetime,os
def sayhi():
print(f'当前的操作系统ID:{os.getpid()}')
time.sleep(10)
views.py某个设计到网页的调用
pool = multiprocessing.Pool(5)
for i in range(50):
pool.apply_async(sayhi,args=())
pool.close()
pool.join()
点击我们的页面可以看到django增加5个进程
(python38) [root@centos01 django-restframework-test-master]# ps -ef|grep python|grep virtual
root 1621 1487 4 20:03 pts/0 00:00:10 /virtualenv/python38/bin/python manage.py runserver 192.168.56.150:8000
root 1786 1621 0 20:07 pts/0 00:00:00 /virtualenv/python38/bin/python manage.py runserver 192.168.56.150:8000
root 1787 1621 0 20:07 pts/0 00:00:00 /virtualenv/python38/bin/python manage.py runserver 192.168.56.150:8000
root 1788 1621 0 20:07 pts/0 00:00:00 /virtualenv/python38/bin/python manage.py runserver 192.168.56.150:8000
root 1789 1621 0 20:07 pts/0 00:00:00 /virtualenv/python38/bin/python manage.py runserver 192.168.56.150:8000
root 1790 1621 0 20:07 pts/0 00:00:00 /virtualenv/python38/bin/python manage.py runserver 192.168.56.150:8000
当前的操作系统ID:1921
当前的操作系统ID:1922
当前的操作系统ID:1923
当前的操作系统ID:1924
当前的操作系统ID:1925
当前的操作系统ID:1921
当前的操作系统ID:1925
当前的操作系统ID:1922
当前的操作系统ID:1923
当前的操作系统ID:1924
当前的操作系统ID:1922
当前的操作系统ID:1921
当前的操作系统ID:1925
当前的操作系统ID:1923
当前的操作系统ID:1924
当前的操作系统ID:1921
当前的操作系统ID:1923
当前的操作系统ID:1924
当前的操作系统ID:1922
当前的操作系统ID:1925
当前的操作系统ID:1923
当前的操作系统ID:1925
当前的操作系统ID:1922
当前的操作系统ID:1921
当前的操作系统ID:1924
当前的操作系统ID:1921
当前的操作系统ID:1924
当前的操作系统ID:1925
当前的操作系统ID:1922
当前的操作系统ID:1923
当前的操作系统ID:1924
当前的操作系统ID:1925
当前的操作系统ID:1922
当前的操作系统ID:1921
当前的操作系统ID:1923
当前的操作系统ID:1924
当前的操作系统ID:1922
当前的操作系统ID:1925
当前的操作系统ID:1921
当前的操作系统ID:1923
当前的操作系统ID:1924
当前的操作系统ID:1922
当前的操作系统ID:1921
当前的操作系统ID:1923
当前的操作系统ID:1925
当前的操作系统ID:1922
当前的操作系统ID:1925
当前的操作系统ID:1924
当前的操作系统ID:1923
当前的操作系统ID:1921
sayhi这个函数也是5个进程ID交替,验证没问题