pushiqiang的博客

python技术爱好者,python开发工程师,Patrick

高并发的核心技术-幂等的实现方案

高并发的核心技术-幂等的实现方案 一、背景 我们实际系统中有很多操作,是不管做多少次,都应该产生一样的效果或返回一样的结果。 例如: 1. 前端重复提交选中的数据,应该后台只产生对应这个数据的一个反应结果。 2. 我们发起一笔付款请求,应该只扣用户账户一次钱,当遇到网络重发或系统bug重发,也应该...

2018-06-25 09:44:36

阅读数:241

评论数:0

使用Nginx代理s3,动态生成缩略图并缓存

使用Nginx代理s3,动态生成缩略图并缓存 通过 {domain}/{uri}?s={size}实现获取指定大小缩略图 原图:localhost/u/1523562/avatar 缩略图:localhost/u/1523562/avatar?s=200 缩略图:localhost/u/1...

2018-05-15 12:22:08

阅读数:420

评论数:0

探讨select in 在postgresql的效率问题

这篇文章主要介绍了探讨select in 在postgresql的效率问题 的相关资料,需要的朋友可以参考下在知乎上看到这样一个问题:MySQL 查询 select * from table where id in (几百或几千个 id) 如何提高效率?修改电商网站,一个商品属性表,几十万条记录,...

2018-04-27 21:14:14

阅读数:584

评论数:0

Django shell调试models输出的SQL语句

