Distributed Process Framework Runtime Plug-in Loading

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The development and deployment of both real-time and non-real-time distributed computing systems are inefficient, leading to high costs and prolonged market times, which hinders technological progress and innovation.

Innovation Solution

The SES Distributed Process Framework (SES-DPTM) employs a client-server model with stand-alone server plug-ins that can be loaded at runtime, providing a rapid development environment for server and client applications across multiple operating systems and hardware architectures, utilizing a simple and extensible client-server network protocol for efficient command and control interfaces.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional distributed computing systems are developed using conventional methods, then system functionality and reliability can be achieved, but development costs and time to market increase significantly

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

Solution Approach 1:

The system is divided into independent server plug-ins that can be developed, tested, and deployed separately. Each plug-in represents a modular functional unit that can be loaded into the server independently, allowing parallel development of different system components and reducing overall development time while maintaining system reliability through modular architecture

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Server plug-ins are developed and tested in advance as standalone components before being deployed to the production server. This preliminary development and testing phase allows bugs to be caught early, ensuring system reliability before deployment, while the pre-prepared nature of plug-ins accelerates the overall time to market

Inventive Principle:
Principle #10Preliminary action

2Reliability

If traditional distributed computing systems are developed using conventional methods, then system functionality can be achieved, but development costs increase significantly

Engineering Contradiction:
Improvesystem reliabilityVSAvoiddevelopment cost
Core Design Contradiction:
ReliabilityVSEase of manufacture

Solution Approach 1:

The server architecture provides universal support for multiple types of server plug-ins through a standardized interface and runtime environment. This universality allows a single server infrastructure to support multiple applications and services, reducing the need for separate development and deployment processes for each application, thereby lowering development costs while maintaining reliability through consistent architecture

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

Server plug-ins can be replicated and deployed across multiple server instances using the same binary artifacts. This copying approach eliminates the need for custom compilation and configuration on each server, reducing development and deployment costs while ensuring consistent and reliable behavior across the distributed system

Inventive Principle:
Principle #26Copying

3Productivity

If stand-alone server plug-ins are used that can be loaded at runtime, then development time and costs are reduced, but system complexity increases

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

Solution Approach 1:

The server provides an intermediary runtime environment that manages the loading, instantiation, and execution of server plug-ins. This intermediary layer handles the complexity of dynamic plugin management, allowing developers to focus on writing simple plug-in code while the server manages the complexity of integration, thereby improving productivity without requiring developers to manage system complexity

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system includes mechanism for clients to discover available server commands through the plug-in interface and for the server to provide feedback on command execution. This feedback mechanism simplifies the interaction model between clients and servers, making the system easier to use despite the underlying complexity of runtime plug-in loading and execution

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11693670B2Distributed process framework
Publication Date: 2023.07.04 SPENCE MARK
  • US11693670B2 patent drawing
  • US11693670B2 patent drawing
  • US11693670B2 patent drawing

AI summary

Providing a distributed processing framework. Initially, the process begins by building a server process plug-in by invoking a code generation module to generate required boilerplate and cross-platform code. Then commencing a server process by loading plug-in code and giving it a thread of control. In addition, client machines discovering the existence of a plug-in code being executed. Further, one or more client applications running on a client server at least issuing commands to the plug-in code, monitoring the events of the plug-in code, update the properties of the plug-in code without information regarding the plug-in interface.