NerdDinner has evolved from a legacy monolith to an easily scalable, easily extensible solution running on a modern application platform using modern design patterns. It's been a fast and low-risk evolution, powered by the Docker platform and container-first design.
The project started by migrating NerdDinner to Docker as-is, running one container for the web application and one for the SQL Server database. Now I have ten components running in containers. Five are running my custom code:
- The original ASP.NET NerdDinner web application
- The new ASP.NET Core web homepage
- The new .NET Framework save-dinner message handler
- The new .NET Core index-dinner message handler
- The new ASP.NET Core dinners API
Four are enterprise-grade open source technologies:
- Traefik reverse proxy
- NATS message queue
- Elasticsearch document database
- Kibana analytics...