标签: shared-nothing

Rails是否共享 - 或者可以将请求分开访问相同的运行时变量?

PHP在无共享环境中运行,在这种情况下,这意味着每个Web请求都在一个干净的环境中运行.除了通过单独的持久层(文件系统,数据库等)之外,您无法访问其他请求的数据.

Ruby on Rails怎么样?我刚看了一篇博文,说明单独的请求可能会访问同一个类变量.

我想到这可能取决于Web服务器. Mongrel的FAQ说明Mongrel每个请求使用一个线程 - 建议无共享环境.FAQ继续说RoR不是线程安全的,这进一步表明RoR不会存在于共享环境中,除非新请求重用从先前请求创建的内存中对象.

显然这具有巨大的安全后果.所以我有两个问题:

  1. RoR环境是否共享?
  2. 如果RoR在共享环境中运行(或者可能在某些情况下运行),那么我应该对哪些变量和其他数据存储感到偏执?

更新:我会进一步澄清. 在Java servlet容器中,您可以拥有跨多个请求持久化的对象.这通常用于缓存多个用户可以访问的数据,数据库连接等.在PHP中,这不能在应用程序层完成,它必须在像Memcached这样的单独的持久层中完成.因此,双重问题是:哪种情况是RoR(PHP或Java),如果像Java一样,哪些数据类型在多个请求中持续存在?

security shared-nothing ruby-on-rails class-variables

20
推荐指数
2
解决办法
5310
查看次数

Hadoop的经验?

有没有人尝试过Hadoop?在没有共享架构的情况下,它可以在没有随附的分布式文件系统的情况下使用吗?那会有意义吗?

我也对你的任何表现结果感兴趣......

performance distributed hadoop shared-nothing

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

在分布式系统中学习有关通信更新的算法的最佳论文是什么?

我有一个分布式系统(单个数据中心中的多个节点),我想要具有以下属性:

  • 节点可以随时进入和离开系统.
    • 节点之间没有数据复制.
    • 客户端使用哪个节点取决于客户端(即它可以是一致的散列,也可能是其他节点)
  • 没有主人(即没有中心点的失败)
  • 每个节点可以接收需要转发到其余节点的一条信息

什么算法(最适合论文的链接)适合这个?

(我假设一些答案将包括P2P算法,但我过去遇到的大部分答案都更像是分布式哈希表,其中节点进入并接管键空间的某些部分,等等.我也认识到使用简单UDP消息进行多播可能是合适的,但现有的工作有助于使消息传递可靠吗?)

p2p shared-nothing distributed-computing distributed-system

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