分类 Python

gunicorn+gevent+nginx部署flask应用

这次部署是在ubuntu上进行的,在部署开始之前要做以下事情:

1.在你的linux系统上安装python-pip
sudo apt-get install python-setuptools
sudo apt-get install python-dev 
sudo apt-get install python-pip
2.安装virtualenv
sudo apt-get install python-virtualenv
3.切换到你的flask应用项目的根目录
virtualenv[......]

阅读全文»

用gunicorn和gevent提高python web框架的性能

其实比如 Flask,webpy,Django、CherryPy 都带着 WSGI server 。当然性能都不好,自带的web server 更多的是测试用途, 线上发布时,则使用高性能的 wsgi server或者是联合nginx做uwsgi 。

诚如那个WSGI的定义所说的,协议定义了一套接口来实现服务器端与应用端通信的规范化(或者说是统一化)。这是怎样的一套接口呢?很简单,尤其是对于应用端。

神器 Gunicorn是一个Python WSGI UNIX的HTTP服务器。这是一个[……]

阅读全文»

使用 Python 获取 Linux 系统信息

在本文中,我们将会探索使用Python编程语言工具来检索Linux系统各种信息。走你。

哪个Python版本?

当我提及Python,所指的就是CPython 2(准确的是2.7).我会显式提醒那些相同的代码在CPython 3 (3.3)上是不工作的,以及提供一份解释不同之处的备选代码。请确保你已经安装了CPython,在终端上输入python或者python3回车,然后你在终端上应该能看到python的提示符(prompt)。

请注意,所有的程序在它们第一行都[……]

阅读全文»

Python编程中常用的12种基础知识总结

python编程中常用的12种基础知识总结:正则表达式替换,遍历目录方法,列表按列排序、去重,字典排序,字典、列表、字符串互转,时间对象操作,命令行参数解析(getopt),print 格式化输出,进制转换,Python调用系统命令或者脚本,Python 读写文件。

1、正则表达式替换

目标: 将字符串line中的 overview.gif 替换成其他字符串

>>> line = '<IMG ALIGN="middle" SRC=\'#\'" /[......]

阅读全文»

Nginx+uWSGI 部署 Django 应用

常见的djangowebapp 部署方式采用FCGI或WSGI的方式部署,今天我这备忘下采用uWSGI的部署方式。 目前我这博客就是采用 Nginx + uWSGI + Python + Django 构建的,部署虽没有php那样扔到目录那么方便,但是并发和性能消耗还是非常不错的。这里不想赘述关于FCGI,WSGI,uWSGI之间的比较,网上关于这样的对比测试也有很多,例如这里。这里说下部署过程。 uWSGI 的官方网站 http://projects.unbit.it/uwsgi/ wiki介绍的[……]

阅读全文»

Nginx+uwsgi快速部署Python应用

从学过的编程语言来说,感觉PHP的部署是最Easy的。只要把环境搭建好,PHP文件丢到路径,访问即可,不用操心php-cgi运行如何,很是方便啊。

而Phthon的部署就麻烦了,以下是总结网上资料关于使用Nginx+uwsgi来部署Python应用。

Python的WEB服务器大部分可分为:Python写的(如Medusa),嵌入 Python的(如mod_python的),或者调用Python通过网关协议(例如的CGI,FastCGI的,等等)

Python常见[……]

阅读全文»

Python字符编码详解

1. 字符编码简介

1.1. ASCII

ASCII(American Standard Code for Information Interchange),是一种单字节的编码。计算机世界里一开始只有英文,而单字节可以表示256个不同的字符,可以表示所有的英文字符和许多的控制符号。不过ASCII只用到了其中的一半(\x80以下),这也是MBCS得以实现的基础。

1.2. MBCS

然而计算机世界里很快就有了其他语言,单字节的ASCII[……]

阅读全文»

python调用shell脚本

os.system(command) 返回command命令的退出状态。这实际上是使用C标准库函数system()实现的。这个函数在执行command命令时需要重新打开一个终端,并且无法保存command命令的执行结果。

os.popen(command,mode) 返回command命令的执行结果。返回值是一个文件对象,可以读或者写(由mode决定,mode默认是’r’)。如果mode为’r’,可以使用此函数的返回值调用read()来获取command命令的执行结果。如a=os.pop[……]

阅读全文»

Python内置的字符串处理函数整理

收集常用的Python 内置的各种字符串处理 函数的使用方法
str=’python String function’
1.生成字符串变量str=’python String function’

2.字符串长度获取:len(str)
例:print ‘%s length=%d’ % (str,len(str))

3.字母处理
全部大写:str.upper()
全部小写:str.lower()
大小写互换:str.swapcase()
首字母大写,其余小写:str.capit[……]

阅读全文»

Python扫描目录&拷贝文件

刚学python没多久,需要在实际应用中体验一把python的便捷。最近做项目是在原项目基础上修改的,所以给客户上线时候只需要把改过的class文件、jsp文件和配置文件更新进去。因为昨天已经从版本控制中一个文件一个文件对比出来找出了修改过的java文件,对应找出了需要更新的class。但是今天又在这几个文件中有所修改,不想再对照版本控制找出修改的文件,所以写了以下代码帮我完成这个功能。

SOURCE_PATH1 是昨天已经挑好的文件目录。(其实该目录只是提供了要从SOURCE_PATH2中复制的文[……]

阅读全文»

鄂ICP备13000209号-1

鄂公网安备 42050602000277号