Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dev: remove pub/sub architecture #72

Open
EvolveArt opened this issue Jan 22, 2025 · 0 comments
Open

dev: remove pub/sub architecture #72

EvolveArt opened this issue Jan 22, 2025 · 0 comments

Comments

@EvolveArt
Copy link
Contributor

Simplify Indexer Service Architecture

Problem

Current architecture is over-engineered for the use case, using SQS queues for rare operations like creating/starting/stopping indexers. This adds unnecessary complexity and infrastructure requirements.

Proposed Changes

  • Remove all SQS-related code and configurations
  • Remove the entire consumer pattern
  • Create a new IndexerService struct to handle operations directly:
  • Update API Handlers
  • Streamline error types for direct operations
  • Remove SQS-related test setup
  • Simplify test cases to focus on direct service operations
  • Update integration tests to remove queue checks
  • Infrastructure Updates
  • Remove LocalStack SQS configuration
  • Update deployment configurations to remove SQS permissions/setup
  • Simplify local development setup

Benefits

  • Simpler codebase
  • Easier to understand and maintain
  • Reduced infrastructure requirements
  • Simpler local development
  • More direct error handling
  • Fewer dependencies

Migration Steps

  1. Create new service structure
  2. Update tests
  3. Remove old code once new implementation is verified
  4. Update documentation

Breaking Changes

  • API behavior will change from async to sync for some operations
  • Deployment requirements will change (no SQS needed)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant