小编frn*_*sys的帖子

uWSGI,Flask,sqlalchemy和postgres:SSL错误:解密失败或错误记录mac

我正在尝试使用uWSGI + Nginx设置应用程序webserver,它使用SQLAlchemy运行Flask应用程序与Postgres数据库进行通信.

当我向Web服务器发出请求时,每个其他响应都将是500错误.

错误是:

Traceback (most recent call last):
  File "/var/env/argos/lib/python3.3/site-packages/sqlalchemy/engine/base.py", line 867, in _execute_context
    context)
  File "/var/env/argos/lib/python3.3/site-packages/sqlalchemy/engine/default.py", line 388, in do_execute
    cursor.execute(statement, parameters)
psycopg2.OperationalError: SSL error: decryption failed or bad record mac


The above exception was the direct cause of the following exception:

sqlalchemy.exc.OperationalError: (OperationalError) SSL error: decryption failed or bad record mac
Run Code Online (Sandbox Code Playgroud)

该错误由一个简单的Flask-SQLAlchemy方法触发:

result = models.Event.query.get(id)
Run Code Online (Sandbox Code Playgroud)

uwsgi正在管理supervisor,有一个配置:

[program:my_app]
command=/usr/bin/uwsgi --ini /etc/uwsgi/apps-enabled/myapp.ini --catch-exceptions
directory=/path/to/my/app
stopsignal=QUIT
autostart=true
autorestart=true
Run Code Online (Sandbox Code Playgroud)

uwsgi配置看起来像:

[uwsgi]
socket = …
Run Code Online (Sandbox Code Playgroud)

postgresql sqlalchemy nginx flask uwsgi

36
推荐指数
2
解决办法
1万
查看次数

测试Flask登录和身份验证?

我正在开发Flask应用程序并使用Flask-security进行用户身份验证(后面又使用Flask-login).

我有一条需要认证的路线/user.我正在尝试编写一个单元测试来测试,对于经过身份验证的用户,这会返回相应的响应.

在我的unittest中,我正在创建一个用户并以该用户身份登录:

from unittest import TestCase
from app import app, db
from models import User
from flask_security.utils import login_user

class UserTest(TestCase):
   def setUp(self):
       self.app = app
       self.client = self.app.test_client()
       self._ctx = self.app.test_request_context()
       self._ctx.push()

       db.create_all()

   def tearDown(self):
       if self._ctx is not None:
           self._ctx.pop()

       db.session.remove()
       db.drop_all()

   def test_user_authentication():
       # (the test case is within a test request context)
       user = User(active=True)
       db.session.add(user)
       db.session.commit()
       login_user(user)

       # current_user here is the user
       print(current_user)

       # current_user within this request is an anonymous …
Run Code Online (Sandbox Code Playgroud)

python unit-testing flask flask-login flask-security

15
推荐指数
3
解决办法
2万
查看次数

GridSearchCV 如何用于聚类(MeanShift 或 DBSCAN)?

我正在尝试使用scikit-learn. 我正在尝试 DBSCAN 和 MeanShift 并想确定哪些超参数(例如bandwidth对于 MeanShift 和epsDBSCAN)最适合我正在使用的数据类型(新闻文章)。

我有一些由预先标记的集群组成的测试数据。我一直在尝试使用scikit-learn'sGridSearchCV但不明白在这种情况下如何(或是否可以)应用,因为它需要拆分测试数据,但我想对整个数据集进行评估并比较结果到预先标记的数据。

我一直在尝试指定一个评分函数,将估计器的标签与真实标签进行比较,但当然它不起作用,因为只有数据样本被聚类,而不是全部。

这里有什么合适的方法?

cluster-analysis scikit-learn flutter

8
推荐指数
2
解决办法
7600
查看次数

使用Ansible自动配置AWS自动缩放组实例

我正在使用Amazon Web Services在Elastic Load Balancer后面创建一个自动缩放的应用程序实例组.我正在使用CloudFormation模板来创建自动扩展组+负载均衡器,并且一直使用Ansible来配置其他实例.

我无法解决如何设计问题,以便在新的自动调节实例出现时,它们可以由Ansible自动配置(也就是说,我无需找到新实例的主机名并为其运行Ansible).我查看了Ansible的ansible-pull功能,但我不太清楚我是否理解如何使用它.它需要一个中央git存储库,它可以处理,但是你如何处理你不想提交的敏感信息?

此外,我使用Ansible与AWS的当前方式是使用CloudFormation模板创建堆栈,然后我将主机名作为堆栈的输出,然后为Ansible生成要使用的主机文件.这感觉不太对 - 这是"最佳实践"吗?

deployment amazon-web-services aws-cloudformation autoscaling ansible

6
推荐指数
1
解决办法
3565
查看次数

Windows 相当于在 Python 3 中生成和杀死单独的进程组?

我有一个网络服务器,需要管理一个单独的多进程子进程(即启动它并终止它)。

对于基于 Unix 的系统,以下方法可以正常工作:

# save the pid as `pid`
ps = subprocess.Popen(cmd, preexec_fn=os.setsid)

# elsewhere:
os.killpg(os.getpgid(pid), signal.SIGTERM)
Run Code Online (Sandbox Code Playgroud)

我这样做是os.setsid因为否则杀死进度组也会杀死网络服务器。

在 Windows 上这些os功能不可用——所以如果我想在 Windows 上完成类似的事情,我该怎么做呢?

我正在使用Python 3.5。

python windows python-3.5

4
推荐指数
1
解决办法
4749
查看次数

SQLAlchemy 中的多态所属关系?

我正在使用 Rails 项目中的数据库,并尝试在其上构建 Flask 应用程序。

那里有一些多态关联,我无法弄清楚如何使用 Flask-SQLAlchemy 进行复制。

例如,有一个“照片”模式具有的属性idurlphotoable_idphotoable_type,它可能属于一个ArtistOrganization或一个Event。在我拥有的数据库中ArtistOrganization、 和Event表没有对照片的引用。

我在 SQLAlchemy 中找到了这种用于多态关联的方法,但它需要创建一个关联表 - 有没有办法按原样使用模式来实现?

python sqlalchemy flask-sqlalchemy

2
推荐指数
1
解决办法
1110
查看次数