有效地使用Google App Engine使用PHP发送大量电子邮件?

有效地使用Google App Engine使用PHP发送大量电子邮件?,php,python,google-app-engine,email,newsletter,Php,Python,Google App Engine,Email,Newsletter,我目前在MediaTemple上的网格服务器上有一个客户端网站,该网站很快将移动到虚拟专用服务器。目前,它正在使用一些黑客技术,使用cron作业和数据库排队(以避免超过middlemple设置的限制)来慢慢发送他的大量电子邮件 我们不能使用第三方解决方案(如MailChimp等),因为客户支付的价格太高(他的邮件列表上有75000多人)。因此,经过大量研究,我发现使用谷歌应用程序引擎作为一种基本上可伸缩的方式发送大量电子邮件是一个可行的选择 他的网站目前使用PHP。我最终还是想使用Python/

我目前在MediaTemple上的网格服务器上有一个客户端网站,该网站很快将移动到虚拟专用服务器。目前,它正在使用一些黑客技术,使用cron作业和数据库排队(以避免超过middlemple设置的限制)来慢慢发送他的大量电子邮件

我们不能使用第三方解决方案(如MailChimp等),因为客户支付的价格太高(他的邮件列表上有75000多人)。因此,经过大量研究,我发现使用谷歌应用程序引擎作为一种基本上可伸缩的方式发送大量电子邮件是一个可行的选择

他的网站目前使用PHP。我最终还是想使用Python/Django,但目前还没有。。。有几件事我不太明白。。。例如,有一个名为“example.appspot.com”的应用程序,这可以是他的网站上的子域吗(比如mailapp.example.com)?在阅读了Google App Engine上的用户指南后,应用程序使用的电子邮件地址似乎是应用程序上的管理员(如admin@example.appspot.com)... 一定是这样吧?不可能是这样的example@example.com?

我明白发送这么多电子邮件意味着我必须在应用程序上启用计费。据我所知,我可以发送的数量仍然有配额。我甚至看到过这段代码,它可以帮助您轻松设置:

理想情况下,我希望替换发送电子邮件的PHP代码(使用mail()等),改为使用Google App Engine发送

有人成功地完成了这种设置吗?有人能帮我拼一下所需的步骤吗?或者提供使用此类系统的任何陷阱?

您的第一个问题:

让应用程序调用 “example.appspot.com”,这是否是 他的站点上的子域(如 mailapp.example.com)

是的,比如说:

谷歌应用程序引擎可以与 谷歌应用程序提供一个自定义域 面向internet的应用程序的名称 应用程序,例如myapp.com

默认情况下,当您部署 谷歌应用程序引擎上的服务,您的 服务将于 [您的应用程序id].appspot.com。在里面 以提供更强大的品牌 为您的应用提供经验,您可以 可能还希望该应用程序 可在[my brand].com或 www.[我的品牌].com

为了建立这些品牌 访问您的服务的位置,您可以 必须证明你拥有这个域名 命名或购买域名 通过谷歌。谷歌应用引擎 允许您证明您的产品的所有权 域名和购买新域名 使用谷歌应用

你的第二个问题:

应用程序使用的电子邮件地址是 应用程序上的管理员(如 admin@example.appspot.com)... 那已经 是这样吗?不可能 差不多example@example.com?

当然,你可以使用谷歌用户名作为你应用程序的管理员用户

我知道你派了这么多人 电子邮件意味着我必须启用 在应用程序上计费。我 要知道,在这方面仍然有配额 我能寄多少

是的,每个,
每个电子邮件收件人0.0001美元。邮件列表上有75000人,这意味着发送给所有人的每封邮件7.50美元。根据,免费配额为每天发送2000个收件人,绝对最大值为740万(速率也有限制,即免费和最大配额中每分钟发送多少个收件人)

理想情况下,我希望替换PHP代码 它发送电子邮件的位置(使用mail() 等),并使其发送与谷歌 而是应用程序引擎


很抱歉,在这方面无法帮助您,我使用Python而不是PHP运行应用程序引擎。但我听说,通过,可以在App Engine的JVM“端”运行PHP。

您可以使用appengine for PHP通过以下方式向用户发送邮件:

<?php

    require_once 'google/appengine/api/mail/Message.php';
    use google\appengine\api\mail\Message;

    $mail_options = [
        "sender" => 'you@example.com',
        "to" => $_POST['email'],
        "subject" => "Type a subject here",
        "textBody" => "Type message here",
            ];

    try {
    $message = new Message($mail_options);
    $message->send();
    } catch (InvalidArgumentException $e) {
    echo $e;
    }

?>

阅读此问题标题时,是否只有我想到垃圾邮件?