小编cha*_*doh的帖子

Riak - 所有分区都属于一个节点

我正在浏览Seven Weeks中的七个数据库(迄今为止的一个很​​好的阅读),我对书中快速传递的Riak细节感到困惑.

默认情况下,Riak应该将数据分成64个分区.假设这些分区中的每一个在环中的节点之间被分开.(如果我的说法错了,请纠正我.)

我正在使用Riak源附带的4个dev节点.所有这些都是开始的,但是当我curl http://localhost:8091/stats | grep ring,我明白了

"ring_ownership": "[{'dev1@127.0.0.1',64}]"
Run Code Online (Sandbox Code Playgroud)

这进一步证实了$RIAK_INSTALL/dev/dev4/bin/riak-admin member-status:

================================= Membership ==================================
Status     Ring    Pending    Node
-------------------------------------------------------------------------------
joining     0.0%      --      'dev2@127.0.0.1'
joining     0.0%      --      'dev3@127.0.0.1'
joining     0.0%      --      'dev4@127.0.0.1'
valid     100.0%      --      'dev1@127.0.0.1'
-------------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)

这是怎么回事?为什么dev1节点声明了所有分区,如何让它共享?

也许相关

我为每个节点(in RIAK_ROOT/dev/devN/etc/app.config)编辑了app.config 以生成pb_ip 0.0.0.0而不是127.0.0.1.这样我就可以从主机中的浏览器访问Riak,即使我在Vagrant VM中运行Riak.即使我在每个中都进行了相同的更改,我只能从主机的浏览器(不是dev2,dev3或dev4)访问dev1.

如果您认为这会有所帮助,我可以将此虚拟机打包并使其可用于帮助您排除故障.(虚拟机很棒的众多原因之一.)

riak

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

vagrant:在主机和来宾之间共享ssh文件夹

为了bundle在我的VM中连接到Github作为我的正常自我,我想config.vm.share_folder "ssh", "/home/vagrant/.ssh", "~/.ssh".

除了这打破了流浪者的公钥/私钥认证.

尝试解决方案#1

我试图复制我的公钥也是authorized_keys.相同的行为; 我需要输入密码vagrant ssh.

尝试解决方案#2

复制公钥authorized_keys,但也设置config.ssh.private_key_path = "~/.ssh/id_dsa".不过,这只是搞砸了一切.

ssh vagrant

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

Fabricjs canvas.clipTo –在剪辑区域之外显示对象的控件

我正在canvas.clipTo为我的整个画布创建一个基于SVG的“图像蒙版”,正如fabricoverjs的创建者@kangax 在此stackoverflow答案中所述。看起来很棒!

但是,一个问题是:添加对象的句柄/控件未显示在masked / clipTo区域之外。例:

哈巴狗在t恤上的图片,带有边框以调整哈巴狗图像的大小。 右下角控件被遮盖。

如您在图像中看到的,哈巴狗的右下手柄已隐藏。这不好!

我<3 <3 <3这种canvas.clipTo方法,但是即使用户落在被遮罩区域之外,也需要用户能够抓住其添加图像的边缘。该图像应被隐藏,但其控件应可见。

javascript canvas fabricjs

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

同构/普遍呈现React 15应用程序中断Cloudflare HTTP代理("橙色云")

我有一个同构/通用React应用程序,这意味着它由服务器在服务器上呈现,为客户端,单页面应用程序用户体验提供支持.

我使用Cloudflare配置此应用程序的DNS,并使用其"橙色云"功能来加速和保护我的网站流量,如下图和支持文章中所述:

Orange Cloud:显示橙色云图标的记录由Cloudflare加速并受其保护. 灰色云:显示灰色云图标的记录将仅使用Cloudflare DNS绕过Cloudflare

从链接到文章:"Cloudflare可以在两种模式下运行 - 仅限DNS(未使用;"灰色云")和作为HTTP代理("橙色云"),具有我们的安全性,CDN和性能功能."

我发现使用React 15和Cloudflare的"橙色云"HTTP代理功能运行我的应用程序会导致错误:

reactProdInvariant.js:31未捕获错误:Minified React错误#32; 访问http://facebook.github.io/react/docs/error-decoder.html?invariant=32&args[]=2获取完整的消息,或使用非缩小的开发环境获取完整错误和其他有用的警告.

