Hybrid Client-Server Click Tracking Links

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing web tracking systems face challenges in efficiently logging user interactions without impacting performance, particularly in preserving click data during navigation and ensuring timely reporting of resource usage information.

Innovation Solution

A web server generates or modifies web pages to include both client-side and server-side click tracking links, allowing for asynchronous logging of user interactions and synchronous reporting of resource usage, while maintaining a separation of code for tracking and reporting mechanisms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If client-side click tracking code is added to web pages, then click tracking capability is improved, but page loading time and processing complexity increase

Engineering Contradiction:
Improveclick tracking capabilityVSAvoidpage loading time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary classification of resources during the resource request phase, identifying which resources require client-side tracking before the actual web page is rendered. This allows tracking code to be prepared in advance and injected only where needed, avoiding unnecessary processing delays for all page elements.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of adding tracking code to all web pages uniformly, the system applies client-side tracking selectively only to specific resources that are classified as requiring tracking. This localized approach reduces the overall tracking code footprint and minimizes impact on page loading performance while maintaining tracking capability for important resources.

Inventive Principle:
Principle #3Local quality

2Loss of information

If comprehensive click tracking is implemented, then user interaction data collection is improved, but system complexity and processing overhead increase

Engineering Contradiction:
Improveclick data preservationVSAvoidtracking system complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The tracking system is segmented into distinct components: resource classification mechanisms, client-side tracking code injection, server-side logging, and data processing pipelines. Each component handles a specific aspect of tracking independently, reducing overall system complexity while enabling comprehensive click data collection through coordinated operation of these modular elements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system introduces intermediary elements such as tracking pixels, event listeners, and data intermediaries that facilitate click tracking without requiring complex integration throughout the entire system. These intermediaries act as standardized interfaces between user interactions and the tracking infrastructure, simplifying the overall architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Speed

If asynchronous tracking is used, then navigation performance is improved, but data reporting timeliness deteriorates

Engineering Contradiction:
Improvenavigation performanceVSAvoidreporting timeliness
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The system implements periodic flushing mechanisms where accumulated click tracking data is asynchronously buffered during navigation and then periodically synchronized to the server. This periodic action maintains asynchronous performance benefits during user navigation while ensuring timely data reporting at regular intervals, balancing both navigation speed and reporting timeliness.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

Click tracking data is captured and buffered preliminarily in client-side storage during navigation operations, allowing navigation to proceed without immediate server communication delays. The preliminary buffering enables subsequent batch reporting that maintains data timeliness while preserving navigation performance.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9432482B2Asynchronous and synchronous resource links
Publication Date: 2016.08.30 GOOGLE LLC
  • US9432482B2 patent drawing
  • US9432482B2 patent drawing
  • US9432482B2 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for providing asynchronous and synchronous links to resources. According to one example implementation, a method includes receiving a request for a resource, identifying resources to be referenced by the requested resource, and identifying one or more of the referenced resources that are associated with client-side click tracking, and one or more of the referenced resources that are associated with server-side click tracking. The method also includes providing the requested resource. The provided resource includes one or more client-side click tracking links to the referenced resources that are associated with client-side click tracking, and one or more server-side click tracking links to the referenced resources that are associated with server-side click tracking.