当前位置: 首页 > news >正文

广西网站建设哪家好/专业竞价托管

广西网站建设哪家好,专业竞价托管,宁波网页制作公司哪家好,网站留言板的作用背景 Linux 服务器经常有多个Python版本,比如 Python2 有两个版本,Python3 有两个版本。在使用上容易混淆,而且有些需要新增一些 module 更容易,安装如果路径不统一,导致日常使用时,会出现找不到新安装mod…

背景

Linux 服务器经常有多个Python版本,比如 Python2 有两个版本,Python3 有两个版本。在使用上容易混淆,而且有些需要新增一些 module 更容易,安装如果路径不统一,导致日常使用时,会出现找不到新安装module的问题。

所以目前简单的方案,统一Linux上使用的Python版本。

解决方案

Python 路径

Linux服务器一般可能存在多版本(这里以 Python3 为例,Python2 不建议业务继续使用),一个在 /usr/local/python3 目录下,版本是 3.6.15;  另一个在 /usr/bin/python3 目录下,版本是 3.6.8。

多版本Python容易混淆,而且安装依赖不太方便,后续统一Python使用 系统环境 /usr/bin/python3 ,版本是 3.6.8。

同时 /usr/local/python3/bin/python3 不在使用,先备份这个路径下 /usr/local/python3/bin/python3 版本,然后做一个新的软连接,统一使用系统环境中 python3 版,如下图所示:

mv /usr/local/python3/bin/python3 /usr/local/python3/bin/python3_bakln -s /bin/python3   /usr/local/python3/bin/python3
[root@centos ~]# which python3
/usr/bin/python3
[root@centos ~]# cd /usr/local/python3/bin/
[root@centos bin]# ll
total 37312
-rwxr-xr-x 1 root root      111 Jan  1  2022 2to3
-rwxr-xr-x 1 root root      111 Jan  1  2022 2to3-3.6
-rwxr-xr-x 1 root root      252 Jan  1  2022 easy_install-3.6
-rwxr-xr-x 1 root root      109 Jan  1  2022 idle3
-rwxr-xr-x 1 root root      109 Jan  1  2022 idle3.6
-rwxr-xr-x 1 root root      262 Apr 27  2023 normalizer
-rwxr-xr-x 1 root root      243 Mar 30  2023 pip
-rwxr-xr-x 1 root root      243 Mar 30  2023 pip3
-rwxr-xr-x 1 root root      243 Mar 30  2023 pip3.6
-rwxr-xr-x 1 root root       94 Jan  1  2022 pydoc3
-rwxr-xr-x 1 root root       94 Jan  1  2022 pydoc3.6
lrwxrwxrwx 1 root root       12 Mar 30  2023 python3 -> /bin/python3
-rwxr-xr-x 1 root root 12710424 Jan  1  2022 python3.6
-rwxr-xr-x 1 root root     3107 Jan  1  2022 python3.6-config
-rwxr-xr-x 1 root root 12710424 Jan  1  2022 python3.6m
-rwxr-xr-x 1 root root     3107 Jan  1  2022 python3.6m-config
-rwxr-xr-x 1 root root 12710424 Jan  1  2022 python3_bak
-rwxr-xr-x 1 root root     3107 Jan  1  2022 python3-config
-rwxr-xr-x 1 root root      451 Jan  1  2022 pyvenv
-rwxr-xr-x 1 root root      451 Jan  1  2022 pyvenv-3.6
[root@centos bin]# ./python3.6 -V
Python 3.6.15
[root@centos bin]#
[root@centos bin]# python3 -V
Python 3.6.8

Python Module 

业务在使用上,可以需要安装一下Python依赖的module,经过上面的版本统一,所以这样就可以直接使用 pip3 install xxx 即可。

对于 Python Spark 类型的任务,在执行的时候,尽量选择 deploy-mode client 模式。这样会任务会依赖本地的 python3 包。

对于使用 deploy-mode cluster,会依赖 /usr/local/python3/python3.zip 这个包,如果业务任务需要依赖新安装的 module ,此时需要重新打包 python3.zip 包。

[root@centos python3]# pwd
/usr/local/python3
[root@centos python3]# ll
total 2032912
drwxr-xr-x 2 root root      4096 Apr 27  2023 bin
drwxr-xr-x 3 root root      4096 Jan  1  2022 include
drwxr-xr-x 4 root root      4096 Jan  1  2022 lib
-rwxrwxrwx 1 root root 687685756 Jan 15 10:29 python3.zip
drwxr-xr-x 3 root root      4096 Jan  1  2022 share
drwxr-xr-x 6 root root      4096 Apr 27  2023 test

按照上述的使用系统环境变量中版本,这个python包很难去获得。目前只能通过按照到 /usr/local/python3/bin/pip3 install xxx 模式,安装在指定路径下,然后执行  cd /usr/local/python3/ && zip -r python3.zip *   包。

