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

做网站的论坛超市网站模版

做网站的论坛,超市网站模版,上海网站建设服务宁德,五一劳动节网页设计素材上传文件、异步、初始化脚本 面试题#xff1a; 项目中的静态文件处理#xff08;JS/CSS/image#xff09; 自己在机房内优化的方法#xff1a;1. Nginx/lighttpd(lighty-douban)#xff1a;Nginx 处理静态资源速度非常快#xff0c;并且自身还带有缓存。2. 80: Nginx - 项目中的静态文件处理JS/CSS/image 自己在机房内优化的方法1. Nginx/lighttpd(lighty-douban)Nginx 处理静态资源速度非常快并且自身还带有缓存。2. 80: Nginx - {server config} - django:8080 - Static : folders - 云存储你了解CDN吗能讲讲原理么扩展如何更换CDN上的图片改名大法1. 请求加参数1. abc.jpg2. abc.jpg?20191011111042asdflj23. abc.jpg?201910111110432. 改名1. abc_201910111042.jpg2. abc_md5.jpg 七牛云接入 注册七牛云账号创建存储空间Bucket - 有独立的域名可以访问获取相关配置 AccessKey从个人中心-密钥管理里获得SecretKey从个人中心-密钥管理里获得Bucket_name我们自己新建的存储空间的名字Bucket_URL建好的新存储空间的访问url 安装 qiniu SDKpip install qiniu根据接口文档进行接口封装按照需要将上传、下载接口封装成异步任务程序处理流程 服务端上传方式 用户图片先上传到我们的服务器上然后我们的程序再调用七牛云的api将图片上传到七牛云上传成功后拼接 avatar 的图片 url 地址 七牛云的Bucket_URL/filename将 avatar 的图片 url 存入数据库 客户端直传 客户端图片直接上传到云服务客户端将图片地址告诉服务端服务端更新数据库其实存在一个安全隐患 客户端先从服务端获取token再上传 代码示例 使用了celery #上传图片 def user_avatar(request):#1.存下来# 定义上传后保存的文件名file_name favatar-{request.user.id}.jpg# 上传后保存的路径file_path f{settings.BASE_DIR}/static/{file_name}#接收上传文件内容f request.FILES[avatar]with open(file_path,wb) as destination:for chunk in f.chunks():destination.write(chunk)print(save local ok.)user_id request.user.id#delay很重要upload_qiniu.delay(file_name, file_path, user_id)return render_json(已经放入celery-redis队列中)#这一步用异步celery celery_app.task def upload_qiniu(file_name, file_path, user_id):# 2.调用七牛云sdk上传# 需要填写你的 Access Key 和 Secret Key 需要修改 access_key KXfx2ZiBP311HkZZ8l8JHCmqlqPTJCK2sraihexxsecret_key pe5svTTUAJQoUPhppsf0Gg9wbEJiYahnRMAy1rxx# 要上传的空间bucket_name liu# 要上传的域名bucket_domain liu.s3-cn-south-1.qiniucs.com# 构建鉴权对象q Auth(access_key, secret_key, )token q.upload_token(bucket_name, file_name, 3600)ret, info put_file(token, file_name, file_path)print(info)#断言assert ret[key] file_nameassert ret[hash] etag(file_path)print(save qiniu ok.)avatar_url f{bucket_domain}/{file_name}# 3.更新用户的avataruser User.objects.get(iduser_id)# user request.user # request 无法传 所以改为user_iduser.avatar avatar_urluser.save()return True异步任务 Celery 及异步任务的处理 通用的异步框架的原理 核心队列消息队列 客户端异步端 生产者消费者 发布者订阅者 发送者接收者 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YFOxnBJs-1577967577874)(/Users/zebin/Pictures/markdown_assets/image-20200102152154116.png)] 任务模块 Task包含异步任务和定时任务. 其中, 异步任务通常在业务逻辑中被触发并发往任务队列, 而定时任务由 Celery Beat 进程周期性地将任务发往任务队列. 消息中间件 Broker代理Broker, 即为任务调度队列, 接收任务生产者发来的消息即任务更重要的智能是把海量的的消息缓冲住, 将任务存入队列。Celery 本身不提供队列服务, 官方推荐使用 RabbitMQ 和 Redis 等或者干脆用云服务的消息队列服务SQS 任务执行单元 WorkerWorker 是执行任务的处理单元, 它实时监控消息队列, 获取队列中调度的任务, 并执行它. 任务结果存储 BackendBackend 用于存储任务的执行结果, 以供查询. 同消息中间件一样, 存储也可使用 RabbitMQ, Redis 和 MongoDB 等. 消息队列 MQMessage Queue与服务器、存储、缓存、数据库同等重要是现代互联网后台架构的基础组件作用 异步把没必要同步执行的程序用消息队列暂存然后用其他程序去异步执行做到跨机器分散任务解耦有依赖关系的应用之间用消息队列解除耦合 A 和 B 两个业务有强耦合A B 削峰把互联网的高峰请求先缓冲下来然后再慢慢的逐个处理 秒杀、团购的场景用这种方式降低峰值请求 限流 1000每进来一个人 -1每离开一个人 1减到 0 就告诉后来者人满了。 常见的消息队列 Redis最简单Kafka最适合做日志处理单机几十万并发每秒钟的请求RabbitMQ符合 MQ 标准的消息队列每秒钟几万RocketMQ符合 MQ 标准的消息队列每秒钟十几万 安装 注意win10不支持celery4.3 所以需要额外安装 pip install celery[redis] 创建实例 import os from celery import Celeryfrom social import settings from worker import configos.environ.setdefault(DJANGO_SETTINGS_MODULE, social.settings)celery_app Celery(social) celery_app.config_from_object(config) celery_app.autodiscover_tasks() 常规配置 broker_url redis://127.0.0.1:6379/0 broker_pool_limit 1000 # Borker 连接池, 默认是10timezone Asia/Shanghai accept_content [pickle, json]task_serializer pickle result_expires 3600 # 任务过期时间result_backend redis://127.0.0.1:6379/1 result_serializer pickle result_cache_max 10000 # 任务结果最大缓存数量worker_redirect_stdouts_level INFO启动 Worker Linux / mac下 celery worker -A worker --loglevelinfo win celery worker -A worker --loglevelinfo -P eventlet
http://www.yutouwan.com/news/14800/

