Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Laravel Sail9から導入された Mailhogの後継Fake SMTP/mailpit を使ってみた

Kanon
February 13, 2024

Laravel Sail9から導入された Mailhogの後継Fake SMTP/mailpit を使ってみた

Kanon

February 13, 2024
Tweet

More Decks by Kanon

Other Decks in Technology

Transcript

  1. Copyright (C) 2023 Toranoana Inc. All Rights Reserved. Laravel Sail9から導入された

    Mailhogの後継Fake SMTP/mailpit を使ってみた 1 虎の穴ラボ Kengo Yoshida
  2. Copyright (C) 2023 Toranoana Inc. All Rights Reserved. アジェンダ 2

    1. 自己紹介 2. なぜこのテーマにしたのか 3. 性能比較 4. そのほか試したこと 5. まとめ
  3. Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 4 1.

    自己紹介 4 Kengo Yoshida • 虎の穴ラボ / 通販チーム • 入社理由 ◦ スキルを高め合える勉強熱心な仲間が欲しい ◦ 周りが つよつよエンジニア ばかりな状況で揉まれた い ◦ 自分の大好きなオタクという文化になにかしらの形で 関わって、発展に貢献したい twitter: @samurai_se
  4. Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 5 補足

    虎の穴ラボとは 5 クリエイター支援プラットフォーム 世界最大規模の同人EC
  5. Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 6 補足2

    …というより宣伝 カジュアル面談 Connpass : blessing software 採用ページ
  6. Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 気づけばLaravelが使っているFake SMTPが変わってた

    8 Laravel Sail(8系)ではmailhogが使われている Laravel Sail(9系/10系)ではmailpitが使われている mailpitのREADMEを読むと… Why rewrite Mailhog? mailhogはAPIのパフォーマ ンスが悪いと言っている
  7. Copyright (C) 2023 Toranoana Inc. All Rights Reserved. mailpitがmailhogを作り直した理由の要約 9

    • MailHogは性能面で問題を抱えている • モジュールが古く、最近は活発に開発されていない • 大量メールや添付ファイルがあるメールを処理するとパ フォーマンスが良くない • APIは余計なデータを送信している • 以上を解消するにはソースを一から書き直す必要があっ た
  8. Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 簡単に試してみる 11

    1. メール送信の直前直後にログを仕込む 2. MailHog,mailpitそれぞれに対して1MBの添付ファ イルを付けてメール送信を行う 3. ログの時間から処理時間を計測
  9. Copyright (C) 2023 Toranoana Inc. All Rights Reserved. 試したこと 14

    • APIを使ったメール取得、削除 • SMTPSの有効化 • SMTP_AUTHの有効化 詳しくはこちらの記事に