たけのこめばるどっとねっと

無理・・・もう無理・・・

IMAP IDLE で Gmail 同期遅延対策してみた

  • 20170630X-1.jpg

キャリアにカモ扱いされるのが胸糞悪いことから MVNO に逃げたものの、Gmail の同期遅延は・・・厳しいね。

障害メールが私物に飛んでくる事自体アレな話だが、メール遅延問題が酷くなってきたので、5月頭から回避策を設定・検証してみました。

Gmailでメールが遅れる原因は、サーバと端末間で同期してくれないことっぽい。Gmail のサーバにはメールが届いてるのに、端末側に Push されたり、されなかったりと、全くもって安定しないのです。

Gmailアプリ側で定期的に強制同期する設定がありゃ何とかなるものの、そんなものは存在せず、ほかに仕組みもないので、どうにもなりません。

別のメールアプリを使って直接サーバに IMAP で接続して定期チェックする方法を試みるも、セキュリティ要件が云々で怒られた(エラーが出たの意)ので、仕方なく別の方法に。

<今回検証した方法>
メールを別のメールサーバに転送し、メールサーバと端末間で IMAP 接続しっぱなしにして、メールが来たら端末側に通知する仕組みを利用する(IMAP IDLE)

<手順>
1. レンタルサーバ(さくら)のサービスを使ってメールアドレスを新規に作成する
2. Gmail の転送設定で、作成したメールアドレスにメールを飛ばす
3. K-9 で IMAP IDLE の設定を行い、さくらのメールサーバに IMAP で接続しっぱなしにする
4. IMAP IDLE の保険として 15分間隔でスプールを見に行くよう設定する

問題はレンタルサーバの確保と imapd のプロセスが長時間残ることが許容されるのかですが、そもそもこのクソサイトの維持で年間7000円(ドメイン込み)も払ってるんだけら、罰は当たらんだろと・・・。

現在のところ、Gmail同期遅延分は IMAP IDLE で拾えてるし、そもそも IMAP IDLE で通知が来るほうが早かったりするので有効かと。コスト的にどうかとは思うけども。