当前位置: 首页 > news >正文

做一网站优化要多少钱新媒体营销岗位有哪些

做一网站优化要多少钱,新媒体营销岗位有哪些,广告公司用的什么软件,网站建设公司词结合Python代码示例说明multiprocessing模块的使用方法、Linux启动命令、服务部署及真实应用场景:一、multiprocessing基础用法 Python的multiprocessing模块通过创建子进程实现并行计算,核心步骤如下(引用):创建进程对…

结合Python代码示例说明multiprocessing模块的使用方法、Linux启动命令、服务部署及真实应用场景:


一、multiprocessing基础用法

Python的multiprocessing模块通过创建子进程实现并行计算,核心步骤如下(引用):

  1. 创建进程对象

    from multiprocessing import Process
    def worker(num):print(f"Worker {num} started (PID: {os.getpid()})")
    if __name__ == '__main__':p = Process(target=worker, args=(1,))  # 目标函数及参数
    
  2. 启动与等待

    p.start()  # 启动子进程 [[1,2,4]]
    p.join()   # 阻塞主进程直至子进程结束 [[4,6]]
    
  3. 关键方法

    • p.pid:获取进程ID
    • p.terminate():强制终止进程(需谨慎使用)
    • p.is_alive():检查进程是否存活

二、Linux系统中的启动命令

在Linux下运行Python多进程脚本:

python demo.py &  # 后台运行 [[11,14]]

或通过nohup持久化:

nohup python demo.py > log.txt 2>&1 &  

三、完整Demo:多进程部署FastAPI服务

以下示例同时启动FastAPI服务和计算任务:

import multiprocessing
import os
from fastapi import FastAPI
import uvicorn# FastAPI服务进程
def run_api():app = FastAPI()@app.get("/")def home():return {"message": "API running", "pid": os.getpid()}uvicorn.run(app, host="0.0.0.0", port=8000)# 计算任务进程
def heavy_task():result = sum(i*i for i in range(10**7))print(f"Task result: {result} (PID: {os.getpid()})")if __name__ == '__main__':# 创建进程api_proc = multiprocessing.Process(target=run_api)task_proc = multiprocessing.Process(target=heavy_task)# 启动进程api_proc.start()  # 启动API服务 [[3,9]]task_proc.start() # 启动计算任务 [[6,8]]# 等待结束(可选)task_proc.join()  # 主进程等待计算任务完成 print("Main process exits.")

服务部署说明

  1. 进程隔离
    • API服务(run_api)与计算任务(heavy_task)运行在独立进程,避免阻塞I/O 。
  2. 访问服务
    • 启动后通过[http://localhost:8000 ](http://localhost:8000 )访问FastAPI接口 。
  3. 进程资源
    • 每个进程有独立内存空间,需通过QueuePipe跨进程通信(未展示)。

四、真实应用场景

  1. CPU密集型任务

    • 如科学计算、图像处理,多进程利用多核CPU加速 。
      示例:并行处理大量数据:
    with multiprocessing.Pool(4) as pool:  # 创建4进程池results = pool.map(process_data, large_dataset)  # 并行映射 [[15,17]]
    
  2. 微服务架构

    • 同时运行多个服务(如API + 定时任务),避免单点故障 。
  3. 高并发处理

    • 每个请求分配独立进程,提升Web服务吞吐量(但需注意进程开销)。
  4. 爬虫系统

    • 多进程并行抓取不同网站,提高效率 。

五、注意事项

  1. 跨平台兼容性
    • multiprocessing在Linux/Windows均可用,但Linux基于fork(),Windows基于spawn
  2. 避免僵尸进程
    • 调用join()terminate()后需确保资源回收 。
  3. 进程数限制
    • 进程数不宜超过CPU核心数(multiprocessing.cpu_count())。

通过多进程部署服务,可显著提升系统性能和可靠性,尤其适合计算密集型和多服务协同场景。但需权衡进程创建开销与收益 。

http://www.dtcms.com/a/562029.html

相关文章:

  • 做网站 做好把我踢开推广哪个平台好
  • 在线字体设计网站云安区市场网络营销方法
  • 泉州网站制作运营商专业做网站策划案
  • 3.7 TCP拥塞控制
  • 网站建设代码南京市浦口区建设局网站
  • 电商开放平台API接口的日常实际应用
  • Agent上下文压缩之战!阿里AgentFold v.s.字节FoldAgent
  • DCRNN代码解析
  • 国内特效比漂亮的网站网站备案收费
  • 做爰试看的网站做网站的素材都在哪里下载
  • 英伟达开源了其 Aerial 软件,以加速 AI 原生 6G 的发展。
  • 网站后台慢厚街网站建设多少钱
  • 【Android】消息机制
  • 资料分析-平均数(和比重很像,可以对比学习)
  • 注解(内置注解、元注解、自定义注解)
  • nginx安装与升级
  • 开网站卖茶要怎么做设计很好的视觉很棒的网站
  • Day02计算机网络网络层学习总结:从协议到路由全解析
  • 网站建设公司 预算培训机构前端开发
  • 文献管理 Mendeley合并两个论文数据库
  • 泰兴网站推广东阳厂家高端网站设计
  • 如何利用 DeepSeek 提升工作效率-test
  • 青岛开发区做网站设计的wordpress猜你喜欢插件
  • Windows 10安装Linux虚拟机完整指南:三种方法详解
  • mysql数据库的sql优化以及explain周期字段详解案例【爽文】
  • wordpress 站点语言优秀网站h5案例分享
  • 建网站要多长时间功能最多的wordpress主题
  • 计算机图形学·5 OpenGL编程2 完整程序
  • 透明化战场:俄罗斯如何适应数字战争时代
  • 网站程序语言那个好网站建设合同封面