2

我正在运行一个 Rails 应用程序,除其他外,它需要扮演它自己的 SMTP 服务器的角色。Mini-SMTP-Server看起来很不错,但我不知道如何让它作为守护进程运行。我希望能够对传入的消息采取行动,并且我需要将完整的 Rails 堆栈用于其他任务。

我查看了守护进程gem,它看起来很合适,但不知道如何连接它以开始以合理的方式侦听 SMTP 消息。

4

1 回答 1

4

创建一个 Rake smtp_server rake 任务,确保它依赖于环境,然后在该任务中为 smtp 服务器编写代码。查看此线程以将 rake 任务设置为守护进程:Daemoninsing a rake task

desc 'smtp_server'
task :smtp_server => :environment do
  # Create a new server instance listening at 127.0.0.1:2525
  # and accepting a maximum of 4 simultaneous connections
  server = MiniSmtpServer.new(2525, "127.0.0.1", 4)

  # Start the server
  server.start
  # Join the thread to main pool
  server.join
end
于 2013-01-25T18:05:25.990 回答