小编Mua*_*tik的帖子

pymongo集合对象序列化__getnewargs__方法

当我尝试用芹菜运行我的任务时,Pymongo集合对象失败.我想它无法序列化它.我该怎么办?顺便说一句,我尝试泡菜,但它并没有帮助我.

PS:我不想将全局数据库导入到此模块.

'Collection'对象不可调用.如果你想调用' getnewargs '方法....

示例代码如下. module.py

from celery.contrib.methods import task_method



class Some_Class(object):
    """docstring for Some_Class"""
    def __init__(self, db):
        super(Some_Class, self).__init__()
        self.db = db  # This object causes 'Collection' object is not callable
        #db is a pymongo collection object from db.py


    @app.task(filter=task_method)  # Celery task
    def add(self):
        """
        db.insert({'some_key':'some_value'})
        """
        return 3
Run Code Online (Sandbox Code Playgroud)

db.py

from pymongo import MongoClient    
db = MongoClient()['test']['collection']
Run Code Online (Sandbox Code Playgroud)

python serialization pickle celery pymongo

7
推荐指数
1
解决办法
361
查看次数

为 mongo 客户端设置默认主机地址

每次连接远程mongodb服务器,都需要写mongo服务器的主机地址。

在我的情况下,我只连接一个远程 mongo。那么,有没有办法设置默认服务器地址,从而可以在每次不传递主机参数的情况下进行连接?

mongodb

5
推荐指数
1
解决办法
1661
查看次数

使用 Flask 的 socketio 扩展从线程发射

我想向套接字客户端发出延迟消息。例如,当一个新客户端连接时,应该向客户端发出“检查开始”消息,并且在特定秒后应该从线程发出另一条消息。

@socket.on('doSomething', namespace='/test')
def onDoSomething(data):
  t = threading.Timer(4, checkSomeResources)
  t.start()
  emit('doingSomething', 'checking is started')

def checkSomeResources()
  # ...
  # some work which takes several seconds comes here
  # ...
  emit('doingSomething', 'checking is done')
Run Code Online (Sandbox Code Playgroud)

但是由于上下文问题,代码不起作用。我得到

RuntimeError('working outside of request context')
Run Code Online (Sandbox Code Playgroud)

是否可以从线程发出?

python multithreading flask socket.io flask-socketio

5
推荐指数
1
解决办法
2643
查看次数

在Python中实现高斯过程回归y(n_samples,n_targets)

我正在研究x = day1,day2,day3等的一些价格数据.在第1天,我已经说过15个价格点(y),第2天,我有30个价格点(y2),依此类推.

当我读到高斯过程回归的文档: http://scikit-learn.org/stable/modules/generated/sklearn.gaussian_process.GaussianProcess.html#sklearn.gaussian_process.GaussianProcess.fit

y是形状(n_samples,n_targets),其中包含要预测的输出的观察结果.

我假设n_targets是指我每天观察到的所有价格点.但是,每天的价格点数不一样.我想知道如何处理这样的案件?

非常感谢!

python machine-learning gaussian

5
推荐指数
1
解决办法
4162
查看次数

使用rest客户端的Elasticsearch批量插入

为了提高性能,我希望将文档批量发送到Elasticsearch,而不是一个一个地发送.我在https://www.elastic.co/guide/en/elasticsearch/client/java-api/current/java-docs-bulk.html上阅读了弹性批量API

但是,我使用Elasticsearch rest-client(https://www.elastic.co/guide/en/elasticsearch/client/java-rest/current/index.html),找不到任何有关如何使用的示例或文档制作批量插入物.我能找到的只是通过传输客户端的批量请求.

我想我必须准备这里描述的请求主体(https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-bulk.html)并将其传递给restclient的performRequest方法?有没有其他方法,例如,ES java rest-client库中的构建器机制,使用rest进行批量插入?

java rest elasticsearch

5
推荐指数
1
解决办法
9339
查看次数

spring-boot执行器健康检查事件

是否可以监听健康检查指标之一发生变化时发出的事件?这样我就可以参与ApplicationListener此类活动吗?

java spring-boot spring-boot-actuator

5
推荐指数
1
解决办法
1156
查看次数

在flask socket.io中获取客户端的套接字ID

有没有办法获得当前客户端的套接字ID?我已经看到有可能在node.js中获取套接字ID.但似乎flask的socket.io扩展与node的socketio略有不同.

python flask socket.io

3
推荐指数
3
解决办法
4544
查看次数

过滤列上的numpy矩阵

我有一个numpy矩阵如下:

data = np.matrix(
      "5 3 1;"
      "4 4 1;"
      "6 4 1;"
      "8 2 1;"
      "3 5 1;"
      "1 7 1;"
      "5 4 1;"
      "0 1 0;"
      "2 0 0")
# Output:
matrix([[5, 3, 1],
    [4, 4, 1],
    [6, 4, 1],
    [8, 2, 1],
    [3, 5, 1],
    [1, 7, 1],
    [5, 4, 1],
    [0, 1, 0],
    [2, 0, 0]])
Run Code Online (Sandbox Code Playgroud)

我想要的是过滤第三列的矩阵,其值为1; 也就是说,我不想得到第3个值为0的行.总之,我想提取下面的矩阵:

matrix([[5, 3, 1],
    [4, 4, 1],
    [6, 4, 1],
    [8, 2, 1],
    [3, 5, 1],
    [1, 7, 1], …
Run Code Online (Sandbox Code Playgroud)

python numpy matrix

3
推荐指数
1
解决办法
8076
查看次数

从 Flask 的 socketio 获取用户代理信息

是否可以从烧瓶中的 socketio 获取用户代理信息?我猜用户相关信息会在握手期间发送到套接字服务器。

如果不可能,我将要求客户手动发送此信息。

python websocket flask socket.io flask-socketio

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

普罗米修斯检查是否存在指标

我有基于指标的警报,就我而言,有时可能会消失。假设指标为up(env=prod)up(env=staging)。我有一个基于该指标值的警报。现在,如果up(env='staging')不存在,我想触发另一个警报。我可以对指标求和,env然后查看其值,但它不能告诉我缺少哪个env。

prometheus

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

如何在编辑远程文件时使vim的命令无声

当我使用e scp://...命令编辑远程文件时,我需要在每个命令后按任意键,这让我感到沮丧.

例如,当我点击w保存文件时,会显示消息"按enter或键入命令以继续".任何成功命令后我都不希望看到任何消息.

我试图映射命令以使它们保持沉默,但它不起作用.

vim scp

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

Jenkins管道条件分支构建

使用multibranch管道我想触发一个稍微不同的构建和部署过程,具体取决于哪个git分支触发了构建.

我能想到的两种方法是:1)在每个分支中使用不同的jenkins文件2)在jenkins文件中使用一系列{branch'X'}块

第一种方法意味着在合并分支时我需要小心,我知道我会忘记在某些时候.

第二种方法非常混乱,但确实意味着我只能使用一个Jenkins文件.

我无法相信没有比这两种方法更好的方法.

continuous-integration jenkins jenkins-pipeline

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