小编Raf*_*afa的帖子

什么是在Mac OS X上停止mongod的干净方法?

我正在运行mongo 1.8.2并试图看看如何在Mac上干净利落地关闭它.

在我们的ubuntu服务器上,我可以从mongo shell干净地关闭mongo:

> use admin
> db.shutdownServer()
Run Code Online (Sandbox Code Playgroud)

但在我的Mac上,它并没有杀死mongod进程.输出显示它'应该'关闭但是当我ps -ef |时 grep mongo它向我展示了一个活跃的过程.另外,我仍然可以打开一个mongo shell并查询我的dbs,就像它从未关闭一样.

我的db.shutdownServer()本地输出是:

MongoDB shell version: 1.8.2
connecting to: test
> use admin                  
switched to db admin
> db.shutdownServer()
Tue Dec 13 11:44:21 DBClientCursor::init call() failed
Tue Dec 13 11:44:21 query failed : admin.$cmd { shutdown: 1.0 } to: 127.0.0.1
server should be down...
Tue Dec 13 11:44:21 trying reconnect to 127.0.0.1
Tue Dec 13 11:44:21 reconnect 127.0.0.1 failed couldn't connect to server 127.0.0.1
Tue Dec 13 …
Run Code Online (Sandbox Code Playgroud)

macos launchd mongodb

73
推荐指数
5
解决办法
9万
查看次数

获取lxml中标记内的所有文本

我想编写一个代码片段,它将<content>在下面所有三个实例(包括代码标记)中的lxml中获取标记内的所有文本.我已经尝试了tostring(getchildren())但是会遗漏标签之间的文字.我没有太多运气在API中搜索相关功能.你能救我吗?

<!--1-->
<content>
<div>Text inside tag</div>
</content>
#should return "<div>Text inside tag</div>

<!--2-->
<content>
Text with no tag
</content>
#should return "Text with no tag"


<!--3-->
<content>
Text outside tag <div>Text inside tag</div>
</content>
#should return "Text outside tag <div>Text inside tag</div>"
Run Code Online (Sandbox Code Playgroud)

python parsing lxml

64
推荐指数
8
解决办法
8万
查看次数

MongoDB作为队列服务?

我很想听到有关MongoDB作为队列服务的真实应用程序体验的更多信息,如果您为此目的使用MongoDB,您可以分享您的想法,以及它的使用环境吗?

social queue mongodb web

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

如何在页面上多次嵌入相同的redux-form?

我试图在一个页面上嵌入多个表单时遇到问题.我注意到configForm执行一次,即使页面上有多个表单,这也就是我无法动态生成不同表单名称的原因.

截图显示绑定在一起多个文本字段.

function configForm(){
  const uuid = UUID.generate();

  const config = {
    form:`AddCardForm_${uuid}`,
    fields:['text'],
    validate:validate
  }

  return config;
}

export default reduxForm(configForm(), mapStateToProps, {togglePanelEditMode, addCardToPanel})(CardFormContainer);
Run Code Online (Sandbox Code Playgroud)

如何添加表单以使它们彼此独立?

reactjs redux redux-form

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

Python:默认的dict键,以避免KeyError

相当新的python,新手开发人员,第一次来电

我正在调用一些JSON并将相关数据解析为csv.我无法弄清楚如何使用默认密钥填充中间json Dict文件,因为许多都是未填充的.结果是KeyError,因为我试图将内容解析为csv.会喜欢任何建议!

谢谢.

更新:谢谢大家!我现在收到(制造商)的'NoneType'错误:

import urllib2, json, csv, sys, os, codecs, re

from collections import defaultdict

output = 'bb.csv'

csv_writer = csv.writer(open(output, 'w'))

header = ['sku', 'name', 'description', 'image', 'manufacturer', 'upc', 'department', 'class', 'subclass']

csv_writer.writerow(header)

i=1

while i<101:
    print i

    bb_url = urllib2.Request("http://api.remix.bestbuy.com/v1/products(sku=*)?show=sku,name,description,image,manufacturer,upc,department,class,subclass&format=json&sort=sku.asc&page=" + str(i) + "&pageSize=100&apiKey=*****************")
    bb_json = json.load(urllib2.urlopen(bb_url))

    print bb_json

    for product in bb_json['products']:
        row = []

        row.append(product['sku'])
        if product['name']:
            row.append(str((product['name']).encode('utf-8')))
        else:
            row.append("")
        row.append(str(product.get('description',"")))
        row.append(str(product['image'])+ " ")
        if product['name']:
            row.append(str(product.get('manufacturer',"").encode('utf-8')))
        else:
            row.append("")
        row.append(str(product.get('upc','').encode('utf-8')))
        row.append(str((product['department']).encode('utf-8')))
        row.append(str((product['class']).encode('utf-8')))
        row.append(str((product['subclass']).encode('utf-8')))

        csv_writer.writerow(row) …
