All Videos

Dapr Day: Dapr & Kubernetes at SharperImage.com - Experiences from the Trenches

Diagrid's Alice Gibbons and Sharperimage.com's Aaron Olds talk about the realities of running Dapr on Kubernetes in production - challenges and solutions.

Scaling E-commerce with Dapr: SharperImage.com's Journey to 80,000 Daily Orders

A deep dive into how SharperImage.com transformed their e-commerce platform using Dapr, as shared at Dapr Day 2024. Let's explore how they handle massive scale while reducing operational complexity.

The Commerce Cloud Architecture [07:32]

SharperImage.com's Commerce Cloud is an impressive operation:

  • Processing 80,000+ daily orders during peak periods
  • 70+ microservices running on Kubernetes
  • AWS Lambda integration for specific services
  • Hosted on AWS EKS with sophisticated routing through NGINX

The Migration to Dapr [09:36]

Before Dapr, the team wrestled with:

  • Complex gRPC service-to-service communication
  • Custom-built frameworks
  • Complicated SQL Server configurations

After implementing Dapr:

  • Simplified service-to-service invocation
  • Seamless cross-stack communication
  • Built-in mTLS encryption
  • Integrated telemetry routing to Zipkin (dev) and Datadog (prod)

Securing the Platform [10:51]

Security got a major upgrade:

  • Centralized secret management through Kubernetes
  • AWS Parameter Store integration
  • KMS key encryption
  • External Secrets for environment synchronization

The Outbox Pattern Evolution [11:28]

Their journey with the outbox pattern showcases Dapr's flexibility:

  • Initial implementation using Dapr state management with DynamoDB
  • Lambda functions triggered by DynamoDB changes
  • Current POC using Dapr's native outbox feature
  • Mix of raw messages and Cloud Events

Performance Improvements [13:24]

The numbers tell a compelling story:

  • 99% reduction in CPU usage
  • Eliminated instance registration issues
  • Improved scaling capabilities
  • Enhanced message processing reliability

Monitoring and Resilience [14:43]

The new setup provides:

  • Comprehensive monitoring through Datadog
  • DiagGrid Conductor integration
  • High availability during traffic spikes
  • Balanced resource utilization

Learning Opportunities [16:05]

Key lessons learned:

  • Understanding Dapr component scoping
  • Proper gRPC and pub/sub configuration
  • Community support for quick problem resolution
  • Importance of configuration validation

The Bottom Line [17:32]

The migration to Dapr delivered clear benefits:

  • Dramatic reduction in resource usage
  • Improved developer efficiency
  • Enhanced platform resilience
  • Simplified microservice architecture

CPU Usage Deep Dive [19:26]

The dramatic CPU reduction came from:

  • Eliminating infinite loops in their custom framework
  • Offloading responsibility to Dapr sidecar
  • Reducing service instance counts
  • More efficient message processing

Want to achieve similar results? The Dapr community is ready to help you transform your distributed systems just like SharperImage.com did.

Follow @diagridio for more real-world Dapr implementation stories!