The Problem
The architectures and deployment mechanisms we are moving to don't jive well with locally stored data such as avatars. The goal is to be able to hit a button and spin up as many full working ready to go FES forum servers as possible. This will also help us to scale almost instantly if need be and recover from most hacks and issues we have with the push of a single button.
If we have to manage thousands of avatars in something like source control, this would be a non-starter. There are also security and speed concerns for saving them alongside the application code or on the same server versus other options.
The Solutions
S3 with Microserver to handle avatars: We use s3 to store our avatars and completely circumvent how smf does it by implementing the change in the themes we want it for.
S3: I can store the avatars on s3. The way we handle avatars will have to be rewritten in every place avatars are used in SMF. The drawback here is the amount of work. I'd likely leverage flysystem if we go this way, and go through and edit any piece of code that deals with avatars on the filesystem itself. The way the smf developers write their code makes this spread out entire many files and functions, and not always easy to find.
For those that have seen the staging forum for the new platform (which is aside of this work) it used this method. However, its not a lift and shift sorta operation and integrating it into SMF may be ugly. Upon looking into it further, its a ton of work.
Gravitar: Allows for folks to set up avatars that persist across sites. Third party service. Mods already exist for smf to use this.
EFS: We store them on a separate file server that we mount on our server. This has many of the problems with not doing anything, but its technically an option.
Current Plan
We will likely be moving to Gravatar for avatar usage in the future of our forums. I will be making the decision today or tomorrow so it ceases to block my work in getting us up to speed and able to deliver you guys with the new features you've been asking for for years. Let me know if this really rubs you wrong.
Risks
Loss of existing avatars (I can maybe mitigate this like I did with the staging instance for our new platform)
You'll have to use gravatar if you want an avatar, or if you change your current avatar.
The 600 attachments we have from the past 15+ years will likely be sunset. This amounts to ~3 a month, leading me to believe that this feature really isn't used that much anyways.
Voice Your Concerns or Ideas
I'm open to hear concerns, complaints, praise, or other ideas to solve this problem. I will take your feedback, but in the end it will be my decision.