Service Proxy Redirects Requests for Local Development Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Software development in service-oriented architecture environments is time-consuming and inefficient due to the need for multiple iterations of deploying and testing development code in a service provider environment, leading to high resource utilization and costs.

Innovation Solution

Implementing a service proxy on a software development host that simulates services from a service provider environment, allowing developers to test and debug development code locally, redirecting service requests and event notifications to either the proxy or the actual service, thereby reducing the need for frequent deployments to the service provider environment.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If development code is deployed to service provider environment for testing, then code reliability is improved, but development time and resource usage increase

Engineering Contradiction:
Improvecode reliabilityVSAvoiddevelopment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent creates a copy of the service provider environment's service by implementing a service proxy that simulates the service's behavior, interface, and responses. This allows development code to be tested locally against the copied service rather than requiring deployment to the actual service provider environment, thereby maintaining code reliability validation while reducing development time and resource usage.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent segments the testing function from the service provider environment by introducing a service proxy that handles testing operations independently. The service proxy is configured to receive service requests from development code and return simulated responses, separating the testing workflow from the production service environment and enabling parallel local testing.

Inventive Principle:
Principle #1Segmentation

2Reliability

If development code is deployed to service provider environment for testing, then code reliability is improved, but resource usage and costs increase

Engineering Contradiction:
Improvecode reliabilityVSAvoidresource usage
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The service proxy creates a local copy of the service provider's service, allowing development code to be tested against this copy instead of deploying to the actual service environment. This copying approach maintains the ability to validate code reliability while significantly reducing resource usage by eliminating the need for production environment deployment during testing iterations.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The service proxy enables the development system to service its own testing needs independently without requiring access to the service provider environment. The proxy is configured locally and can handle service requests and return responses autonomously, allowing the development workflow to be self-sufficient during testing phases.

Inventive Principle:
Principle #25Self-service

3Productivity

If service proxy is implemented to simulate service, then development efficiency is improved, but system complexity increases

Engineering Contradiction:
Improvedevelopment efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The service proxy acts as an intermediary component that sits between the development code and the service provider environment. It receives service requests from development code, processes them locally using simulated logic, and returns appropriate responses. This intermediary approach improves development efficiency by enabling local testing while managing system complexity through a well-defined interface and configuration mechanism.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10649768B1Development code execution using a service proxy
Publication Date: 2020.05.12 AMAZON TECH INC
  • US10649768B1 patent drawing
  • US10649768B1 patent drawing
  • US10649768B1 patent drawing

AI summary

A technology is described for redirecting a service request to a service proxy on a software development host. An example method may include receiving a service request directed to a service hosted in a service provider environment. In receiving the service request, a determination may be made that a service proxy simulates the service on a software development host, and that the service proxy may be used to execute development code on the software development host. In response, the service request may be redirected to the service proxy on the software development host for handling of the service request.