Skip to content

Modernize Partition-Aware Routing sample to demonstrate the pattern without Service Fabric dependencies #8097

@jasontaylordev

Description

@jasontaylordev

Relates to https://github.com/Particular/CloudPlatformExperience/pull/750.

The Service Fabric Partition-Aware Routing sample (removed in #8119) demonstrated valuable partition-aware routing patterns, including:

  • Sender-side and receiver-side distribution strategies
  • Partition-key header inspection and message body inspection
  • Routing patterns for send, send local, publish/subscribe, request/reply, and timeout operations

These patterns are applicable to any stateful routing scenario (e.g., Kubernetes stateful sets with workers that need partition-affine routing), not just Service Fabric. However, the sample currently depends on both Service Fabric hosting and the sunset NServiceBus.Persistence.ServiceFabric component.

Proposal

Lift the sample out of Service Fabric and simplify it to focus purely on demonstrating the partition-aware routing patterns.

Consider using the Learning Transport and Learning Persistence to show the pattern without infrastructure dependencies, making it easier to understand and adapt to any hosting scenario.

Tasks

  • Remove Service Fabric hosting dependencies
  • Switch to Learning Transport and Learning Persistence
  • Preserve the core routing infrastructure and patterns
  • Update documentation to emphasize the pattern's applicability to any partitioned/sharded system
  • Rename/relocate the sample as appropriate

Metadata

Metadata

Assignees

No one assigned

    Labels

    CloudCloud related issue

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions