小编Sud*_*han的帖子

检查对象是否存在的最快方法

我正在使用带有Objectify的GAE/Java,并且我正在尝试找到检查数据存储区中是否存在给定对象的最快方法.我在做什么,现在是.get(key)@Cached,但无论哪种方式,仍然检索整个对象,这是不必要的.

关于如何使用索引执行此操作的任何想法只会命中?我还想到了一个只有密钥的查询,但我看到(在系统状态仪表板上)延迟远远超过了get.

google-app-engine objectify google-cloud-datastore

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

在我的python项目中使用自定义包

我现在正在python中做一些项目,我正在试图弄清楚如何使用我自己版本的现有开源软件包.

例如,我正在使用tipcy和zc.buildout,我已经添加了'paypal'包.不幸的是它没有我需要的功能,所以我在github上分叉并添加了该功能.我将向原始软件包维护者发送一个pull请求,但是他们是否接受我的添加,我想使用我的软件包版本并保持zc.buildout管理我的依赖项的便利性.我该怎么做呢?

我是否将我自己的库上传到PyPI并用我的名字加上前缀?这不会不必要地污染指数吗?

或者我应该制作和维护自己的索引和包装回购?我在哪里可以找到这种格式?是否违反OSS许可条款以使用相同名称的修改包托管我自己的仓库?(我宁愿不用新的命名空间修改项目中的每个文件)

我确定这个问题出现了很多,而不仅仅是python.我可以看到Maven和SBT也发生这种情况......当人们想要使用他们自己版本的流行软件包时,他们通常会做些什么?

python buildout pypi tipfy

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

发布新的Github OAUTH令牌会过期吗?

我有一个完全用Javascript编写的应用程序,它广泛使用Github API.问题是如果你在两个浏览器(比如Chrome和Firefox)中打开它并以同一个用户身份登录,第二个浏览器的OAUTH令牌现在变成最新的令牌 - 第一个浏览器中的令牌立即停止工作.

这是预期的行为吗?即使在为用户发布新令牌后,是否可以让令牌继续存在?或者,我是否需要在服务器上为每个用户提供某种令牌存储,并将最新令牌拉/推送给所有当前客户端?

换句话说,为单个应用程序的多个客户端维护OAuth令牌的最佳方法是什么?

oauth github github-api

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

在Amazon OpsWorks上使用Ruby 2.0

我想在Amazon OpsWorks上使用Ruby 2.0,所以我正在尝试以下方法:

但这似乎没有任何影响.

  • 定制烹饪书是否覆盖了他们的内置对应物?
  • OpsWorks是否使用菜谱中的Ruby配方进行基本的Ruby设置?
  • 同样的问题也适用于Nginx - 我可以通过更改我的食谱叉来控制版本和设置吗?

ruby amazon-web-services chef-infra chef-solo aws-opsworks

5
推荐指数
2
解决办法
2043
查看次数

当点实例终止时,ELB连接耗尽是否适用?

最近宣布了新的AWS ELB功能,连接耗尽.

http://aws.amazon.com/about-aws/whats-new/2014/03/20/elastic-load-balancing-supports-connection-draining/

显然,这适用于Auto Scaling Groups - 实例在被删除之前已经耗尽,但这是否也适用于由于现货价格上涨而被AWS终止的现货实例?

amazon-ec2 amazon-web-services amazon-elb autoscaling

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

如何设置架构级默认引擎?[MySQL的]

我正在尝试为我的每个MySQL模式设置一个默认数据库引擎,但我似乎无法找到如何做到这一点.

我知道可以在表级别和配置文件中指定引擎 --default-storage-engine=type,但是没有办法在架构级别设置它吗?

mysql schema

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

使用Rails 3.1和Unicorn在Heroku上进行HTTP流式传输

受到HTTP Streaming上RailsCast的启发,我决定在我的服务器上打开它.但是,listen 3000 :tcp_nopush => falseRyan建议添加到我的线路unicorn.rb并不适合Heroku(它们不允许您指定端口).Heroku是否支持流媒体,如何启用它?

heroku unicorn http-streaming ruby-on-rails-3.1

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

HSM解密+加密链接

我的应用程序充当交换机,在两方之间传输非常敏感的消息,我试图弄清楚如何在不“查看”他们试图发送的消息的情况下做到这一点。

我有一个 HSM,并且我已经为发送者生成了一个密钥对 - 他们将使用我提供给他们的公钥来加密消息,而我可以使用 HSM 中的私钥来解密消息。

然后,我将通过使用我拥有的最终接收者的公钥对其进行加密来传递该消息。

有没有什么方法可以在 HSM 内链接这两个操作,而不会将解密的消息放在我的应用程序内存附近?我希望明文内容永远不会离开 HSM 的边界。

我知道某些 HSM 具有 CodeSafe / SEE 机器功能,可让我编写嵌入式系统代码并在 HSM 内运行它,在我开始讨论之前,我想看看是否有办法使用通用 PKCS / JCE / CNG API安全地做到这一点。

encryption jce pkcs#11 hsm cng

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

创建对象会使VM更快吗?

看看这段代码:

MessageParser parser = new MessageParser();
for (int i = 0; i < 10000; i++) {
    parser.parse(plainMessage, user);
}
Run Code Online (Sandbox Code Playgroud)

出于某种原因,它运行SLOWER(大约100ms)

for (int i = 0; i < 10000; i++) {
    MessageParser parser = new MessageParser();
    parser.parse(plainMessage, user);
}
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?测试重复了很多次,所以它不仅仅是随机的.如何创建一个对象10000次比创建一次快?

java algorithm optimization creation object

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

这个Go闭包的例子如何运作?

我正在读一本(非常好的)Go书并看到了这个例子,但我看不出它是如何工作的.

func makeEvenGenerator() func() uint {
    i := uint(0)
    return func() (ret uint) {
        ret = i
        i += 2
        return
    }
}
func main() {
    nextEven := makeEvenGenerator()
    fmt.Println(nextEven()) // 0
    fmt.Println(nextEven()) // 2
    fmt.Println(nextEven()) // 4
}
Run Code Online (Sandbox Code Playgroud)

增量i是常见的关闭行为.没关系.但是如果你看一下nextEven,它是一个不带参数的函数并返回一个uint被调用的函数ret.但是命名返回值的重点是什么?调用它的任何代码都不会使用自己的变量名吗?

并且return语句什么都不返回 - 所以什么被打印?0/2/4如何从这个功能出来?

这与此有何不同:

func makeEvenGenerator() func() uint {
    i := uint(0)
    return func() uint {
        current := i
        i += 2
        return current
    }
}
Run Code Online (Sandbox Code Playgroud)

这似乎更简单,使事情更加明显.我缺少一些深入的围棋/数学概念吗?

closures go

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

检查 Postgres 数组中是否存在任何给定的值数组

我正在编写一个 Rails 4 应用程序,并且在我的一个名为 的模型上有一个字符串数组列identifiers。当用户传入标识符列表时,获取任何给定标识符与任何存储的标识符匹配的行的语法是什么?

我正在尝试where('ARRAY[?] == any(identifiers)', ids),但这似乎不起作用。

arrays postgresql ruby-on-rails ruby-on-rails-4

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

如何在Python中以非标准方式组合两个列表

我有以下两个列表:

a = ['A-B', 'A-D', 'B-C', 'B-D', 'B-E', 'C-E', 'D-E', 'D-F', 'E-F', 'E-G', 'F-G']
b = ['7', '5', '8', '9', '7', '5', '15', '6', '8', '9', 11]
Run Code Online (Sandbox Code Playgroud)

我想将这些列表转换为如下所示:

[ ("A", "B", 7), ("A", "D", 5), ("B", "C", 8), ("B", "D", 9), ("B", "E", 7), ("C", "E", 5), ("D", "E", 15), ("D", "F", 6), ("E", "F", 8), ("E", "G", 9), ("F", "G", 11)]
Run Code Online (Sandbox Code Playgroud)

问题是第一个列表需要拆分并合并到第二个列表中,以元组作为输出.什么是pythonic方式呢?

python list

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