小编Chr*_*row的帖子

cPickle - 忽略无法序列化而不是引发异常的内容

我正在使用cPickle序列化用于记录的数据.

我希望能够将任何我想要的东西扔进一个对象,然后序列化它.通常这很好cPickle,但只是遇到了一个问题,我要序列化的对象之一包含一个函数.这导致cPickle引发异常.

我宁愿cPickle只是跳过它无法处理的东西而不是导致整个过程崩溃.

实现这一目标的好方法是什么?

python pickle

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

在Linux(CentOS)的Python中获取负载或getloadavg()在较短的时间内获取负载

目前,我正在使用Python os.getloadavg()来了解服务器上的当前负载(Centos 6.3)

根据python文档,os.getloadavg()"返回在过去的1,5和15分钟内平均的系统运行队列中的进程数":

http://docs.python.org/2/library/os.html#os.getloadavg

os.getloadavg()
Return the number of processes in the system run queue averaged over the last 1, 5, and 15 minutes or raises OSError if the load average was unobtainable.

题:

  • 是否有可能在当前时刻获取系统运行队列中的进程数?
  • 如果没有,是否可以在较短的时间内获得平均值,例如最后5或10秒?

我问的原因是因为我得到了平均负载,然后如果它太高,就会杀死一些进程.这可能每分钟发生多次,因此我担心在1分钟平均值赶上之前会有太多进程被杀死.

谢谢!

python linux load

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

散列函数可以防止冲突,而不是攻击.(生成随机UUID大小的结果空间)

使用SHA1散列较大的字符串,以便它们可以用作数据库中的键.

尝试从原始字符串生成UUID大小的字符串,该字符串足够随机且足够大以防止冲突,但比原始字符串小得多.

不使用此安全相关的任何东西.

例:

# Take a very long string, hash it down to a smaller string behind the scenes and use
#     the hashed key as the data base primary key instead
def _get_database_key(very_long_key):
    return hashlib.sha1(very_long_key).digest()
Run Code Online (Sandbox Code Playgroud)

SHA1是一个很好的算法用于此目的吗?或者还有其他更合适的东西吗?

python hash sha1 hashlib

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

在GAE的大桌上,指数会以什么速度"爆炸"?

在GAE的大桌上,指数会以什么速度"爆炸"?

下面的文档摘录说明,对于集合值,索引可能会以指数方式"爆炸".

这是否意味着对于具有两个集合值的对象,第一个集合中的每个值子集都有一个索引条目,与第二个集合中的每个子集配对?或者每个可能的值对只有一个索引条目?

例:

实体:

widget:{
     mamas_list:         ['cookies', 'puppies']
     papas_list:         ['rain', 'sun']
    }
Run Code Online (Sandbox Code Playgroud)

第一个集合中每个值子集的索引条目与第二个集合中的每个子集配对:

cookies         rain
cookies puppies rain
cookies puppies rain sun
cookies         sun
cookies         rain sun
puppies         rain
puppies         sun
puppies         rain sun
Run Code Online (Sandbox Code Playgroud)

每个可能的值对只有一个索引条目:

cookies         rain
cookies         sun
puppies         rain
puppies         sun
Run Code Online (Sandbox Code Playgroud)

爆炸索引摘录:

资料来源:https://developers.google.com/appengine/docs/python/datastore/indexes#Index_Limits

对于同一属性可以具有多个值的实体需要为每个值指定单独的索引条目; 同样,如果可能值的数量很大,则这样的实体可以超过进入限制.

在具有多个属性的实体的情况下情况变得更糟,每个属性可以采用多个值.为了适应这样的实体,索引必须包含每个可能的属性值组合的条目.引用多个属性的自定义索引(每个属性具有多个值)可以组合"爆炸", 对于仅具有相对较少数量的可能属性值的实体需要大量条目.(取自: )

indexing google-app-engine bigtable

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

获得卡桑德拉的最新纪录

在卡桑德拉有一张约有2000万行的桌子.

该表按primary_key列排序,该列是一个字符串.我们使用'ByteOrderedPartitioner',因此行按列排序,primary_key而不是primary_key列的散列.

