構築したredmineでチケットの登録/更新が遅い事象が発生したため、その時の対処法を紹介します。

原因はメールの同期送信設定

Redmine 3.0をCentOS 7.0にインストールする手順に従って構築したのですが、そのままサンプル通りの設定を行ったらメールが同期送信になっていました。

Redmineではチケットの更新などの際にメールを送信するのですが、同期送信の場合はメール送信が完了してからチケットの更新も完了します。私の場合はメール送信に結構時間がかかっており、それに伴いチケットの更新なども遅くなってしまい、これが原因でした。(実際に、チケット更新時のメール送信をOFFにするとチケット更新が大分早くなりました)

メールを非同期送信設定にすると解消される

メール送信を非同期設定にすることで、メール送信完了を待たずにチケットの更新が完了するようになります。これでチケット更新がだいぶ早くなります。

メール非同期の設定はここが参考になります。

具体的な設定方法としては「configuration.yml」ファイルの「delivery_method」を「:async_smtp」などに変更します。

「delivery_method」で選べる設定は、以下の4つになります。

  • :smtp
  • :async_smtp
  • :sendmail
  • :async_sendmail
production:
 email_delivery:
  delivery_method: :async_smtp ← ここを変更
  smtp_settings:
   address: smtp.example.net
   port: 25
   domain: example.net
   authentication: :login
   user_name: redmine@example.net
   password: redmine