Resque: one worker per queue

I currently have a Rails 3.0 project, with Ruby 1.9.2 and Resque. My application has multiple worker classes and multiple queues, that are dynamically created (during runtime). Also, there are multiple workers started that are free to work on any queues, because at start time there isn't any existing queues, and they cannot be predicted: $ COUNT=3 QUEUE=* rake resque:workers Queues a cre

Resque:每个队列一名工作人员

我目前有一个Rails 3.0项目,Ruby 1.9.2和Resque。 我的应用程序有多个工作程序类和多个队列,这些是动态创建的(在运行时)。 另外,有多名员工可以自由地在任何队列中工作,因为在开始时没有任何现有的队列,并且他们无法预测: $ COUNT=3 QUEUE=* rake resque:workers 根据project ID创建队列: @queue = "project_#{project.id}".to_sym 对于给定的队列,他们的工作必须按顺序处理,并且一次处理一个。 我的问题是,

compute geo distance in elasticsearch

i am using a geo_distance filter with tire in my query and it works fine: search.filter :geo_distance, :distance => "#{request.distance}km", :location => "#{request.lat},#{request.lng}" i expected that the result would somehow include the computed distance to the geo-location that i used for my filter. is there a way to tell elasticsearch to include that in the response, so that i don&#

在elasticsearch中计算地理距离

我在查询中使用带轮胎的geo_distance过滤器,它工作正常: search.filter :geo_distance, :distance => "#{request.distance}km", :location => "#{request.lat},#{request.lng}" 我预计结果会以某种方式包含我用于过滤器的地理位置的计算距离。 有没有一种方法可以告诉elasticsearch在响应中包含这些内容,以便我不必为每个结果在ruby中计算它? ==更新== 我在谷歌组中找到了答案: search.sort do by "_geo_di

What is the best way to mock a 3rd party object in ruby?

