Python高并发解决方案实现过程详解


Posted in Python onJuly 31, 2020

 一.cdn加速

简单说就是把静态资源放到别人服务器上

全称:Content Delivery Network或Content Ddistribute Network,即内容分发网络

基本思路:

尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。

目的:

解决因分布、带宽、服务器性能带来的访问延迟问题,适用于站点加速、点播、直播等场景。使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度和成功率。

控制时延无疑是现代信息科技的重要指标,CDN的意图就是尽可能的减少资源在转发、传输、链路抖动等情况下顺利保障信息的连贯性。

CDN就是扮演者护航者和加速者的角色,更快准狠的触发信息和触达每一个用户,带来更为极致的使用体验。

二.精灵图

什么是精灵图:

css精灵,是一种网页图片应用处理技术。主要是指将网页中需要的零星的小图片集成到一个大的图片中

应用的原因:

1.减少对浏览器的请求次数,避免网页的延迟

2.方便小图标的统一管理

精灵图的制作:

1.软件:ps

2.制作方法:

新建透明图层

添加参考线将画布划分,将小图标放入划分好的格子中

三.后台数据库使用mysql+Redis

mysql是持久化存储,存放在磁盘里面,检索的话,会涉及到一定的IO,为了解决这个瓶颈,于是出现了缓存,比如现在常用的 redis。首先,用户访问缓存,如果未命中,就去访问mysql,之后将mysql中的数据复制到缓存中。

redis是缓存,并且是驻留在内存中运行的,这大大提升了高数据量web访问的访问速度。redis提供了大量的数据结构,比如string、list、set、hashset、sorted set这些,之后用户的访问就能直接从Redis的内存中去取数据了,那内存的读取速度远远大于硬盘

四.数据库的优化

1.sql的优化

2.索引的优化

3.分库分表

4.读写分离

五.使用缓存

例如python-django-restframework自带的缓存

六.集群化的部署

例如:django+uwsgi+nginx

七.分布式+异步

celery:就是一个分布式异步的解决方案

八.语言层面

例如:在一些并发量更多的地方,该用golang语言编写

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python字符串详细介绍
May 09 Python
Python通过RabbitMQ服务器实现交换机功能的实例教程
Jun 29 Python
windows10系统中安装python3.x+scrapy教程
Nov 08 Python
老生常谈Python序列化和反序列化
Jun 28 Python
python实现远程通过网络邮件控制计算机重启或关机
Feb 22 Python
对python判断ip是否可达的实例详解
Jan 31 Python
用Python中的turtle模块画图两只小羊方法
Apr 09 Python
django中media媒体路径设置的步骤
Nov 15 Python
python GUI库图形界面开发之PyQt5选项卡控件QTabWidget详细使用方法与实例
Mar 01 Python
基于python生成英文版词云图代码实例
May 16 Python
python实现图片,视频人脸识别(dlib版)
Nov 18 Python
Django 实现jwt认证的示例
Apr 30 Python
Python如何执行精确的浮点数运算
Jul 31 #Python
Python使用shutil模块实现文件拷贝
Jul 31 #Python
Python基于pyjnius库实现访问java类
Jul 31 #Python
Python如何将字符串转换为日期
Jul 31 #Python
Python在字符串中处理html和xml的方法
Jul 31 #Python
python中selenium库的基本使用详解
Jul 31 #Python
Python过滤序列元素的方法
Jul 31 #Python
You might like
免费的ip数据库淘宝IP地址库简介和PHP调用实例
2014/04/08 PHP
thinkPHP中验证码的简单使用方法
2015/12/26 PHP
详解PHP的Yii框架的运行机制及其路由功能
2016/03/17 PHP
Ajax请求PHP后台接口返回信息的实例代码
2018/08/21 PHP
PHP微信支付结果通知与回调策略分析
2019/01/10 PHP
Ajax+Json 级联菜单实现代码
2009/10/27 Javascript
jQuery Flash/MP3/Video多媒体插件
2010/01/18 Javascript
jQuery ReferenceError: $ is not defined 错误的处理办法
2013/05/10 Javascript
HTML5+setCutomValidity()函数验证表单实例分享
2015/04/24 Javascript
js同源策略详解
2015/05/21 Javascript
JS+CSS实现带有碰撞缓冲效果的竖向导航条代码
2015/09/15 Javascript
基于RequireJS和JQuery的模块化编程日常问题解析
2016/04/14 Javascript
jquery 获取select数组与name数组长度的实现代码
2016/06/20 Javascript
一道优雅面试题分析js中fn()和return fn()的区别
2016/07/05 Javascript
JS基于HTML5的canvas标签实现炫目的色相球动画效果实例
2016/08/24 Javascript
微信小程序开发的四十个技术窍门总结(推荐)
2017/01/23 Javascript
微信小程序 详解页面跳转与返回并回传数据
2017/02/13 Javascript
从零开始做一个pagination分页组件
2017/03/15 Javascript
快速理解 JavaScript 中的 LHS 和 RHS 查询的用法
2017/08/24 Javascript
JavaScript变量声明var,let.const及区别浅析
2018/04/23 Javascript
jQuery序列化form表单数据为JSON对象的实现方法
2018/09/20 jQuery
Vue 进阶之路(三)
2019/04/18 Javascript
vue组件创建的三种方式小结
2020/02/03 Javascript
javascript自定义加载loading效果
2020/09/15 Javascript
Using Django with GAE Python 后台抓取多个网站的页面全文
2016/02/17 Python
python 文件操作api(文件操作函数)
2016/08/28 Python
mac系统安装Python3初体验
2018/01/02 Python
python操作链表的示例代码
2020/09/27 Python
Python3利用scapy局域网实现自动多线程arp扫描功能
2021/01/21 Python
HTML5边玩边学(3)像素和颜色
2010/09/21 HTML / CSS
某IT外企面试题-二分法求方程!看看大家的C++功底
2015/07/04 面试题
建筑结构施工求职信
2014/07/11 职场文书
机修车间主任岗位职责
2015/04/08 职场文书
2016新年感言
2015/08/03 职场文书
python opencv常用图形绘制方法(线段、矩形、圆形、椭圆、文本)
2021/04/12 Python
解决golang结构体tag编译错误的问题
2021/05/02 Golang