Live data from Hacker News

A serverless email server on AWS using S3 and SES

github.com

61–70 of 217 posts

Re: A serverless email server on AWS using S3 and SES

#61
post #51

There's another much more important limits on AWS SES that the article doesn't mention if you try to do this for normal email, the 10MB message size limit, which translates to about a 6MB maximum attachment size. It works fine for transactional mail and most newsletters, but quite a few users expect to be email larger files than that.

They shouldn’t. Most ISP email providers don’t support more than 10mb.

Re: A serverless email server on AWS using S3 and SES

#62
post #48
post #26

Earlier quoted context omitted.

All very good info that as far as I know is all pretty unique to SES regarding the default/sandbox vs the upgraded production capabilities. The set up makes a lot of sense to prevent abuse and it works just fine out of the box for dev purposes. The production version also operates way more how you'd actually expect an email service to work. All that said, I don't know of any other services that have this "production"…

Sandbox mode is also great for low-volume internal mail like notifications from cron. My guess is that the main argument for sandbox mode is that it requires you to explicitly say you don’t spam and will handle reports, giving them carte blanche to yank your account if you do. Given how slimy email marketing is I suspect someone at AWS didn’t want to deal with people lying to their support people all of the time.

And once you are out of sandbox mode, it scales pretty well. We regularly send millions of mails in 24hr periods. Some gotchas come in when you need to set up DKIM/etc and other providers may need to handle mail for the same domain.

Re: A serverless email server on AWS using S3 and SES

#63
post #58

I feel like the current methods for spam filtration are getting so many false positives that it makes email unnecessarily difficult for users with good intentions. I also don't know how much of this is unethical behaviour by the big email providers, forcing you to sign up for their cloud email solution instead of doing your own. It sure would be nice to be able to run one's own email server without having to stress o…

You can make it easy to send email or you can reduce spam but you can’t do both.

Re: A serverless email server on AWS using S3 and SES

#64
post #7

Reading it I get that AWS now by default restricts email by - 200 mails per day max. 1 per second. - Can only send mail to verified addresses. Not sure how they verify though. - Can only send mail from the domain you own and verified. All these are good steps. Guess that will gradually take AWS IPs out of all those mail blacklists. And while we are on the topic, I find IP based mail blacklist services such as BRBL ob…

SES is pretty good at monitoring your email usage, such that it maintains a "reputation" score calculated by monitoring the hard bounce rate generated by your account. The premise being that high bounce rates (AWS define this as >5%) strongly indicate you're not managing your email recipient list properly i.e. sending untargeted SPAM.

Re: A serverless email server on AWS using S3 and SES

#65
post #28
post #22

A serverless server? It is a great illustration of how the term "serverless" has shifted from literally no server (ex: sqlite database) to "somebody else's computer".

I literally had one of the heads of a crucial flight system project loudly exclaim to me in front of the senior managers. "It's serverless - there is no server!" To which I honestly, just kept my mouth shut and stood aside.

To which I honestly, just kept my mouth shut and stood aside.

I can never keep my mouth shut in these situations. Sometimes it leads to promotions, but I suspect it puts a ceiling on how high I can climb the corporate ladder.

Re: A serverless email server on AWS using S3 and SES

#66
We are building a similar serverless no-code inbox (with SES and S3) not for outgoing emails, but to only receive them [0].

Our service doesn't require a user to sign-up with any existing identity (like email or phone number), and so, when they make payments, we send the invoices from the payments-processor to an email (corresponding to the customer-id) on our subdomain that goes to SES which promptly plonks it into an S3 bucket set up to life-cycle it out after 60 days, encrypting it with keys associated with customer-id. This encryption serves us well when the customer chooses to rotate / delete their pseudo-anonymous identity (and the keys along with it), as then all data in our systems associated with their id (the archived emails, for example) is essentially tombstoned.

The reason we prefer serverless over other solutions is not because of its scale or low-cost, but high-availability.

[0] https://docs.aws.amazon.com/ses/latest/DeveloperGuide/receiv...

Re: A serverless email server on AWS using S3 and SES

#67
post #22

A serverless server? It is a great illustration of how the term "serverless" has shifted from literally no server (ex: sqlite database) to "somebody else's computer".

> serverless server? This isn’t a contradiction. “Server” is an overloaded term and the “server” in “serverless” refers to a different meaning of “server” than the “email server” bit. “Serverless” means there is no physical or virtual hosts to manage, you just supply the request handler i.e., the email server . It's amusing because it sounds like a contradiction, but it's not one.

> This isn’t a contradiction.

Yes it is. The "server" in "serverless" means no need to low-level manage/provision a server (computer) and its lifecycle. While "server" in "A serverless email server" means actually "service" as in "A serverless email service on AWS using S3 and SES". Which makes much more sense. The linked repo lets you have an "email server" just like GSuite gives you a "serverless email server".

Re: A serverless email server on AWS using S3 and SES

#68

Earlier quoted context omitted.

> serverless server? This isn’t a contradiction. “Server” is an overloaded term and the “server” in “serverless” refers to a different meaning of “server” than the “email server” bit. “Serverless” means there is no physical or virtual hosts to manage, you just supply the request handler i.e., the email server . It's amusing because it sounds like a contradiction, but it's not one.

I disagree with your assessment, email is a service and not a server . A service can run on a server, or ephemerally as in this article (which still has servers underneath it, you're just not running them). S3 and SES are services running on servers.

You are incorrect, see man pages.

Re: A serverless email server on AWS using S3 and SES

#69
post #51

There's another much more important limits on AWS SES that the article doesn't mention if you try to do this for normal email, the 10MB message size limit, which translates to about a 6MB maximum attachment size. It works fine for transactional mail and most newsletters, but quite a few users expect to be email larger files than that.

They shouldn’t. Most ISP email providers don’t support more than 10mb.

gmail is 25MB, yandex is 30MB.

Re: A serverless email server on AWS using S3 and SES

#70
post #33
post #22

A serverless server? It is a great illustration of how the term "serverless" has shifted from literally no server (ex: sqlite database) to "somebody else's computer".

I was doing serverless pages back in late 90s when I uploaded PHP scripts to "website providers".

true serverless
Post reply on HN