相关文章:

  • 做周边的专业网站宁国网页制作公司
  • 网站建设的难点在哪里wordpress手机自适应
  • 云南网络公司网站宝塔一键部署wordpress最新版
  • 企业建站公司报价四川网站建设的公司哪家好
  • 兰州网站建设lst0931电商分销主要做什么
  • 莆田哪里有网站开发邯郸网站设计怎么开发
  • 宜昌网站建设公司网页设计软件免费下载
  • 企业做网站域名需要自己申请吗wordpress外国模板
  • 公司网站开发费用济南兴田德润o评价商城网站建设价格费用
  • 网站网络营销推广制作wordpress白色简约
  • 网站左侧浮动代码wordpress列表显示文章
  • 北京网站设计公司哪个好科技强国形势与政策论文
  • iis 5 如何添加网站常州做网站找哪家好
  • 西部数码网站核验单下载公司做网站怎么做
  • 华龙建设部网站查不到新乡 网站开发
  • 嘉兴网站seo制作一个个人网站
  • 做网站设计的价格网站开发做表格示例
  • 有个电商网站模板做搜狗网站优化点击
  • 长沙建网站培训廊坊seo推广
  • 网站被植入了js网站布局有哪些
  • 傻瓜一键自助建站系统百度关键词排名点击
  • 郴州网站建设专业定制win7怎么做网站域名绑定
  • 滕州网站建设 助企网络阿里云搭建网站
  • 南和网站建设公司提升网站权重吗
  • 网站飘窗 两学一做商务网站建设管理思路
  • 网上做造价网站小程序模板图
  • 中建建设银行网站ip网址域名查询网
  • 网站标题有什么作用建设局平台
  • 如何建立国际网站用dw做的网页怎么连到网站上
  • 网站用的服务器是什么青岛建站方案