置顶使用Docker部署Django应用的过程和心得


之前部署Web应用,没用docker,直接在服务器上部署,使用了django+nginx+supervisor+gunicorn部署博客应用。但后来了解了docker,为其“Build,Ship and Run Any App,Anywhere”的思想所折服,觉得这个太牛逼了,所以我也尝试一下自己用docker部署Web应用。本篇文章为了记录我用docker部署web应用的过程和心得。

Django常见的两种部署方式:

  1. Django + Nginx + uWSGI

  2. Django+ Nginx + Gunicorn

采用用 uWSGI 配合 Nginx的部署方式

构建的容器:

  1. Django+nginx+uwsgi 容器 (dockerfiles/django-uwsg...

>> 阅读全文


Python ASGI 框架 快如闪电的异步服务器Uvicorn


什么是 Uvicorn ?

Uvicorn 是一个闪电般快速的ASGI服务器,基于uvloop和httptools构建。

直到最近,Python还没有为asyncio框架提供最小的低级服务器/应用程序接口。 ASGI规范填补了这一空白,意味着我们现在能够开始构建一个可用于所有asyncio框架的通用工具集。

ASGI帮助实现一个Python Web框架生态系统,该框架在与IO绑定的上下文中实现高吞吐量方面与Node和Go竞争非常激烈。 它还提供对HTTP / 2和WebSockets的支持,WSGI无法处理。

Uvicorn目前支持HTTP/1.1和WebSockets。 计划支持HTTP/2。

什么是 uvloop 和 httptools ?

答: uvloop 用于替换标准库 asyncio 中的事件循环,使用 Cython 实现,它非常快,可以使 asyncio 的...


>> 阅读全文


Zeal——好用的离线 API 文档大全!


Zeal 是一款离线文档浏览器,其灵感来自 OS X平台上的 Dash,目前支持 Window 和 Liunx。基于 QT5。

  1. 支持呼出热键。只要按下组合箭 ALT+Space 即可在任何地方显示面板,不用时可以用热键隐藏的系统托盘。

  2. 可同时搜索多个文档

  3. 不依赖网络

  4. GPL 协议开放源码

  5. Dash 中的文档都可以在 Zeal 中使用。

安装:

WIndows 自带二进制安装包

Linux 需要安装 QT( >= 5) 和 bsdtar。

软件截图:


>> 阅读全文


mysql查询group_concat()数据不全导致数据被截断问题


查询语句如下: 

SELECT 发行人, GROUP_CONCAT( 股票代码, '##', 全称,'##', 简称) AS bond_info 
FROM 表名

查询该语句发现数据居然缺失如下:

140020##2014年记账式附息(二十期)国债##14附息国债20,G140020##2014年记账式附息(二十期)国债##14附息国债20,  省略部分数据...... ,101424##2014年记账式附息(二十四期)国债##国债1424,140024##

查来查去终于发现了一个巨坑,那就是group_concat()有长度限制102400, 可能数据太长导致被截断.

解决方法一:

windows下在my.ini加上group_concat_max_len = 102400 //自己设置的值

...

>> 阅读全文


Pandas中groupby的这些用法


 

01 如何理解pandas中的groupby操作

groupby是pandas中用于数据分析的一个重要功能,其功能与SQL中的分组操作类似,但功能却更为强大。理解groupby的原理可参考官网给出的解释:

其中:

  • split:按照某一原则(groupby字段)进行拆分,相同属性分为一组

  • apply:对拆分后的各组执行相应的转换操作

  • combine:输出汇总转换后的各组结果

 

 



02 分组(split)——groupby

 

groupby首先要指定分组原则,这也是groupby函数的第一步,其常用参数包括:

  • by,分组字段,可以是列名/series/字典/函数,常用为列名

    ...

>> 阅读全文


‹‹ 1 2 3 4 ... 17 ››