centos graphviz(centos查看gpu信息)

linux 下graphviz 安装后怎么用好

graphviz安装:

graphviz有多种安装方式,源码及发行包。

当前最新版源码下载:

其它版本下载链接参照:

发行包:

RedHat and CentOS:

Fedora:

Ubuntu:

yum:

yum list'graphviz*'查看已安装graphviz包

yum install'graphviz*'安装graphviz

下面介绍几个简单的应用作为入门。

graphviz实例:

digraph g{

node [shape= record,height=.1//我定义了我下面的样式;

node0[label="<f0>|<f1> G|<f2>"];

//我是一个node,我有三个属性,第二个的名字为G,其他两个为空

node1[label="<f0>|<f1> E|<f2>"];

node2[label="<f0>|<f1> B|<f2>"];

node3[label="<f0>|<f1> F|<f2>"];

node4[label="<f0>|<f1> R|<f2>"];

node5[label="<f0>|<f1> H|<f2>"];

node6[label="<f0>|<f1> Y|<f2>"];

node7[label="<f0>|<f1> A|<f2>"];

node8[label="<f0>|<f1> C|<f2>"];

"node0": f2->"node4":f1;

//我的第三个属性连到node4的第二个属性

"node0": f0->"node1":f1;

"node1": f0->"node2":f1;

"node1": f2->"node3":f1;

"node2": f2->"node8":f1;

"node2": f0->"node7":f1;

"node4": f2->"node6":f1;

"node4": f0->"node5":f1;

}

Gotool问题排查:协程泄漏问题

下载测试代码

goget中可以获取测试程序,注意加上-d避免下载后自动安装。

goget-dgithub.com/wolfogre/go-pprof-practicecd$GOPATH/src/github.com/wolfogre/go-pprof-practice

如果goget下载不了,可以gitclone下载

girclone

对代码进行编译

然后运行

gomodinitgomodtidy

最后再运行

gobuild./go-pprof-practice

保持程序运行,打开浏览器访问,可以看到如下页面:

内存泄漏问题排查

golang和Java有点类似,自带了内存回收,所以一般不会发生内存泄漏。但是也不绝对,golang中协程本身是可能泄漏的,或者叫做协程协程失控,进而导致内存泄漏。

启动程序

为了能更加图形化的展示,可以安装。graphviz

安装方式brewinstallgraphviz#formacosaptinstallgraphviz#forubuntuyuminstallgraphviz#forcentos

安装完成后,我们继续在上文的交互式终端里输入web,注意,虽然这个命令的名字叫“web”,但它的实际行为是产生一个.svg文件,并调用你的系统里设置的默认打开.svg的程序打开它。如果你的系统里打开.svg的默认程序并不是浏览器(比如可能是你的代码编辑器),这时候你需要设置一下默认使用浏览器打开.svg文件

浏览器访问

可以看到协程有46个,使用pprof排查一下

gotoolpprof

输入top命令

可以看到cum那一行,是Drink有40个协程。

查看list.Drink

输入web,浏览器可以看到冒红的那部分。

可能这次问题藏得比较隐晦,但仔细观察还是不难发现,问题在于github.com/wolfogre/go-pprof-practice/animal/canidae/wolf.(*Wolf).Drink在不停地创建没有实际作用的协程:

func(w*Wolf)Drink(){log.Println(w.Name(),"drink")fori:=0;i<10;i++{gofunc(){time.Sleep(30*time.Second)}()}}

可以看到Drink函数,每次循环会有创建10个协程,协程会sleep30s才会退出,如果反复调用这个Drink函数,那么会导致大量协程出现泄漏,协程数会增加。

欢迎关注公众号:程序员财富自由之路

参考资料

作者:banjming著作权归作者所有。

anaconda如何安装django(Anaconda如何安装graphviz)

导读:本篇文章首席CTO笔记来给大家介绍有关anaconda如何安装django的相关内容,希望对大家有所帮助,一起来看看吧。

linux django uwsgi+nginx怎么调试

1.python和django的环境搭建

(1)下载anaconda3并安装

wget

sh Anaconda3-2.3.0-Linux-x86_64.sh

一路enter键,然后提示是否加入到环境变量时,输入yes即可。

(2)安装django

直接pip install django

安装成功之后就可以新建项目

django-admin startproject demosite

cd demosite

python manage.py startapp blog

python manage.py migrate(要执行这个命令,让django生成可运行的app,否则后面使用uwsgi会报错)

(3)运行django

python manage.py runserver

curl 127.0.0.1:8000进行如果可以正常访问,就说明django安装成功。

2.安装uwsgi

(1)centOS

yum install zlib-devel bzip2-devel pcre-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel

pip install uwsgi

uwsgi--version#查看 uwsgi版本

(2)test.py

然后,Run uWSGI:

uwsgi--http:8000--wsgi-file test.py

def application(env, start_response):

start_response('200 OK', [('Content-Type','text/html')])

return ["Hello World"]# python2

#return [b"Hello World"]# python3

(3)ubuntu可以能会出现错误:

如果出现错误,!!! no internal routing support, rebuild with pcre support!!!

sudo apt-get install libpcre3 libpcre3-dev

sudo pip uninstall uwsgi

sudo apt-get remove uwsgi

sudo pip install uwsgi

(4)测试

1)打开下面url,浏览器上应该显示hello world

