pycharm使用远程环境无法读取环境中的包

pycharm使用远程环境无法读取环境中的包,第1张

一.介绍
Python远程调试,即在远程机器上运行python代码,在本地进行调试。
需要环境:python
调试环境:PyCharm
需要依赖:远程和本地需要在python路径安装pycharm-debugegg
注:安装egg包需要使用先安装setuptools
二.安装setuptools
在windows/linux环境下直接使用ez_setuppy脚本安装:
1 下载脚本:该脚本会自动下载setuptools-116targz
2 运行脚本:python ez_setuppy 即可完成setuptools安装
(注:如果机器连不上服务器,可以把ez_setuppy和setuptools-116targz包拷贝到该机器上,并放在同一目录下,然后运行ez_setuppy即可)
三.安装pycharm-debugegg
在PyCharm的安装目录下能找到pycharm-debugegg,在python的安装路径下能找到easy_intall命令(已安装了setuptools),执行:
easy_installexe pycharm-debugegg即可完成安装。
四.远程调试
1 打开PvCharm,配置远程调试:
(a) 打开edit confiurations
(b) 添加Python Remote Debug
(c) 配置本地的ip、端口号,如:1921681126,此ip为你进行调试 *** 作的机器的ip,远程机器需要连上这个ip。
(d)在远程机器上编写将在本地调试的python代码,在入口处加上:
import pydevd
pydevdsettrace('1921681126',port=51234, stdoutToServer=True, stderrToServer=True)
配置的ip、端口好即在本地PvCharm上配置的ip和端口号,即PvCharm所在机器的ip和开启调试的端口号。
2 开始调试
a) 在本地PvCharm上开始调试服务,
b) 在远程机器上运行python脚本:
c) 此时可点击”Download”下载源码:
d) 开始调试:

node技术成为web前端领域的主流开发工具可以说本身就是一个美丽的误会,当初这个技术被开发出来使用的时候主要是为了解决后端的问题才出现的。今天,北京java课程培训机构就一起来了解一下node技术的发展历程和未来的发展趋势。



a)Node8进入LTS时代

Nodejs大的变化是进入Node8时代,它是一个稳定的长期支持版本(LTS),除了性能提升外,还有以下几个要点。

Async/Await支持。其实在Nodejsv76就可以通过flag支持了,在node8里直接落地。通过Async函数可以更好的进行异步流程控制,远离CallbackHell。在Async函数里,你可以通过await调用Promise,以及通过co包裹的generator,可以说,向前是完美的Async函数,向后也完美兼容各种遗留代码,称为异步终极解决方案不为过。

ES6模块支持。通过vue/react、webpack、babel和typescript等火爆发展,es6模块得到了广泛普及和应用,在Nodejsv85可以通过--experimental-modules来开启这个体验版特性。当然,你想在Nodejs更早版本里使用ES6模块,可以采用@std/esm模块。

>

b)企业级Web开发

基础框架除了应用广泛的主流Web框架Koa外,Fastify也是一直劲敌,作者MatteoCollina是Nodejs核心开发,Stream掌门,性能优化专家。Fastify基于Schema优化,对性能提升极其明显。狼叔认为这是企业级Web开发,他在这里给我们介绍了3个知名框架。

b1)Eggjs

阿里开源的企业级Nodejs框架Egg发布20,基于Koa2x,异步解决方案直接基于AsyncFunction。框架层优化不含Node8带来的提升外,带来30%左右的性能提升。

Egg采用的是『微内核+插件+上层框架』模式,对于定制,生态,快速开发有明显提升,另外值得关注的是稳定性和安全上,也是极为出色的。

b2)Nest

Nest是基于TypeScript和Express的企业级Web框架。

很多人开玩笑说,Nest是像Java开发方式的,确实,Nest采用TypeScript作为底层语言,TypeScript是ES6超集,对类型支持,面向对象,Decorator(类似于Java里注解Annotation)等支持。在写法上,保持Java开发者的习惯,能够吸引更多人快速上手。

TypeScript支持几乎是目前所有NodeWeb框架都要做的头等大事,在2017年Nest算个知名项目,值得一提。

b3)ThinkJS

ThinkJS是一款拥抱未来的NodejsWeb框架,致力于集成项目佳实践,规范项目让企业级团队开发变得更加简单,更加高效。秉承简洁易用的设计原则,在保持出色的性能和至简的代码同时,注重开发体验和易用性,为WEB应用开发提供强有力的支持。

