Sha256: ba30a56919bd00497da5d388b9ad50054d5d1276f4efc959984cbb38d7c846ec

Contents?: true

Size: 1.15 KB

Versions: 15

Compression:

Stored size: 1.15 KB

Contents

# Make sure you have Sinatra installed, then start sidekiq with
# ./bin/sidekiq -r ./examples/sinkiq.rb
# Simply run Sinatra with
# ruby examples/sinkiq.rb
# and then browse to http://localhost:4567
#
require 'sinatra'
require 'sidekiq'
require 'redis'

$redis = Redis.connect

class SinatraWorker
  include Sidekiq::Worker

  def perform(msg="lulz you forgot a msg!")
    $redis.lpush("sinkiq-example-messages", msg)
  end
end

get '/' do
  @failed = $redis.get('stat:failed')
  @processed = $redis.get('stat:processed')
  @messages = $redis.lrange('sinkiq-example-messages', 0, -1)
  erb :index
end

post '/msg' do
  SinatraWorker.perform_async params[:msg]
  redirect to('/')
end

__END__

@@ layout
<html>
  <head>
    <title>Sinatra + Sidekiq</title>
    <body>
      <%= yield %>
    </body>
</html>

@@ index
  <h1>Sinatra + Sidekiq Example</h1>
  <h2>Failed: <%= @failed %></h2>
  <h2>Processed: <%= @processed %></h2>

  <form method="post" action="/msg">
    <input type="text" name="msg">
    <input type="submit" value="Add Message">
  </form>

  <a href="/">Refresh page</a>

  <h3>Messages</h3>
  <% @messages.each do |msg| %>
    <p><%= msg %></p>
  <% end %>

Version data entries

15 entries across 15 versions & 2 rubygems

Version Path
sidekiq-2.2.1 examples/sinkiq.rb
sidekiq-2.2.0 examples/sinkiq.rb
sidekiq-2.1.1 examples/sinkiq.rb
sidekiq-2.1.0 examples/sinkiq.rb
sidekiq-2.0.3 examples/sinkiq.rb
sidekiq-2.0.2 examples/sinkiq.rb
sidekiq-2.0.1 examples/sinkiq.rb
sidekiq-2.0.0 examples/sinkiq.rb
kulesa-sidekiq-1.2.3 examples/sinkiq.rb
kulesa-sidekiq-1.2.2 examples/sinkiq.rb
sidekiq-1.2.1 examples/sinkiq.rb
sidekiq-1.2.0 examples/sinkiq.rb
sidekiq-1.1.4 examples/sinkiq.rb
sidekiq-1.1.3 examples/sinkiq.rb
sidekiq-1.1.2 examples/sinkiq.rb