链接错误的文本:

无法找到ID为2的元素.

此ID可能是指head我的页面的标记:

<!doctype html>
<html lang="en-us" data-reactroot="" data-reactid="1" data-react-checksum="-1233854461"><head data-reactid="2">...
Run Code Online (Sandbox Code Playgroud)

我不会在React 14中遇到这个问题.

当我使用我的应用程序的原始的,未DNS的地址时,我没有得到这个错误,当我切换到"灰色云"以使用Cloudflare作为DNS服务时,我也没有得到它.

禁用服务器端呈现时,我不会遇到此问题.


当我谷歌链接到"实际"错误的文本时,我发现这个Github线程确认这与服务器端呈现有关.

但是,我的情况略有不同:线程的作者遇到错误,"无法找到元素"ID引用style标记,而在我的情况下,未展开的元素ID引用head标记.


当我谷歌生产"包装"错误的文本时,我发现这个Github线程确认这与Cloudflare的HTTP代理有关.此评论说:"如果您正在使用CloudFlare,请禁用HTML的自动缩小功能."

到目前为止,我无法弄清楚如何做到这一点.我很难找到关于Cloudflare究竟对HTTP代理做什么的好信息,以及我如何配置它.


问题:

  • 为什么会发生这个错误?
  • 我在哪里可以找到有关"橙色云"究竟是什么的信息?
  • 在保持Cloudflare HTTP代理的优势的同时解决此问题的最佳方法是什么?

dns http-proxy cloudflare reactjs isomorphic-javascript

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

特定资源路由操作的别名("/ sign_in"而不是"/ sessions/new")

我在Rails 3中设置了没有任何宝石的restful身份验证和用户管理.

但是,我认为需要转到"/ sessions/new"而不是"/ sign_in"是愚蠢的.

我知道你可以为整个资源添加别名,所以我的用户可以使用"/ squirrels"和朋友来代替"/ sessions"和朋友,但这不是我想要在这里完成的.我想别名一个具体的行动.

我知道这一种与实现

resources :sessions, :path_names => { :new => "sign_in" }
Run Code Online (Sandbox Code Playgroud)

但随后路由最终为"/ sessions/sign_in" - 我不希望控制器名称完全存在​​于此操作中.我希望我可以用这个来指定

resources :sessions, :path_names => { :new => "/sign_in" }
Run Code Online (Sandbox Code Playgroud)

其中"/"告诉rails它是一个完整的路径名.但这与第一个代码片段具有相同的效果.

我的最后一次尝试只是使用肤浅的

match "sign_in" => "sessions#new"
Run Code Online (Sandbox Code Playgroud)

这允许有人在他们的URL栏中手动输入"/ sign_in",但是new_session_(path|url)在更加笨拙的"/ sessions/sign_in"中仍与土地用户进行链接.

routing alias ruby-on-rails-3

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

如何根据Rails中的请求方法路由到不同的动作?

众所周知,一个简单的

resources :meetings
Run Code Online (Sandbox Code Playgroud)

将为我产生7个动作。其中两个是indexcreate。关于这两个的一个非常酷的事情!:两者的URL是/meetings,但是当我GET时,/meetings我被路由到该def index动作,而当我发布时/meetings,我被路由到该def create动作。真好

现在我要这样做:

resources :meetings do
  member do
    get  'scores'
    post 'scores'
  end
end
Run Code Online (Sandbox Code Playgroud)

而且,您猜对了!,我希望它们路由至以下不同的操作MeetingsController:GETting /meetings/1/scores将路由至def scores,POSTPOST meetings/1/scores将路由至def create_scores

rest routing ruby-on-rails crud ruby-on-rails-3

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

JavaScript:在页面加载时运行setInterval

我想每20秒运行一些代码.这很好.但是我想setInterval在第一次遇到时运行,然后开始计时(而不是先做时间).

显然,我可以这样做:

myFunction();
setInterval(myFunction, 20000);
Run Code Online (Sandbox Code Playgroud)

但我觉得有点不雅.我宁愿做类似的事情

setInterval(myFunction, 20000, { waitBeforeFirstRun: false });
Run Code Online (Sandbox Code Playgroud)

这样的设置是否存在setInterval

javascript setinterval

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