搜尋
首頁資料庫mysql教程Centos搭建Python+Nginx+Tornado+Mysql环境

PythonTornado的组合正在得到越来越多人的关注。Tornado和Nginx一样采用epoll的方式进行进程的调度。非阻塞的的调用方式轻易就解决了大并发的问题,再加上Python是开发轻量级、多并发程序的神器。所以,这个组给看上去相当不错。 下面我将介绍在UNIX(LINUX

Python+Tornado的组合正在得到越来越多人的关注。Tornado和Nginx一样采用epoll的方式进行进程的调度。非阻塞的的调用方式轻易就解决了大并发的问题,再加上Python是开发轻量级、多并发程序的神器。所以,这个组给看上去相当不错。
下面我将介绍在UNIX(LINUX、MAC下的配置方法其本一致)下如何快速搭建其运行环境:
1、安装Python
wget http://www.python.org/ftp/python/2.7.5/Python-2.7.5.tgz tar xvfz Python-2.7.5.tgzcd Python-2.7.5 ./configure
make
sudo make install

2、安装Python的包管理工具setuptools、pip和打包工具distribute
wget http://peak.telecommunity.com/dist/ez_setup.py python ez_setup.py
wget http://python-distribute.org/distribute_setup.py python distribute_setup.py
wget https://github.com/pypa/pip/raw/master/contrib/get-pip.py python get-pip.py

3、安装Readline
sudo pip install readline

4、安装Mysql
#安装cmake wget http://www.cmake.org/files/v2.8/cmake-2.8.8.tar.gz
tar xvfz cmake-2.8.8.tar.gz
cd cmake-2.8.8
./configure
make
sudo make install #安装mysql wget http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.29.tar.gz
tar xvfz mysql-5.5.29.tar.gz
cd mysql-5.5.29
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/localmysql/data/ -DMYSQL_UNIX_ADDR=/usr/localmysql/data/mysqld.sock -DWITH_INNOBASE_STORAGE_ENGINE=1 -DSYSCONFDIR=/etc -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_unicode_ci -DWITH_DEBUG=0
make
sudo make install #下载安装mysql-python wget http://sourceforge.net/projects/mysql-python/files/mysql-python/1.2.3/MySQL-python-1.2.3.tar.gz
tar xvfz MySQL-python-1.2.3.tar.gz
cd MySQL-python-1.2.3 #修改site.py中mysql_config的路径(为mysql安装路径下的/bin/mysql_config), site.py
mysql_config = /usr/local/mysql/bin/mysql_config #更改完进行编译和安装 python setup.py build
sudo python setup.py install #将mysql安装路径下的lib加入到环境变量LD_LIBRARY_PATH中 export LD_LIBRARY_PATH=/usr/local/mysql/lib/:$LD_LIBRARY_PATH
5、安装一些Python的常用模块和tornado
pip install tornado
pip install torndb 
pip install requests
pip install markdown

6、配置Mysql
groupadd mysql useradd -g mysql mysql chown mysql.mysql -R /service/mysql/ /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf

7、安装Nginx
wget http://nginx.org/download/nginx-0.8.33.tar.gz tar zxvf nginx-0.8.33.tar.gz
cd nginx-0.8.33 ./configure
make 
make install

8、配置nginx,编辑/usr/local/nginx/conf/nginx.conf文件
user nobody;
worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events {
    worker_connections 1024;
}

http {
    include mime.types;
    default_type application/octet-stream;

    upstream snail {
        server 127.0.0.1:8888;
    }

    sendfile on; #tcp_nopush on; keepalive_timeout 65;
    proxy_read_timeout 200;
    tcp_nopush on;
    tcp_nodelay on;
    gzip on;
    gzip_min_length 1000;
    gzip_proxied any;

    server {
        listen 80;
        server_name localhost; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html;
        location = /50x.html {
            root html;
        }

        location / {
            proxy_pass_header Server;
            proxy_set_header Host $http_host; #	proxy_redirect false; proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Scheme $scheme;
            proxy_pass http://snail; }

    }

}

9、创建一个项目
vi demo.py
import tornado.ioloop import tornado.web class MainHandler(tornado.web.RequestHandler): def get(self): self.write("Hello, world")

application = tornado.web.Application([
    (r"/", MainHandler),
]) if __name__ == "__main__":
    application.listen(8888)
    tornado.ioloop.IOLoop.instance().start()

10、运行这个项目
#启动项目 nohup python demo.py & #重启Nginx /usr/local/nginx/sbin/nginx -s reload

在浏览器中输入http://127.0.0.1 看到页面输出hello word!


陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
centos用什么命令可查版本号centos用什么命令可查版本号Mar 03, 2022 pm 06:10 PM

查版本号的命令:1、“cat /etc/issue”或“cat /etc/redhat-release”,可输出centos版本号;2、“cat /proc/version”、“uname -a”或“uname -r”,可输出内核版本号。

centos重启网卡的方法是什么centos重启网卡的方法是什么Feb 22, 2023 pm 04:00 PM

centos重启网卡的方法:1、对于centos6的网卡重启命令是“service network restart”;2、对于centos7的网卡重启命令是“systemctl restart network”。

centos php怎么安装opcachecentos php怎么安装opcacheJan 19, 2023 am 09:50 AM

centos php安装opcache的方法:1、执行“yum list php73* | grep opcache”命令;2、通过“yum install php73-php-opcache.x86_64”安装opcache;3、使用“find / -name opcache.so”查找“opcache.so”的位置并将其移动到php的扩展目录即可。

centos 怎么离线安装 mysqlcentos 怎么离线安装 mysqlFeb 15, 2023 am 09:56 AM

centos离线安装mysql的方法:1、将lib中的所有依赖上传到linux中,并用yum命令进行安装;2、解压MySQL并把文件复制到想要安装的目录;3、修改my.cnf配置文件;4、复制启动脚本到资源目录并修改启动脚本;5、将mysqld服务加入到系统服务里面;6、将mysql客户端配置到环境变量中,并使配置生效即可。

centos 7安装不出现界面怎么办centos 7安装不出现界面怎么办Jan 03, 2023 pm 05:33 PM

centos7安装不出现界面的解决办法:1、选择“Install CentOS 7”,按“e”进入启动引导界面;2、 将“inst.stage2=hd:LABEL=CentOS\x207\x20x86_64”改为“linux dd”;3、重新进入“Install CentOS 7”,按“e”将“hd:”后的字符替换成“/dev/sdd4”,然后按“Ctrl+x”执行即可。

centos 怎么删除 phpcentos 怎么删除 phpFeb 24, 2021 am 09:15 AM

centos删除php的方法:1、通过“#rpm -qa|grep php”命令查看全部php软件包;2、通过“rpm -e”命令卸载相应的依赖项;3、重新使用“php -v”命令查看版本信息即可。

如何在 CentOS 9 Stream 上安装 Nagios如何在 CentOS 9 Stream 上安装 NagiosMay 10, 2023 pm 07:58 PM

我们的PC中有一个磁盘驱动器专门用于所有与Windows操作系统相关的安装。该驱动器通常是C驱动器。如果您还在PC的C盘上安装了最新的Windows11操作系统,那么所有系统更新(很可能是您安装的所有软件)都会将其所有文件存储在C盘中。因此,保持此驱动器没有垃圾文件并在C驱动器中拥有足够的存储空间变得非常重要,因为该驱动器拥有的空间越多,您的Windows11操作系统运行起来就越顺畅。但是您可以在磁盘驱动器上增加多少空间以及可以删除多少文件是有限制的。在这种情况下,

centos中ls命令不显示颜色怎么办centos中ls命令不显示颜色怎么办Apr 20, 2022 pm 03:16 PM

方法:1、利用“vim ~/.bashrc”编辑用户目录(~)下的“.bashrc”文件;2、在文件内添加“alias ls="ls --color"”;3、利用“:wq!”命令保存文件内的更改;4、“exit”命令退出终端后重新连接即可。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前By尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前By尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境