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的Tornado框架实现一个Web端图书展示页面
Jul 11 Python
Python实现扩展内置类型的方法分析
Oct 16 Python
python简单图片操作:打开\显示\保存图像方法介绍
Nov 23 Python
详解Django 中是否使用时区的区别
Jun 14 Python
python解决字符串倒序输出的问题
Jun 25 Python
Python数据持久化shelve模块用法分析
Jun 29 Python
pandas 将list切分后存入DataFrame中的实例
Jul 03 Python
python 对多个csv文件分别进行处理的方法
Jan 07 Python
详解python校验SQL脚本命名规则
Mar 22 Python
浅析python 定时拆分备份 nginx 日志的方法
Apr 27 Python
基于TensorFlow的CNN实现Mnist手写数字识别
Jun 17 Python
如何通过一篇文章了解Python中的生成器
Apr 02 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
现磨咖啡骗局!现磨咖啡=新鲜咖啡?现磨咖啡背后的猫腻你不懂!
2019/03/28 冲泡冲煮
php下实现折线图效果的代码
2007/04/28 PHP
初品cakephp 入门基础
2012/02/16 PHP
windows环境下使用Composer安装ThinkPHP5
2018/05/18 PHP
thinkphp框架实现路由重定义简化url访问地址的方法分析
2020/04/04 PHP
一些常用的JS功能函数代码
2009/06/23 Javascript
js控制的遮罩层实例介绍
2013/05/29 Javascript
jquery easyui滚动条部分设置介绍
2013/09/12 Javascript
改变文件域的样式实现思路同时兼容ie、firefox
2013/10/23 Javascript
详解jquery中$.ajax方法提交表单
2014/11/03 Javascript
jQuery $命名冲突解决方案汇总
2014/11/13 Javascript
自定义Angular指令与jQuery实现的Bootstrap风格数据双向绑定的单选与多选下拉框
2015/12/12 Javascript
js倒计时显示实例
2016/12/11 Javascript
浅谈Javascript事件对象
2017/02/05 Javascript
vue.js树形组件之删除双击增加分支实例代码
2017/02/28 Javascript
angularjs实现分页和搜索功能
2018/01/03 Javascript
vue-cli中的babel配置文件.babelrc实例详解
2018/02/22 Javascript
webpack+react+antd脚手架优化的方法
2018/04/02 Javascript
js实现继承的方法及优缺点总结
2019/05/08 Javascript
JavaScript实现单英文金山打字通
2020/07/24 Javascript
vue cli4下环境变量和模式示例详解
2020/04/09 Javascript
介绍Python中的一些高级编程技巧
2015/04/02 Python
Python2.6版本中实现字典推导 PEP 274(Dict Comprehensions)
2015/04/28 Python
收藏整理的一些Python常用方法和技巧
2015/05/18 Python
基于python实现微信模板消息
2015/12/21 Python
python实现FTP服务器服务的方法
2017/04/11 Python
python实现ip地址的包含关系判断
2020/02/07 Python
动态设置django的model field的默认值操作步骤
2020/03/30 Python
django自定义非主键自增字段类型详解(auto increment field)
2020/03/30 Python
css3实现图片遮罩效果鼠标hover以后出现文字
2013/11/05 HTML / CSS
美国网上鞋子零售商:Dr. Scholl’s Shoes
2017/11/17 全球购物
Linux面试经常问的文件系统操作命令
2016/10/04 面试题
办公室文员岗位职责
2015/02/04 职场文书
终止解除劳动合同证明书
2015/06/17 职场文书
红十字会救护培训简讯
2015/07/20 职场文书
2019年新郎保证书3篇
2019/10/17 职场文书