Python Module 虚拟环境打包

PySpark类型的任务默认使用 yarn cluster 模式提交的,所以需要将提交机器上 python3.zip 包上传到 远程的 driver和 executor 上,针对一些新安装的python3模块,需要将安装的模块重新打包到 python3.zip 中。

否则,任务执行会出现找不到 python3 中某个模块。

在Linux Centos上创建一个python3虚拟环境 venv,启动python3虚拟环境,在虚拟环境中安装需要的module即可,具体的详细命令如下,后续会整理成一个自动化脚本:

PS:1.如果有自定义开发的module,需要手动安装一下 ;

        2.下面的Python3的虚拟环境可以复用,不用重复创建。

###注意:下面的Python3的虚拟环境可以复用,不用重复创建#创建python3虚拟环境路径,使用系统环境变量中python3版本
python3 -m venv  /home/root/python3-venv/#进入python3虚拟环境目录
cd   /home/root/python3-venv/ #获取当前系统环境下python3安装的module
pip3 freeze > requirements.txt#启动虚拟python3环境
source /home/root/python3-venv/bin/activate#将系统环境中安装的python3模块安装到虚拟python3环境
pip3 install -r requirements.txt#退出python3虚拟环境
deactivate#python3打包
zip -r python3.zip *mv /usr/local/python3/python3.zip /usr/local/python3/python3.zip.bak.$(date +%Y-%m-%d)cp /home/root/python3-venv/python3.zip /usr/local/python3/chmod 777 /usr/local/python3/python3.zip

问题总结

#如果报错:[rootaV-centos]# python3 -m veny/home/root/python3-venv  /home/root/python3-venv/bin/python3'ensurepip','--upgrade" rror: Command'--default-pip']' returned non-zero exit status 1 
#如果上面创建python3虚拟环境命令有问题,可以试试下面这个命令,不复制 pip3,后续通过手动方式安装pip3
python3 -m venv --without-pip /home/root/python3-venv/cd /home/root/python3-venv/#启动虚拟python3环境
source /home/root/python3-venv/bin/activate#下载 3.6 pip3 安装文件
wget  https://bootstrap.pypa.io/pip/3.6/get-pip.py#安装pip3
sudo python3 get-pip.py#查看pip3使用的路径
which pip3 #退出python3虚拟环境
deactivate

SO文件问题

调度机上面对应的需要的SO文件,放到 Python3  site-packages 路径下,再打包就好了。

有些so文件,可以放的位置不太一样。比如 librocketmq.so 文件,存放的位置是 /usr/lib/python3.6/site-packages/rocketmq 路径下。

cp /usr/lib64/python3.6/lib-dynload/_bz2.cpython-36m-x86_64-linux-gnu.so  /usr/lib/python3.6/site-packages

MQ 安装和参考

报错:ImportError: rocketmq dynamic library not found解决方法-CSDN博客

http://www.whsansanxincailiao.cn/news/32044476.html

相关文章:

  • 深圳企业网站建设与设计制作/百度广告销售
  • 临沂医院网站建设/刷评论网站推广
  • 大型网页设计公司/网站seo快速优化技巧
  • 淘宝做网站的公司/山东seo推广
  • 邯郸网站建设有哪些/正规seo排名外包
  • 建立网站需要哪些/百度搜索指数排行榜
  • 南通做网站价格/最好的网站设计公司
  • 安全等级保护每个网站必须做吗/seo网站推广公司
  • 哪里做网站做得好/网站的优化公司
  • 北京国税局网站做票种核定/bt磁力在线种子搜索神器
  • 自己做衣服的网站/建站系统哪个好
  • 公司网站建设费怎么写分录/关键词百度云
  • 徐州睢宁建设网站/投稿平台
  • 酒店网站 方案/手机如何制作网站教程
  • 网站建设一般报价多少钱/上海网络排名优化
  • 网站排名规则/有人看片吗免费观看视频
  • 天津网站建设专家/网络营销就业方向和前景
  • 苏州做网站公司/中国最新军事新闻最新消息
  • 做网站需要规划好什么/移动端优化
  • 商场设计公司/谷歌seo推广公司
  • wordpress图片拖拽到富文本里面/seo的基础优化
  • ie建设企业网站进去无法显示/如何用手机制作网站
  • 有什么可以做翻译的网站吗/营销型制作网站公司
  • wordpress中下载按钮/正规优化公司哪家好
  • 中国十大搜索引擎网站/企业网络推广的方法
  • 网站开发建设技术特点/免费收录网站提交
  • 网站建设图书推荐/广告seo是什么意思
  • 烟台哪个公司做网站好/2022年最火的新闻摘抄
  • 哪个网站容易做二级域名/网络推广网址
  • 西安网站建设/今日军事新闻最新消息新闻报道