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中用Descriptor实现类级属性(Property)详解
Sep 18 Python
python获取文件版本信息、公司名和产品名的方法
Oct 05 Python
在Python的Flask框架中构建Web表单的教程
Jun 04 Python
微信跳一跳python代码实现
Jan 05 Python
python3模块smtplib实现发送邮件功能
May 22 Python
Python3随机漫步生成数据并绘制
Aug 27 Python
Pandas Shift函数的基础入门学习笔记
Nov 16 Python
python ---lambda匿名函数介绍
Mar 13 Python
Python导入数值型Excel数据并生成矩阵操作
Jun 09 Python
python和node.js生成当前时间戳的示例
Sep 29 Python
Python爬虫Scrapy框架CrawlSpider原理及使用案例
Nov 20 Python
详解Python描述符的工作原理
Jun 11 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
服务器端解压缩zip的脚本
2006/12/22 PHP
浅析PHP 按位与或 (^ 、&)
2013/06/21 PHP
php使用Jpgraph绘制简单X-Y坐标图的方法
2015/06/10 PHP
yii2 modal弹窗之ActiveForm ajax表单异步验证
2016/06/13 PHP
详解PHP中websocket的使用方法
2016/09/15 PHP
php实现购物车功能(以大苹果购物网为例)
2017/03/09 PHP
如何在Laravel之外使用illuminate组件详解
2020/09/20 PHP
jquery tools之tabs 选项卡/页签
2009/07/25 Javascript
jQuery学习笔记(4)--Jquery中获取table中某列值的具体思路
2013/04/10 Javascript
深入理解JavaScript中的传值与传引用
2013/12/09 Javascript
JavaScript中的document.referrer在各种浏览器测试结果
2014/07/18 Javascript
原生javascript实现Tab选项卡切换功能
2015/01/12 Javascript
详解页面滚动值scrollTop在FireFox与Chrome浏览器间的兼容问题
2015/12/03 Javascript
Node.js静态文件服务器改进版
2016/01/10 Javascript
20分钟轻松创建自己的Bootstrap站点
2016/05/12 Javascript
AngularJS实现DOM元素的显示与隐藏功能
2016/11/22 Javascript
jQuery内存泄露解决办法
2016/12/13 Javascript
JS随机排序数组实现方法分析
2017/10/11 Javascript
JavaScript实现三级级联特效
2017/11/05 Javascript
JS插件clipboard.js实现一键复制粘贴功能
2020/12/04 Javascript
vue滚动固定顶部及修改样式的实例代码
2019/05/30 Javascript
详解Vue-cli3.X使用px2rem遇到的问题
2019/08/09 Javascript
Jquery 动态添加元素并添加点击事件实现过程解析
2019/10/12 jQuery
使用Vue调取接口,并渲染数据的示例代码
2019/10/28 Javascript
Vue实现push数组并删除的例子
2019/11/01 Javascript
vue实现div单选多选功能
2020/07/16 Javascript
详解JavaScript中的this指向问题
2021/02/05 Javascript
python 读写文件,按行修改文件的方法
2018/07/12 Python
Python3中urlencode和urldecode的用法详解
2019/07/23 Python
Pytorch使用PIL和Numpy将单张图片转为Pytorch张量方式
2020/05/25 Python
Numpy ndarray 多维数组对象的使用
2021/02/10 Python
CSS3下的渐变文字效果实现示例
2018/03/02 HTML / CSS
《这儿真好》教学反思
2014/02/22 职场文书
二年级学生评语大全
2014/04/23 职场文书
纪检干部学习心得体会
2016/01/23 职场文书
python如何获取网络数据
2021/04/11 Python