获得表中最后一条记录的好方法是什么?

非常感谢!

cassandra

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

Hadoop是否适合用作键值存储?

Hadoop是否适合以下用例:

  • 简单的键值存储(主要需要GETSET按键)
  • 非常小的"行"(32字节键值对)
  • 重删除
  • 重写
  • 按1亿到10亿个键值对的顺序
  • 大多数数据可以包含在SSD(固态驱动器)中而不是RAM中.

更多信息

我问的原因是因为我不断看到对Hadoop文件系统的引用,以及Hadoop如何被用作许多其他数据库实现的基础,这些实现不一定是为Map-Reduce设计的.

目前,我们将这些数据存储在Redis中.Redis表现很好,但由于它包含RAM中的所有数据,我们必须使用内存高达128GB的昂贵机器.相反,使用依赖SSD的系统会很好.这样我们就可以自由地构建更大的哈希表.

我们还使用Cassandra存储了这些数据,但如果删除变得太重,Cassandra会"破坏".

hadoop key-value-store

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

处理来自 WSGI 请求的文件

问题

处理通过 WSGI 请求上传的文件的好方法是什么POST

更多信息

到目前为止,我能够POST从 读取原始数据environ[wsgi.input]。此时我遇到的问题是与文件关联的信息和文件本身被挤在一起形成一个字符串:

'------WebKitFormBoundarymzmB1wyHKjyqZrDm
内容处置:表单数据;名称=“文件”;文件名=“新文件.wav”
内容类型:音频/wav

这就是内容
这就是内容
这就是内容
这就是内容
这就是内容

------WebKitFormBoundarymzmB1wyHKjyqZrDm--
'

我应该使用 python 中的库来更干净地处理信息吗?最终,我想获取文件内容,然后上传到 Amazon S3。

python post wsgi file-upload

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

从Child视图向Backbone.js或Marionette.js中的父Collection视图发送消息的好方法是什么?

什么是从儿童期在Backbone.js的或Marionettejs其父Collection视图发送消息的好方法吗?

通常我通过集合发送消息:

ChildView = Backbone.Marionette.ItemView.extend({
     send_message: function(){
          this.model.collection.trigger('some-message');
     }
})

ParentCollectionView = Backbone.Marionette.CollectionView.extend({
     // ON RENDER
     onRender: function(){
          this.listenTo(this.collection, 'some-message', this.do_something);
     }
     // DO SOMETHING
     do_something: function(){
          alert('did something');
     }
});
Run Code Online (Sandbox Code Playgroud)

我认为这不对,因为:

  • 我将子视图中的消息通过数据发送回父视图
  • 在这种情况下,消息与数据无关,它在视图之间的视图之间传递严格的消息
  • 该模型可以属于多个集合

相反,我想直接从子视图向其父集合视图发送消息.(实际上,我正在使用复合视图,不确定是否重要,但希望保持示例简单).

backbone.js marionette

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

如何使进程在远程Windows服务器上运行

我需要实现一个24/7远程Windows服务器上运行的后台进程.我的开发环境是C#/ ASP.NET 3.5.该过程的目的是:

  • 在适当的时间向员工和客户发送提醒电子邮件(例如,在安排工作的前一天下午5:00)
  • 当员工应该在工作岗位上时,查询并保存员工的GPS坐标,这样我以后就可以确认他们的位置是他们应该在的位置.

如果进程失败(它可能会失败,特别是在添加更新时),我需要立即(或在几分钟内)重新启动它,因为如果此进程无法发送通知,我会遇到非常严重的问题,日志GPS坐标,或其意图执行的任何其他任务.

c# asp.net multithreading process

4
推荐指数
2
解决办法
1767
查看次数

针对Java示例,教程和文档的Google应用引擎数据存储"低级api"?

有关如何使用Google App Engine数据存储区"低级Api"获取Java的示例,教程和更全面的文档的建议吗?

我知道这个基本文档页面存在,但它只是告诉我Api中的内容并没有说明如何实际使用它:http: //code.google.com/appengine/docs/java/javadoc/com/谷歌/应用服务引擎/ API /数据存储/包summary.html

谢谢!克里斯

google-app-engine

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