Redis
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> Redis

Làm cách nào để tạo một resque worker tự động khi khởi động?

Tôi không sử dụng viên đá quý vì (1) Tôi đã thấy một dự án rất khó khăn bởi sự phức tạp của thiết lập mà nó đã giới thiệu, và (2) Cá nhân tôi thực sự thoải mái với các công cụ Linux (Ubuntu) tiêu chuẩn xử lý loại điều này.

Để bắt đầu Yêu cầu lại công nhân khi khởi động

Tôi có mã này trong /etc/rc.local của mình tập tin. Tôi có một triển khai người dùng trên hệ thống:

# Start Resque
su -l deploy -c "/home/deploy/start-resque-workers"
su -l deploy -c "/home/deploy/start-resque-webui"

Sau đó, trong các tập lệnh đó, tôi thiết lập môi trường ruby ​​và chạy tác vụ rake:

# Load RVM into a shell session *as a function*
if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then
  # First try to load from a user install
  source "$HOME/.rvm/scripts/rvm"
elif [[ -s "/usr/local/rvm/scripts/rvm" ]] ; then
  # Then try to load from a root install
  source "/usr/local/rvm/scripts/rvm"
else
  printf "ERROR: An RVM installation was not found.\n"
fi

# Use rvm to switch to the default ruby. 
rvm use default

# Now launch the app
cd /home/deploy/app-name-here/current
nohup rake QUEUE=* RAILS_ENV=production environment resque:work &

Tôi đã sử dụng loại thiết lập này trong nhiều năm và nó rất chắc chắn. Các máy chủ không bị sập. Tôi chưa cần chi phí cài đặt một hệ thống khác (như đá quý) để giám sát các máy chủ khác này.

Ngoài ra, tôi sử dụng viên ngọc capistrano để xử lý việc khởi động lại các nhân viên khi triển khai.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kết nối với redis được quản lý bằng tên người dùng / mật khẩu xác thực nodejs

  2. Điểm của REDIS trong ngăn xếp ELK là gì?

  3. Cơ sở dữ liệu khóa-giá trị với máy khách Java

  4. RDBTools đã được mua lại bởi RedisLabs!

  5. Redis Cross Slot lỗi