有一个Python项目我想要部署在没有互联网连接和编译器的生产服务器上。 该项目使用SQLAlchemy和pip安装sqlalchemy需要编译器才能工作。 服务器正在运行Debian稳定版本。 因为Debian就是这样,软件包主要是过时的,使用系统软件包pipe理器不是一个选项。 我可以创build一个本地pip镜像和一个构build服务器,其configuration与生产环境相同(使用编译器)。 请注意,我想从virtualenv运行代码。 Python virtualenv在位于virtualenv / bin /中的文件中插入绝对path,所以如果我想在构build服务器上创buildvirtualenv并将其复制到生产服务器,我需要修改这些文件来相应地更新path(我尝试避免,即使进行修改也不是什么大不了的事情)。 我应该如何打包我的应用程序? 部署应该如何工作,一步一步?
题: 有没有办法使用uWSGI作为代理服务器? 更多关于系统: 6个负载均衡的nginix / uWSGI服务器 python 要求: 设置几个代理服务器,可以: 接受来自客户端浏览器的请求 阅读并修改请求URL 阅读和修改请求标题 转发请求到另一个代理服务器 我们想使用uWSGI作为代理服务器的原因是因为我们已经在应用程序中使用了uWSGI,并且所有的Python代码都可以使用它。 现在,我们使用uWSGI在后端为Python提供一个RESTful的http API。 据我所知,代理服务器的工作方式不同于REST API。 请原谅我的无知,我对代理服务器知之甚less,以及它们是如何工作的。 我也意识到这些要求听起来很古怪,但我向你保证,有一个原因和韵律。 非常感谢!
我试图configuration一个RHEL6服务器,允许多个用户运行多个版本的Python,多个版本的各种Python模块,以及各种其他程序(如gcc)的多个版本。 我相信这样做的适当方法是使用环境模块和virtualenv。 我熟悉virtualenv,但是我对使用环境模块感到困惑。 我安装了Python 2.7.3: # ./configure –prefix=/usr/local # make && make altinstall 我可以很容易地运行Python 2.7.3: /usr/local/python-2.7 我以为我可以简单地使用我的模块文件预先使用/usr/local/python-2.7来使用我的PATH环境variables,但是在/usr/local/python-2.7没有python二进制文件,只有一个名为python-2.7的二进制文件。 我错过了什么吗? 如何使用环境模块模块文件来使用Python 2.7?
我有一个构build在Flask框架上的小型python web应用程序,并使用mod_wsgi将其部署到apache。 应用程序正在安排每隔几分钟运行一次apscheduler的后台任务。 从Apache的错误日志,我一直在观察一个错误。 这个错误似乎是在后台任务运行的时候抛出的,但是在之前或之后是不一致的,而且经常会出现在多次之后。 这是错误: Exception ignored in: <module 'threading' from '/usr/local/lib/python3.4/threading.py'> Traceback (most recent call last): File "/usr/local/lib/python3.4/threading.py", line 1289, in _shutdown assert tlock is not None AssertionError: 那个来自python本身的代码是这样的: def _shutdown(): # Obscure: other threads may be waiting to join _main_thread. That's # dubious, but some code does it. We can't wait for […]
我目前正尝试在CentOS 7上将mod_wsgi 4.4.21安装到Apache 2.4的Python 3.5 web服务器上。 在“ 快速安装指南 ”中的“configuration源代码”中,它表示: 在某些Linux发行版(如SUSE和CentOS)上,必须使用“–with-apxs”选项并指定“/ usr / sbin / apxs2-worker”或“/ usr / sbin / apxs2-prefork” 。 据我所知,这些应该是与httpd-devel包。 我已经安装了: # rpm -qa | grep httpd httpd-tools-2.4.6-40.el7.centos.x86_64 httpd-manual-2.4.6-40.el7.centos.noarch httpd-2.4.6-40.el7.centos.x86_64 httpd-devel-2.4.6-40.el7.centos.x86_64 但是我在/usr/sbin没有apxs2-worker或apxs2-prefork : # ls /usr/sbin/apxs* ls: cannot access /usr/sbin/apxs*: No such file or directory 但是,我确实在/usr/bin有apxs 。 我可以使用那个,还是有什么我失踪?
我们有很多networking应用程序/网站。 有些相当复杂,但其中很多是简单的网站。 目前我们使用nginx和uwsgi在单个专用服务器上托pipe10个站点。 虽然这是非常符合成本效益和维护费用less(因为我们需要每10个站点维护1台服务器),但它有一些我不喜欢的问题包括: 升级 – 说如果我想升级Postgres我需要担心10个网站,以及他们的configuration。 这使任何依赖性升级以及操作系统升级非常危险和复杂。 Python 3 – 我需要升级一个项目到Python 3.虽然virtualenv可能允许我升级而不影响系统的其余部分,但我不确定非python依赖关系。 操作系统问题 – 有时会出现奇怪的操作系统问题。 如果说有一个网站正在运行,我可以使用负载平衡器将stream量路由到单独的服务器,并在此处修复问题。 现在有10个站点,这也耗费时间。 所以我正在考虑如何解决这些问题。 我正在考虑的几个选项。 AWS – 在不同的实例上运行复杂的应用程序,使用RDS作为数据库。 通过这种方式,我们也可以单独扩展(或扩展)应用程序,而无需担心其他应用程序。 简单的网站可以托pipe在EC2或任何其他服务器上,因为它们很简单,不需要定期更新。 使用Docker在当前专用服务器中托pipe这些应用程序/站点以避免上述问题。 我是docker工人,因此我不能完全确定是否能解决上述问题。 AWS和Docker托pipePythonnetworking应用的经验是什么? 你如何主办大量的应用程序/网站(我相信机构和自由职业者的典型案例)?
嗨,我有一个MySQL服务器,我需要通过VPN访问。 我使用MySQLdb包来访问Python中的MySQL服务器。 当我可以访问没有VPN的服务器,它工作正常,但是当我在某些地点,我需要通过VPN连接。 我的电脑连接到VPN,我可以通过PHPMyAdmin访问数据库,但MySQLdb给我一个错误信息:OperationalError:(2003,“无法连接到'MY_IP'(10061)”上的MySQL服务器) 任何想法,为什么它不工作? 谢谢
那么最近我一直在阅读有关不同的拒绝服务方法。 一种突出的方法是SYN泛滥。 我是一些不那么好的论坛的成员,有人卖了一个python脚本,它会使用带有伪造IP地址的SYN数据包来拒绝服务器。 但是,如果您向服务器发送了一个SYN数据包(具有欺骗IP地址),则目标服务器会将SYN / ACK数据包返回给被欺骗的主机。 在这种情况下,欺骗主机是不是会返回一个RST数据包,从而否定了75秒的等待,并最终尝试拒绝服务器?
我想通过与virtualenv的PuTTY安装MySQL-python。 眼镜。 *的CentOS-6.0 * python2.6的 所以我看了很多网站,我看到的最大的东西是python-dev,和python-devel(顺便说一句,我不知道区别)。 我无法安装这些,Sudo,yum,easy_install和pip是我所尝试过的。 我不是这个服务器的pipe理员,所以sudo和yum我不能执行。 我有pipe理员尝试安装到服务器分区。 python,我的virtualenv。 两人都说没有什么可做的。 这是我在尝试安装MySQL-python-1.2.3时得到的错误 _mysql.c:1928: error: â_mysql_ConnectionObjectâ has no member named âopenâ _mysql.c:1929: error: â_mysql_ConnectionObjectâ has no member named âconverterâ _mysql.c:1938: error: â_mysql_ResultObjectâ has no member named âresultâ _mysql.c: In function â_mysql_ConnectionObject_thread_idâ: _mysql.c:1967: error: â_mysql_ConnectionObjectâ has no member named âopenâ _mysql.c:1969: warning: implicit declaration of function âmysql_thread_idâ […]
试图使用Python的pyvirtualdisplay来启动一些虚拟Xvfb Xterminal的应用程序。 但是,我们已经看到端口冲突,并希望禁用使用TCP端口的Xvfb 。 我已经阅读了关于做这个非常相似的问题 ,但我不明白为了使用pyvirtualdisplay (或作为默认configuration,否则)应该为此设置此configuration。 任何帮助,将非常感激。 非常感谢!