zoukankan      html  css  js  c++  java
  • rufus/scheduler

    之前先在initializers 文件夹下建立了一个task.rb ,rails服务启动的时候执行,本地没问题,可是服务器上启动了3个进程,会执行3遍,解决方法是 把task.rb 放到 script/文件夹下,然后在项目根目录执行 ruby script/task.rb production &。以为ok了。but又出问题了, 
    我的日志输出路径是  
    Logger.new("#{Rails.root_to_s}/log/test.log"),运行脚本的时候报错 uninitialized constant RAILS ,解决方法是在task.rb文件头 加上下面两行: 
      
    ENV['RAILS_ENV'] = ARGV.first || ENV['RAILS_ENV'] || 'development' 
      
    require File.expand_path(File.dirname(__FILE__) + "/../config/environment") 

    最下面还要加上  
    scheduler.join 

    但是我用下面的方法就可以了:

    在script下新建task.rb文件,内容如下

    require 'rubygems'
    require 'rufus/scheduler'
    scheduler = Rufus::Scheduler.new
    
    scheduler.every("2s") do
       puts Time.now
    end
    scheduler.join
    

      这样后在工程根目录执行ruby script/task.rb &就可以执行了,可以看到输出。 用ctrl + d可以结束进程

    但是我在config/initializers文件夹下新建task,总是提示require找不到文件。。。哎。。。。失败啊。。。。

  • 相关阅读:
    在Twrp下删除面具模块
    Windows之批量创建用户、组部署
    H3C之HDLC实验部署
    Linux之防火墙部署
    H3C之Telnet实验部署
    win10 远程桌面 ubuntu
    VMware 虚拟机开机黑屏
    计算机存储单位换算
    TextCNN代码实践
    TextCNN论文解读
  • 原文地址:https://www.cnblogs.com/juandx/p/3893312.html
Copyright © 2011-2022 走看看