Mae ActiveJob yn rhan o'r fframwaith Ruby on Rails sy'n cynnig ffordd gyffredin i ddelio â phrosesau cefn. Mae'n caniatáu i chi ddefnyddio amrywiol beiriannau gwaith fel Sidekiq, Sucker Punch, a Resque heb orfod newid llawer o god. Yn yr erthygl hon, byddwn yn archwilio sut i sefydlu ActiveJob ar gyfer peiriannau gwahanol, gan gynnwys enghreifftiau o god a chamau gweithredu. Byddwn hefyd yn rhoi cyngor ar sut i ddewis y peiriant gwaith sy'n addas ar gyfer eich anghenion.
ActiveJob yw'r API swyddi ar gyfer Ruby on Rails sy'n caniatáu i chi greu a rheoli swyddi cefn. Mae'n cynnig rhyngwyneb cyffredin ar gyfer sawl peiriant gwaith, gan ei gwneud hi'n hawdd i newid rhwng peiriannau heb orfod newid llawer o god. Mae ActiveJob yn cefnogi sawl peiriant, gan gynnwys:
Mae Sidekiq yn un o'r peiriannau gwaith mwyaf poblogaidd ar gyfer Ruby on Rails. Mae'n seiliedig ar Redis ac yn cynnig perfformiad uchel. Dyma sut i sefydlu ActiveJob gyda Sidekiq:
Y cam cyntaf yw ychwanegu Sidekiq i'ch prosiect. Agorwch eich ffeil Gemfile a chynnwys y llinell ganlynol:
gem 'sidekiq'
Yna, rhedeg y gorchymyn canlynol i osod y gem:
bundle install
Gallwch greu swydd ActiveJob newydd trwy ddefnyddio'r gorchymyn canlynol:
rails generate job MyJob
Bydd hyn yn creu ffeil newydd yn app/jobs/my_job.rb
. Gallwch ychwanegu'r cod canlynol i'r ffeil hon:
class MyJob < ApplicationJob queue_as :default def perform(*args) # Cod i'w weithredu puts "Gweithredu MyJob gyda'r args: #{args.inspect}" end end
Mae angen i chi ddweud wrth ActiveJob i ddefnyddio Sidekiq fel y peiriant gwaith. Gallwch wneud hyn trwy ychwanegu'r canlynol i'ch ffeil config/application.rb
:
config.active_job.queue_adapter = :sidekiq
Y cam olaf yw rhedeg Sidekiq. Gallwch wneud hyn trwy ddefnyddio'r gorchymyn canlynol:
bundle exec sidekiq
Ar ôl i Sidekiq redeg, gallwch ddefnyddio eich swyddi ActiveJob. Er enghraifft, gallwch alw'r swydd fel hyn:
MyJob.perform_later('arg1', 'arg2')
Mae Sucker Punch yn beiriant gwaith sy'n gweithio ar y gwefan, sy'n golygu nad oes angen i chi sefydlu unrhyw wasanaeth allanol fel Redis. Dyma sut i sefydlu ActiveJob gyda Sucker Punch:
Y cam cyntaf yw ychwanegu Sucker Punch i'ch prosiect. Agorwch eich ffeil Gemfile a chynnwys y llinell ganlynol:
gem 'sucker_punch'
Yna, rhedeg y gorchymyn canlynol i osod y gem:
bundle install
Fel gyda Sidekiq, gallwch greu swydd ActiveJob newydd trwy ddefnyddio'r gorchymyn canlynol:
rails generate job MySuckerPunchJob
Ychwanegwch y cod canlynol i'r ffeil app/jobs/my_sucker_punch_job.rb
:
class MySuckerPunchJob < ApplicationJob queue_as :default def perform(*args) # Cod i'w weithredu puts "Gweithredu MySuckerPunchJob gyda'r args: #{args.inspect}" end end
Mae angen i chi ddweud wrth ActiveJob i ddefnyddio Sucker Punch fel y peiriant gwaith. Gallwch wneud hyn trwy ychwanegu'r canlynol i'ch ffeil config/application.rb
:
config.active_job.queue_adapter = :sucker_punch
Gallwch ddefnyddio'r swydd fel hyn:
MySuckerPunchJob.perform_later('arg1', 'arg2')
Mae Resque yn beiriant gwaith arall sy'n seiliedig ar Redis. Dyma sut i sefydlu ActiveJob gyda Resque:
Y cam cyntaf yw ychwanegu Resque i'ch prosiect. Agorwch eich ffeil Gemfile a chynnwys y llinell ganlynol:
gem 'resque'
Yna, rhedeg y gorchymyn canlynol i osod y gem:
bundle install
Fel gyda'r peiriannau eraill, gallwch greu swydd ActiveJob newydd trwy ddefnyddio'r gorchymyn canlynol:
rails generate job MyResqueJob
Ychwanegwch y cod canlynol i'r ffeil app/jobs/my_resque_job.rb
:
class MyResqueJob < ApplicationJob queue_as :default def perform(*args) # Cod i'w weithredu puts "Gweithredu MyResqueJob gyda'r args: #{args.inspect}" end end
Mae angen i chi ddweud wrth ActiveJob i ddefnyddio Resque fel y peiriant gwaith. Gallwch wneud hyn trwy ychwanegu'r canlynol i'ch ffeil config/application.rb
:
config.active_job.queue_adapter = :resque
Gallwch redeg Resque trwy ddefnyddio'r gorchymyn canlynol:
QUEUE=* rake resque:work
Mae dewis y peiriant gwaith cywir yn dibynnu ar eich anghenion penodol. Dyma rai pwyntiau i'w hystyried:
Mae ActiveJob yn cynnig ffordd hawdd i ddelio â swyddi cefn yn Ruby on Rails. Mae'n caniatáu i chi ddefnyddio amrywiol beiriannau gwaith fel Sidekiq, Sucker Punch, a Resque heb orfod newid llawer o god. Drwy ddilyn y camau a ddisgrifiwyd yn yr erthygl hon, gallwch sefydlu ActiveJob yn hawdd ar gyfer eich prosiect. Peidiwch ag anghofio ystyried eich anghenion penodol wrth ddewis y peiriant gwaith cywir. Mae pob peiriant yn cynnig ei fanteision a'i anfanteision ei hun, felly dewiswch y gorau ar gyfer eich prosiect.
© 2024 RailsInsights. All rights reserved.