ThinkJS是国产老牌Web框架,在2017年10月发布v3版本,基于Koa内核,在性能和开发体验上有更好的提升。

整体来看,Nodejs在企业Web开发领域日渐成熟,无论微服务,还是Api中间层都得到了非常好的落地。2017年,唯一遗憾的是Nodejs在servless上表现的不太好,相关框架实践偏少。

c)不可不见的Api中间层

前端越来越复杂,后端服务化,今日的前端要面临更多的挑战。一个典型的场景就是在服务化架构里,前端面临的头痛的问题是异构API,前后端联调的时候,多个后端互相推诿,要么拖慢上线进度,要么让前端性能变得极其慢。进度慢找前端,性能差也找前端,但这个锅真的该前端来背么

Nodejs的Api中间层应用很好地解决了这个问题。后端不想改的时候,实在不行就前端自己做,更灵活,更能应变。

透传接口,对于内网或者非安全接口,可以采用中间层透传。

聚合接口,对异构API处理非常方便,如果能够梳理model,应变更容易。

Mock接口,通过Mock接口,提供前端开发效率,对流程优化效果极其明显,比如去哪儿开发的yapi就是专门解决这个问题的。

除此之外,前端如果想做一些技术驱动的事儿,SSR(服务器端渲染)和PWA(渐进式Web应用)也是非常不错的选择。

d)新领域(深度学习、区块链等)

csgo掉落问号是因为服务器更新存在延迟。csgo是是一款第一人称射击类游戏,收到许多玩家们的入手,有许多玩家们在官匹匹配的时候匹配不了人,匹配界面一直报黄显示网络异常。出现匹配的原因可能是因为系统显示没有合适的服务器,可能是网络出现了延迟,会出现感叹号无法匹配,玩家们可以独立组建网络修复,然后再重启游戏,这样就不会出现感叹号了。玩家们可以下一个加速进行加速,出现感叹号一般都是出现网络连接不好或者网络有延迟,可以通过加速提升网络的速度。
综上所述玩家们在有官匹的时候出现感叹号可以先重启游戏,有时候可能因为游戏的网络不好,重启游戏后一般都不会显示感叹号了,还可以通过加速的方法来提升网络的速度。

使用pip或easy_install可以管理和安装python的package包,实际上它们都是从pypi服务器中搜索和下载package的。目前在pypi服务器上,有超过三万多个package,同时还允许我们将自己的代码也上传发布到服务器上。这样,世界上的所有人都能使用pip或easy_install来下载使用我们的代码了。
具体步骤如下:
首先创建项目文件和setup文件。
目录文件结构如下:
project/
simpletest/
__init__py
testpy
setuppy
假设项目文件只有一个simpletest包,里面有一个testpy文件。
创建的setuppy文件格式大致如下,其中,install_requires字段可以列出依赖的包信息,用户使用pip或easy_install安装时会自动下载依赖的包。详细的格式参考文档。
from setuptools import setup, find_packages
setup(
name = 'simpletest',
version = '001',
keywords = ('simple', 'test'),
description = 'just a simple test',
license = 'MIT License',
install_requires = ['simplejson>=11'],
author = 'yjx',
author_email = 'not@allcom',
packages = find_packages(),
platforms = 'any',
)
然后将代码打包。
打包只需要执行python
setuppy xxx命令即可,其中xxx是打包格式的选项,如下:
# 以下所有生成文件将在当前路径下 dist 目录中
python setuppy bdist_egg # 生成easy_install支持的格式
python setuppy sdist # 生成pip支持的格式,下文以此为例
发布到pypi。
发布到pypi首先需要注册一个账号,然后进行如下两步:
注册package。输入python setuppy register。
上传文件。输入python setuppy sdist upload。
安装测试
上传成功后,就可以使用pip来下载安装了。
另外,pypi还有一个测试服务器,可以在这个测试服务器上做测试,测试的时候需要给命令指定额外的"-r"或"-i"选项,如python
setuppy register -r "",python
setuppy sdist upload -r "",pip
install -i "" simpletest。
发布到测试服务器的时候,建议在linux或cygwin中发布,如果是在windows中,参考文档,需要生成pypirc文件


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/13445444.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-08-07
下一篇 2023-08-07

发表评论

登录后才能评论

评论列表(0条)

保存