Looking back on 2020
As the end of this turbulent year approaches, it's time for us to look back and reflect on what has happened. Despite the obvious limitations and changes that this year has brought upon us all, it's been busy as ever. Let's have a look at some highlights!
In January we released version 5.8.2, and at the time of writing this, we're at version 5.12. What have been some of the most notable changes and improvements that were introduced?
New REST API endpoints
In MailerQ, you can organize IP addresses in IP Pools. These pools can contain IP addresses shared between multiple customers, IPs dedicated to individual senders, or IPs destined for certain purposes such as transactional or bulk traffic only. It's now possible to create IP Pools and add or remove IP addresses to these pools through the REST API. This endpoint may prove particularly useful for automating the onboarding of new customers, be it on shared or on dedicated IP Pools. Additionally, it may help automate infrastructure expansion.
We discussed the importance of globally suppressing bad traffic using one of our latest features, the Suppression List. With the introduction of a REST API endpoint for this, you can now add or remove destination domains and addresses to be suppressed from external authorized platforms such as your own feedback processing pipeline or some email analytics platform.
Using the External MTA IPs feature, it's possible to send emails with MailerQ using IP addresses that are on a different server. This can be leveraged when your MTA is hosted on a cloud environment such as Amazon Web Services or Google Cloud Platform where certain IP restrictions are enforced, but also to enable users to bring their own IPs or when migrating from a different MTA infrastructure to MailerQ. To further support automation, it's possible to configure these settings via the REST API as well.
New Rewrite Rule actions forUsing the Rewrite Rules, message streams can be segmented and rerouted or flagged using tags. In version 5.11 we've made this feature even more powerful by introducing three new actions for Rewrite Rules: "Set JSON property", "Unset JSON property" and "Apply JSON patch". This allows you to conditionally modify any message property after injection. Examples of properties you can modify on-the-fly are the retry interval, security/TLS policy, max number of attempts, message priority, MIME headers, custom result queues or result properties, and any other message property.
Performance and stability optimizations under heavy load
While MailerQ was already super-fast, we now introduced a couple of changes that further improve throughput stability and performance under heavy load. This includes the introduction of a custom, asynchronous DNS library (DNS-CPP) under the hood that replaces the synchronous libresolv library. Additionally, we removed the ability to configure settings such as QoS for temporary queues and now optimize these values dynamically, so these can no longer be misconfigured. Furthermore, RabbitMQ publisher confirms were enabled (configurable by setting rabbitmq-throttle, which has default value 100). This prevents runaway backpressure on the outbox queue when under heavy load.
Multi-user support for SMTP authentication and web interface
Prior to 5.12, access to the Management Console was restricted by a master password (and IP restrictions), and SMTP authentication only allowed for a single user. Besides these “hardcoded" authentication methods, MailerQ 5.12 introduces support for managing authentication of Management Console users and SMTP users via LDAP, RADIUS, Linux users, HTTP endpoints, username/password files, and custom scripts.
The introduction of multiple users authentication for SMTP and for the Management Console also comes with a couple of other changes. As of 5.12, the username of the admin who accessed the Management Console is logged in www-log, meaning that it will be possible to backtrack who accessed what setting.
Additionally, the SMTP user is now available as a message property in the in-memory message JSON. This means you can now select messages based on the SMTP user in the Rewrite Rules, and use that to e.g. route those messages over certain pools, increase the message priority, drop those messages, add a tag to these messages, and so on.
Other changes include support for HTTPS and SOCKS proxy support for the External MTA IPs, grouping domain based on IP range, automatically add non-existent addresses to the Suppression List using a new Response Patterns action, support for Amazon S3 storage, and more. Full release notes can be found here.
The continuous feedback, suggestions, and ideas from our users & partners in the industry have again proven to be invaluable and helped us get a better idea of what improvements to prioritize and what features to implement.
Naturally, this year has turned out very differently from what we initially thought. We planned to attend more email events this year than ever before, but in the end, the only in-person event we could attend was this year's first M3AAWG meeting in San Francisco. And while we didn't realize it would be the last time in 2020, it was great to see all our friends from the industry again, to exchange ideas, and to occasionally get distracted by a wandering Keanu Reeves(!) in the hotel.
During the rest of the year we attended some online events including the Inbox Expo, online sessions hosted by the CSA, online M3AAWG meetings, and the Deliverability Summit. It's incredible to see how resilient the organizations behind these events have proven to be. As part of the shift to online events, M3AAWG started an Engagement Series in which our team participated. We were also invited by our friends from Validity to talk about email best practices, getting out of the spam box, and do's and don'ts for during the Holiday sending season (you can watch the recording here).
We also planned to host a second edition of the Global Sender Summit, of which we organized the inaugural version in November 2019 in Amsterdam. While the original plan was to host this second edition in Chicago, we are now working on organizing this as an online event as well.
Looking forward to 2021
Even though this year came and went in the blink of an eye, we're proud to see how our organization, like many others, fortunately, has managed to adapt to the new reality. Remote working has proven to work for us, so this opens up a lot of exciting opportunities for the upcoming year. We're attracting more and more talent to our product and commercial teams and we will continue to do so in the upcoming year, despite the circumstances. Do you have any questions or ideas, or are you interested in joining our team? Let us know on firstname.lastname@example.org!