- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
嗨,我有一个使用 Celery Flask SqlAlchemy 的设置,但我间歇性地收到此错误:
(psycopg2.DatabaseError) SSL error: decryption failed or bad record mac
@task_postrun.connect
def close_session(*args, **kwargs):
# Flask SQLAlchemy will automatically create new sessions for you from
# a scoped session factory, given that we are maintaining the same app
# context, this ensures tasks have a fresh session (e.g. session errors
# won't propagate across tasks)
d.session.remove()
@task_prerun.connect
def on_task_init(*args, **kwargs):
d.engine.dispose()
最佳答案
这是我的评论以及其他信息:
I use Celery, SQLAlchemy and PostgreSQL on AWS and there is no such problem. The only difference I can think of is that I have the database on RDS. I think you can try switching to RDS temporary, just to test if the issue will be still present or not. If it disappered with RDS then you'll need to look into PostgreSQL settings.
ssl = 1, Enables SSL connections.
ssl_ca_file = /rdsdbdata/rds-metadata/ca-cert.pem
ssl_cert_file = /rdsdbdata/rds-metadata/server-cert.pem
ssl_ciphers = false, Sets the list of allowed SSL ciphers.
ssl_key_file = /rdsdbdata/rds-metadata/server-key.pem
ssl_renegotiation_limit = 0, integer, (kB) Set the amount of traffic to send and receive before renegotiating the encryption keys.
from sqlalchemy.orm import scoped_session
from sqlalchemy.orm import sessionmaker
import sqldb
engine = sqldb.get_engine()
cached_data = None
def do_the_work():
global engine, ruckus_data
if cached_data is not None:
return cached_data
db_session = None
try:
db_session = scoped_session(sessionmaker(
autocommit=False, autoflush=False, bind=engine))
data = sqldb.get_session().query(
sqldb.system.MyModel).filter_by(
my_type = sqldb.system.MyModel.TYPEA).all()
cached_data = {}
for row in data:
... # put row into cached_data
finally:
if db_session is not None:
db_session.remove()
return cached_data
do_the_work
然后从 celery 任务中调用函数。
sqldb.get_engine
看起来像这样:
from sqlalchemy import create_engine
_engine = None
def get_engine():
global _engine
if _engine:
return _engine
_engine = create_engine(config.SQL_DB_URL, echo=config.SQL_DB_ECHO)
return _engine
SQL_DB_URL = 'postgresql+psycopg2://%s:%s@%s/%s' % (
POSTGRES_USER, POSTGRES_PASSWORD, POSTGRES_HOST, POSTGRES_DB_NAME)
SQL_DB_ECHO = False
关于python-2.7 - celery , flask sqlalchemy : DatabaseError: (DatabaseError) SSL error: decryption failed or bad record mac,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36190763/
recorder = new MediaRecorder(); recorder.setAudioSource(MediaRecorder.AudioSource.VOICE_CALL
在我的表中,我有四列。 r_id id(用户 ID) v_id(公司 ID) 率 我所做的就是从用户那里对公司(v_id)进行评分。 假设,如果用户一对第一家公司(v_id)进行评分,那么当同一用户对
我的表中有 10 条记录,当我删除记录 5 并创建新记录时,新记录将取代已删除的记录,如下所示: 在删除之前记录其ID: 1个2个3个4个5个6个78个910 删除记录 5 并插入新记录后,id 为
我有两个 belongsToMany 模型: const apptsModel = db.define('Appts', { id: {type: Sequelize.INTEGER, pri
有没有办法在 iOS Playground 上使用录音机?运行时,它会询问我是否允许使用我的麦克风,并且录音机实例似乎可以正常工作,但是,我无法使用 record() 函数。我当前的环境是 iOS 1
我有 2 个表,状态表与配置文件表相连。 Profile 表存储唯一的 tagId,status 表存储多个重复的 tagid 条目。我想按tagid的最后一条记录和第一条记录分组显示。 表:简介注意
我是 的新手 typescript 我需要遍历 Record键入对值进行一些更新并返回 Record . 这是定义类型的方式: type Parent = Readonly>; type Childr
我发现在开发 extjs 应用程序(拉力赛应用程序)时,有时我需要从记录中获取的数据在 record.raw 中而不是在 record.data 中。两者有什么区别,为什么会这样? 编辑 - 添加示例
我需要交叉引用 2 个表。 在 tb1 中是 booking_ref,投资者 在 tb2 中是 booking_ref、investor、cost 麻烦的是如果没有成本,表2中没有记录 所以我有以下查
鉴于:我在 Kafka 中有两个主题,假设主题 A 和主题 B。Kafka Stream 从主题 A 读取记录,处理它并生成与消费记录相对应的多条记录(假设记录 A 和记录 B)。现在,问题是如何使用
我有一个包含 6 个元素的排序数组列表。前 5 个元素有一些值,第 6 个元素为空。 我想循环遍历这个ArrayList,并将第一个记录的前5个元素与下一个记录中的相同元素进行比较。如果任一元素不同,
我有一个包含 3 列的表:ID、Name、ParentID。 如何删除特定记录及其所有子记录(n 层深)? 使用 Entity Framework 3.5。 最佳答案 表是自引用的是应用程序逻辑,它没
获取记录时如何获取最新的记录? 例如: 第一次迭代我用对象名称 Country 保存“Singapore”, 第二次迭代我用对象名称 Country,second 保存“USA” 现在当我获取它的时候
我将使用 C# 和 Xamarin 制作的 iOS 应用重写到 Swift,原因很明显是 Xamarin 的定价和低文档。正在关注this tutorial因为在我的 UITableView 上包含一
假设我有一个线束二进制文件,它可以根据命令行选项产生不同的基准。我对采样这些基准非常感兴趣。 我有3个选择: 更改线束二进制文件以生成一个“性能记录”子进程,该子进程运行基准测试并进行采样 只需执行“
什么 SQL 查询会按名称查找记录,以及具有相同地址但可能不同名称的所有记录? 我有一个选民登记数据库,当我查找个人时,我还想看看还有谁在该地址登记。 我的数据库称为 voters,其中的表称为 ex
我在我的 mac 上设置了一个 Tsung 配置,并尝试在我正在开发的网站上记录一个测试。 我跑了:“tsung-recorder start”并在 firefox localhost:8090 中为
我需要将 JOOQ 的记录结果集转换为表记录列表。有什么方法可以做到吗? 最佳答案 是的,您可以使用 Result.into(Table) .一个例子: Result result = create.
我正在尝试将 CKReference 添加到云工具包中的记录,但尝试不断触发“服务记录已更改”。从我的 println 显示的控制台消息(下面的控制台消息和代码), 我正在上传带有 0 个引用的记录,
我有两个类:Artist 和 Instrument。每个 Artist 可以演奏一个或多个 Instrument。每个 Instrument 可以分配给一个或多个 Artist。所以,我设置了以下类:
我是一名优秀的程序员,十分优秀!