在settings.py里,配置如下logging:LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'handlers': { 'console':{ 'lev...

2018-04-10 22:14:28

阅读数:587

评论数:0

如何优化 Django REST Framework 的性能?(DRF Developer必看)

现在,Django REST Framework 帮助 Django 开发者给自己的应用开发出简单而强大的标准 REST APIs,而且现在我们已经成功的应用在了一些 Django Web 项目上。然而,看似简单直观的 Django REST Framework 及其嵌套序列化可能会大大降低你的 ...

2018-03-14 21:20:35

阅读数:785

评论数:0

Dockerfile教程

ref: https://docs.docker.com/engine/reference/builder/#usage Dockerfile Docker可以通过读取Dockerfile指令自动生成镜像 。Dockerfile文件是一个文本文档,其中包含用户可以在命令行上调用以构建镜像的...

2018-02-27 21:39:39

阅读数:741

评论数:0

Centrifugo(实时消息服务器)介绍+demo

Centrifugo是一个。它与语言无关,可以与任何语言编写的应用程序后端(Python,Ruby,Perl,PHP,Javascript,Java,Objective-C等)结合使用。Centrifugo作为单独的服务运行,并保持从应用程序客户端(从Web浏览器或其他环境,如iOS或Androi...

2017-12-09 21:38:58

阅读数:1589

评论数:0

docker-compose教程(安装,使用, 快速入门)

教程基于ubuntu下最新的compose版本3 参考: https://docs.docker.com/compose/overview/1.Compose介绍Docker Compose是一个用来定义和运行复杂应用的Docker工具。一个使用Docker容器的应用,通常由多个容器组成。使用Do...

2017-12-03 22:31:45

阅读数:79197

评论数:3

Ansible常用模块介绍

ansible 默认提供了很多模块来供我们使用。在 Linux 中,我们可以通过 ansible-doc -l 命令查看到当前 ansible 都支持哪些模块,通过 ansible-doc -s 模块名 又可以查看该模块有哪些参数可以使用。 官网文档:http://docs.ansible...

2017-10-16 14:48:15

阅读数:12156

评论数:6

非常好的Ansible入门教程(超简单)

Ansible是一个配置管理和配置工具,类似于Chef,Puppet或Salt。这是一款很简单也很容易入门的部署工具,它使用SSH连接到服务器并运行配置的任务,服务器上不用安装任何多余的软件,只需要开启ssh,所有工作都交给client端的ansible负责。 关于Ansible的一个好处是,将...

2017-09-28 17:19:31

阅读数:17724

评论数:1

关于django-channels的token认证实现

django-channels只支持基于session的认证,在实际使用中可能需要基于token或者jwt的认证。 参照 https://www.machinalis.com/blog/jwt-django-channels/ 实现基于django token认证。

2017-01-21 22:29:35

阅读数:2161

评论数:0

django rest framework图片上传测试,以及drf测试所踩的一些坑

django rest framework图片上传测试models.pyclass Dish(models.Model): name = models.CharField(_(u'name'), max_length=100) photo = ThumbnailerImageFie...

2016-09-30 13:13:39

阅读数:4106

评论数:0

(python解析js)selenium结合phantomjs抓取js生成的页面

有些网页是在加载时动态创建HTML内容,只要在js代码完全执行完后才会显示最终结果。如果用传统的方法抓取页面,就只能获得js代码执行之前页面上的内容。要解决这个问题有两种方法: 1.直接从js代码中抓取数据(执行js代码,解析js变量)。 2.用第三方库运行js,抓取运行后的最终html页...

2016-05-01 15:06:50

阅读数:20638

评论数:7

用sqlalchemy构建Django连接池

都知道django每次请求都会连接数据库和释放数据库连接。Django为每个请求使用新的数据库连接。一开始这个方法行得通。然而随着服务器上的负载的增加,创建/销毁连接数据库开始花大量的时间。要避免这个,你可以使用数据库连接池,这里使用SQLAlchemy的连接池。使Django持久化数据库连接。但...

2016-04-14 16:40:08

阅读数:4409

评论数:0

(python解析js)scrapy结合ghost抓取js生成的页面,以及js变量的解析

现在页面用ajax的越来越多, 好多代码是通过js执行结果显示在页面的(比如:http://news.sohu.com/scroll/,搜狐滚动新闻的列表是在页面请求时由后台一次性将数据渲染到前台js变量newsJason和arrNews里面的,然后再由js生成div和li,故要想或得结果必须要解...

2016-04-10 16:26:52

阅读数:7174

评论数:1

Git push与pull的默认行为

一直以来对git push与git pull命令的默认行为感觉混乱,今天抽空总结下。 git push 通常对于一个本地的新建分支,例如git checkout -b develop, 在develop分支commit了代码之后,如果直接执行git push命令,develop分支将不会被pu...

2018-08-10 10:05:04

阅读数:157

评论数:0

Python黑魔法 --- 异步IO( asyncio) 协程

python asyncio 网络模型有很多中,为了实现高并发也有很多方案,多线程,多进程。无论多线程和多进程,IO的调度更多取决于系统,而协程的方式,调度来自用户,用户可以在函数中yield一个状态。使用协程可以实现高效的并发任务。Python的在3.4中引入了协程的概念,可是这个还是以生成器...

2018-08-07 20:50:10

阅读数:149

评论数:0

Python: 你不知道的 super

super() 的入门使用 在类的继承中,如果重定义某个方法,该方法会覆盖父类的同名方法,但有时,我们希望能同时实现父类的功能,这时,我们就需要调用父类的方法了,可通过使用 super 来实现,比如: class Animal(object): def __init__(self, ...

2018-08-07 20:49:09

阅读数:139

评论数:0

关于python 装饰器

关于装饰器 无参装饰器 普通函数 def say_hello(*args, **kwargs): print 'hello world' 无参装饰器 def debug(func): ...

2018-07-25 23:11:21

阅读数:152

评论数:0

django orm跨关系查询(跨表,多层查询)

django orm跨关系查询(ManyToManyField,ForeignKey多层查询) Django提供了一种强大而直观的方式来“跟踪”查找中的关系,在后台自动用SQL JOIN处理。 要跨越关系,只需使用跨模型的相关字段的字段名称,用双下划线分隔,直到到达所需的字段。 这个例子检索所...

2018-07-20 21:54:38

阅读数:910

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