Run Code Online (Sandbox Code Playgroud)

python csv json dictionary keyerror

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

使用带有大型int的cython时会发生溢出错误

python 3.4,windows 10,cython 0.21.1

我正在使用cython将此函数编译为c

def weakchecksum(data):
   """
   Generates a weak checksum from an iterable set of bytes.
   """
   cdef long a, b, l
   a = b = 0
   l = len(data)
   for i in range(l):
       a += data[i]
       b += (l - i)*data[i]

   return (b << 16) | a, a, b
Run Code Online (Sandbox Code Playgroud)

产生此错误:"OverflowError:Python int太大而无法转换为C long"

我也尝试将它们声明为unsigned longs.我用什么类型来处理非常大的数字?如果它对于交流时间太大有任何解决方法吗?

python cython python-3.x

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

使用boto过滤ec2-instances

我使用标签来跟踪我的EC2实例,例如(项目,环境).我有一个用例,我只需要过滤那些属于特定项目和特定环境的实例.

当我使用带有boto的过滤器并传递这两个值时,我得到的结果是OR而不是过滤器的AND,所以我收到属于不同项目但是环境相同的实例列表.

现在我可以使用两个列表,然后比较每个列表中的实例并获得所需的实例集,但有没有更好的方法来完成此操作?

这是我在做的事情:

conn = ec2.EC2Connection('us-east-1',aws_access_key_id='XXX',aws_secret_access_key='YYY')
reservations = conn.get_all_instances(filters={"tag-key":"project","tag-value":<project-name>,"tag-key":"env","tag-value":<env-name>})
instances = [i for r in reservations for i in r.instances]
Run Code Online (Sandbox Code Playgroud)

现在,我获取的实例列表给出了指定项目中的所有实例,而不管环境和指定环境中的所有实例,无论项目如何.

boto amazon-web-services

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

MongoDb热备份 - 使用fsyncLock复制数据/ db VS replicaset

我读到了不用停机时间进行备份的不同MongoDB设置.哪种策略最好或甚至可以比较?

  1. 启用日记功能并简单地复制/data/db目录 - 我不清楚这是否足够 - 在MongoDB主页上它指出你必须"快照它"并且它在SAN和LVM上工作为例.

    问题:

    快照在此上下文中的含义是复制命令计为快照吗?是否可以使用NTFS在Windows服务器上复制日记MongoDB(2.0+)数据目录?您如何确保在您自己的文件系统和设置上安全?

  2. 建立具有2个服务器和仲裁器的副本集.然后使用rs.status()fsyncLock/解锁以确保在备份时只在辅助服务器上读取数据.

    > db.fsyncLock
    function () {
        return db.adminCommand({fsync:1, lock:true});
    }
    > db.fsyncUnlock
    function () {
        return db.getSiblingDB("admin").$cmd.sys.unlock.findOne();
    }
    
    Run Code Online (Sandbox Code Playgroud)

    问题:

    如果您在副本集中使用锁,那么似乎可以为整个副本集锁定写入和读取,并且此错误尚未修复?

    如果在备份进行过程中将辅助设备投票为主设备怎么办?备份过程是否会停止,或者副本集是否会停止响应写入请求,直到它被解锁?

    注意事项:

    现在我想要简单的解决方案,只需使用日志文件复制data/ db目录并等待副本集.MongoDB在64位Windows服务器(RackSpace Cloud)上运行.

database-backups mongodb

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

Slack频道ID是否在团队中是唯一的?

Slack 频道//im/mpim id在不同的团队中是唯一的吗?换句话说,两个团队可以拥有相同ID的频道吗?

我阅读了在Google上搜索过的文档,在这里搜索了SO,但是如果频道ID是唯一的,则无法确认.

slack-api slack

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

Python - 了解生成器的发送功能

我正在用Python学习,yield发现这yield不仅是生成器输出返回值的方式,而且是将值放入生成器的方法.例如以下代码

def f():
    print (yield),
    print 0,
    print (yield),
    print 1

g = f()
g.send(None)
g.send('x')
g.send('y')
Run Code Online (Sandbox Code Playgroud)

在全球范围内,它send是值'x','y'发电机,因此f它将输出x 0 y 1.但我无法理解

  • 有2 yield秒但3 send秒.为什么要None在第一时间发送?
  • StopIteration最后抛出一个send.有什么方法可以避免这种异常吗?

有人可以解释一下吗?提前致谢.

python yield generator yield-keyword

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