I'm writing a test app using the twitter gem and I'd like to write an integration test but I can't figure out how to mock the objects in the Twitter namespace. Here's the function that I want to test: def build_twitter(omniauth) Twitter.configure do |config| config.consumer_key = TWITTER_KEY config.consumer_secret = TWITTER_SECRET config.oauth_token = omniauth['cre

用ruby模拟第三方对象的最佳方法是什么?

我正在使用twitter gem编写测试应用程序,我想编写一个集成测试,但我无法弄清楚如何模拟Twitter命名空间中的对象。 这是我想测试的功能: def build_twitter(omniauth) Twitter.configure do |config| config.consumer_key = TWITTER_KEY config.consumer_secret = TWITTER_SECRET config.oauth_token = omniauth['credentials']['token'] config.oauth_token_secret = omniauth['credentials']['secret']

How do I override the default tabindent for Ruby in Vim?

I'm using Janus for vim and am really liking it, but I can't seem to get my preferred tabstop of 4 working right. This is in my .vimrc set tabstop=4 set shiftwidth=4 set softtabstop=4 set expandtab Later on I have filetype plugin indent on But all of my ruby files keep using the default version of 2, which I just don't like. I've tried following the instructions on this page

如何覆盖Vim中Ruby的默认tabindent?

我使用的是Janus for vim,我真的很喜欢它,但我似乎无法得到我的首选tabstop 4的权利。 这是在我的.vimrc set tabstop=4 set shiftwidth=4 set softtabstop=4 set expandtab 后来我有 filetype plugin indent on 但是我所有的ruby文件都使用默认版本2,我只是不喜欢。 我试过按照本页面上的说明操作,包括在after文件夹(和janus创建的indent文件夹)中创建ruby.vim文件。 我已经添加: au FileType ruby set softtabsto

rails omniauth and UTF

I had a recent error using omniauth trying to populate some fields from Google's login Encoding::CompatibilityError: incompatible character encodings: ASCII-8BIT and UTF-8 "omniauth"=> {"user_info"=> {"name"=>"Joe McÙisnean", "last_name"=>"McÙisnean", "first_name"=>"Joe", "email"=>"someemail@gmail.com"}, "uid"=> "https://www.google.com/accou

rails omniauth和UTF

我使用omniauth尝试填充Google登录中的某些字段时出现了最近的错误 Encoding :: CompatibilityError:不兼容的字符编码:ASCII-8BIT和UTF-8 "omniauth"=> {"user_info"=> {"name"=>"Joe McÙisnean", "last_name"=>"McÙisnean", "first_name"=>"Joe", "email"=>"someemail@gmail.com"}, "uid"=> "https://www.google.com/accounts/o8/id?id=AItOawnQmfdfsdfsdfdsfsdhGWmuLTiX

What does the (unary) * operator do in this Ruby code?

Given the Ruby code line = "first_name=mickey;last_name=mouse;country=usa" record = Hash[*line.split(/=|;/)] I understand everything in the second line apart from the * operator - what is it doing and where is the documentation for this? (as you might guess, searching for this case is proving hard...) The * is the splat operator. It expands an Array into a list of arguments, in this case

(一元)操作符在这个Ruby代码中做了什么?

给定Ruby代码 line = "first_name=mickey;last_name=mouse;country=usa" record = Hash[*line.split(/=|;/)] 我理解除了*运算符之外的第二行中的所有内容 - 它在做什么以及文档在哪里? (正如你可能猜到的,寻找这个案例很难......) *是splat操作符。 它将一个Array展开成一个参数列表,在这里是Hash.[]方法的参数列表。 (更确切地说,它扩展了任何在Ruby 1.9中响应to_ary / to_a或to_a对象。) 为了说明,以下两

Reading from multiple sockets (irc bot)

I'm trying to make an IRC bot that connects to multiple servers, and I'm having trouble reading from all the sockets at once. My current code: #!/usr/bin/ruby require 'socket' servers = ["irc.chat4all.org"] def connect(server, port, count) puts "connecting to #{server}..." @socket[count] = TCPSocket.open(server, port)

从多个套接字读取(irc bot)

我试图制作一个连接到多个服务器的IRC bot,并且我无法一次从所有套接字读取。 我现在的代码: #!/usr/bin/ruby require 'socket' servers = ["irc.chat4all.org"] def connect(server, port, count) puts "connecting to #{server}..." @socket[count] = TCPSocket.open(server, port) say("NICK link_hub", count) say("USER

"Execute and Update '# =>' Markers" for VIM

Is there a possibility in VIM to repeat "Execute and Update '# =>' Markers" TextMate feature for ruby code. I'd like to have something like: x = 2 class A def a 42 end end x # => A.new.a # => Enter some command... and get x = 2 class A def a 42 end end x # => 2 A.new.a # => 42 Here is a description of this feature from Ciarán Walsh'

“执行并更新”#=>'标记'用于VIM

VIM中是否有可能为Ruby代码重复“执行并更新”#=>'标记'TextMate功能。 我想有这样的东西: x = 2 class A def a 42 end end x # => A.new.a # => 输入一些命令...并获得 x = 2 class A def a 42 end end x # => 2 A.new.a # => 42 以下是CiaránWalsh的博客对此功能的描述: 另一个值得了解的工具是“Execute and Update'#=>'Markers'命令(默认情况下,在^⇧⌘E

could not find table subjects disable

I am new to ruby I was trying ruby by looking into tutorialpoints.com whiile migrating m getting this error C:UsersAnitDocumentsrubylibrary>rake db:migrate rake aborted! ActiveRecord::StatementInvalid: Could not find table 'subjects' C:in `disable_ddl_transaction' ActiveRecord::StatementInvalid: Could not find table 'subjects' C:in `disable_ddl_transaction' Tasks: TOP => db:migrate (See full t

无法找到表格主题禁用

我是ruby的新手,我试图通过研究tutorialpoints.com来尝试ruby 随着移动m得到这个错误 C:UsersAnitDocumentsrubylibrary>rake db:migrate rake aborted! ActiveRecord::StatementInvalid: Could not find table 'subjects' C:in `disable_ddl_transaction' ActiveRecord::StatementInvalid: Could not find table 'subjects' C:in `disable_ddl_transaction' Tasks: TOP => db:migrate (See full trace by running task with -

Test suite before upgrade to rails 4.2 from rails 3.2

I recently tried to updated my Rails app from Rails 3.2 to Rails 4.2. Before the upgrade all my test suite runs perfectly, but after the update I'm getting something strange. every time i tried to run a test the same error happens rake db:fixtures:load --trace ** Invoke db:fixtures:load (first_time) ** Invoke environment (first_time) ** Execute environment ** Invoke db:load_config (first_

从rails 3.2升级到rails 4.2之前的测试套件

我最近试图将我的Rails应用程序从Rails 3.2更新到Rails 4.2。 在升级之前,我所有的测试套件都能正常运行,但更新之后,我收到了一些奇怪的东西。 每次我尝试运行测试时都会发生同样的错误 rake db:fixtures:load --trace ** Invoke db:fixtures:load (first_time) ** Invoke environment (first_time) ** Execute environment ** Invoke db:load_config (first_time) ** Execute db:load_config ** Execute db:fixtures:load