curl如果安装httpie模块的话使用http

如果显示正确是Hello World,说明上面的环节是畅通的

2)测试django

默认使用django新建工程会在app下面生成一个wsgi.py的文件

uwsgi--http:8000--wsgi-file wsgi.py直接这样也会报错

uwsgi--http:8000--wsgi-file appname/wsgi.py

打开浏览器输入如果现实正确说明web client--uwsgi--- django是畅通的

3.安装配置nginx

(1)安装

wget

tar xf nginx-1.9.5.tar.gz

cd nginx-1.9.5

./configure--prefix=/usr/local/nginx--with-http_stub_status_module--with-http_gzip_static_module

makemake install

或者参考

(2)配置文件

vi/usr/local/nginx/conf/nginx.conf

一般来说加入个server就OK了

参考配置如下

user root;

worker_processes1;

#error_loglogs/error.log;

#error_loglogs/error.lognotice;

#error_loglogs/error.loginfo;

pidlogs/nginx.pid;

events{

use epoll;

worker_connections65535;

}

http{

include mime.types;

default_typeapplication/octet-stream;

#log_formatmain'$remote_addr-$remote_user [$time_local]"$request"'

#'$status$body_bytes_sent"$http_referer"'

#'"$http_user_agent""$http_x_forwarded_for"';

#access_loglogs/access.logmain;

sendfileon;

#tcp_nopush on;

#keepalive_timeout0;

keepalive_timeout65;

#gzipon;

server{

listen 8099;

server_name 10.117.52.157;##对外访问的IP和端口号

access_log/tmp/cms/access.log;

error_log/tmp/cms/error.log;

#charset koi8-r;

#access_loglogs/host.access.logmain;

location/{

includeuwsgi_params;

uwsgi_pass 127.0.0.1:8088;

uwsgi_read_timeout 300;

}

#error_page404/404.html;

# redirect server error pages to the static page/50x.html

#

#error_page 500 502 503 504/registration/500.html;

#location=/registration/500.html{

#root html;

#}

location/static/{

alias/root/cms/cms/static/;

indexindex.html index.htm;

}

location/media/{

alias/root/cms/cms/media/;

}

}

}

(3)运行and重启

/usr/local/nginx/sbin/nginx

启动: nginxstart

重启: nginx-s reload

4.使用uwsgi的配置文件运行django

在确保nginx运行之后,就可以通过uwsgi来运行django了。nginx在最外层接收请求,静态的自己处理,动态的通过socket端口交给uwsgi来处理。

配置文件内容如下

[uwsgi]

socket=:8088#要和nginx对应的IP和端口号一致

chdir=/root/cms/cms#APP的目录

module=cms.wsgi#wsgi.py文件位置

touch-reload=/root/cms/cms/reload#重启只要输入命令touch reload文件即可

processes=4

threads=2

daemonize=/tmp/cms/wsgi.log#日志文件位置

放在APP的上一级目录

直接运行uwsgi--ini uwsgi.ini即可

关于pycharm社区版环境配置

很多小白初学python会选择使用pycharm,而pycharm社区版在环境配置方面确实多了不少小麻烦。

想要创建第一个Django项目之前,要坐以下几件事

1、安装conda科学计算环境

conda的官网是:

安装教程:随便搜一下就有

一点注意事项:window10系统安装后,需要去配置系统变量

2、用pycharm新建项目时,要注意自定义环境

如果不这么选,会出现在cmd小黑窗中conda,django都安装好了,到了pycharm中就无效,又得一个一个重装,原因貌似是pycharm每当新建一个项目的时候会自动创建一个虚拟环境。

3、通过pip安装django需要的版本

以上几条都做完之后,理论上就可以安心的去新建django项目了

如何在Anaconda中安装Django

笔者使用Sublime Text 3安装配置插件Anaconda步骤:

安装:

打package control菜单输入install或者直接点击install package命令菜单

新窗口输入Anaconda并点击第备选项进行安装

安装完显示messages文档

配置:

点击Anaconda插件默认设置菜单弹设置文档

约90行位置我修改Python主程序位置路径

结语:以上就是首席CTO笔记为大家整理的关于anaconda如何安装django的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~

阅读剩余
THE END