A method, system, and application for virtual rendering of web page interaction based on a domestically developed IT server.
By introducing a collaborative architecture of process-level sandbox and central management module on the domestic IT innovation server, combined with virtual frame buffering and intelligent dynamic region encoding, the performance and isolation issues of web page access on the non-GUI domestic IT innovation server are solved, and an efficient and secure web application access experience is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- CHONGQING HONGJI LONGCHENG TECH CO LTD
- Filing Date
- 2026-04-28
- Publication Date
- 2026-07-31
AI Technical Summary
Existing technologies suffer from high performance overhead, strong network dependence, poor user data isolation, and complex multi-user concurrency management when accessing web pages on servers without a GUI, which restricts the promotion efficiency and user experience of B/S architecture applications in the context of domestic IT innovation.
It adopts a collaborative architecture of process-level sandbox and central management module, combined with virtual frame buffer and intelligent dynamic region encoding technology, to achieve highly isolated and low-bandwidth web application access. It completes web page rendering in the memory of the domestic IT server and pushes the rendering results to the front end in the form of optimized pixel stream, accurately capturing and mapping interactive events.
It enables high-performance, low-bandwidth web application access, ensures user data isolation and a smooth interactive experience, improves resource utilization and multi-user concurrent management efficiency, and meets the data security requirements of key areas such as government affairs and finance.
Smart Images

Figure CN122489174A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of information technology application innovation technology, and in particular to a method, system and application of virtual rendering web page interaction based on a domestically developed server. Background Technology
[0002] With the increasingly severe global information security situation and my country's ever-increasing demands for independent control over core technologies, the information technology application innovation (ITAI) industry has ushered in a golden age of vigorous development. The ITAI industry aims to achieve domestic substitution of software and hardware products and safeguard national information security by building an independent and controllable IT underlying architecture and standards. Against this backdrop, domestic operating systems, such as KylinOS and UOS, have been increasingly widely and deeply applied in critical infrastructure and vital sectors of the national economy, including e-government, core financial transactions, energy dispatching systems, and traffic command centers, thanks to their high security, high stability, and deep compatibility with domestic chips.
[0003] In actual production and deployment environments, driven by the pursuit of maximizing system stability, security, and resource utilization, these domestically developed servers often adopt a minimal installation mode. This means only the command-line interface (CLI) operating system kernel and necessary service components are installed, while the graphical user interface (GUI) and related complex graphics display services such as the X Window System are omitted. This "headless" server mode significantly reduces the potential attack surface and lowers the risk of security vulnerabilities. Simultaneously, it completely frees up valuable CPU and memory resources for core business processing, rather than for local graphics rendering, making it the mainstream deployment method for high-performance, high-security computing scenarios.
[0004] However, modern enterprises heavily rely on various information management systems based on browser / server (B / S) architecture. For example, office automation (OA) systems, enterprise resource planning (ERP) systems, customer relationship management (CRM) systems, and data visualization dashboards used for urban management and industrial monitoring all require web browsers to provide user interfaces. This creates a core contradiction: core business systems are deployed on highly secure, GUI-less servers, while users (such as civil servants, bank tellers, and dispatchers) need to operate and access these systems through graphical web interfaces.
[0005] To resolve this contradiction, traditional technological approaches primarily revolve around remote graphics display technology. Among these, two solutions are the most typical and widely used:
[0006] Option 1, X11 Forwarding, is based on the SSH protocol. When a user runs a graphical program on a local client, the program's display commands are not sent directly to the local monitor. Instead, they are forwarded through an encrypted SSH tunnel to the client machine running the X-Server, where the X-Server handles the final graphics rendering and display. While this option eliminates the need for a complete desktop environment on the server, its performance is heavily influenced by network latency and bandwidth. Every drawing command and every window component drawing requires network transmission. For dynamic rendering of complex web pages (such as Canvas and WebGL content), this generates a massive number of drawing commands, leading to severe lag in the interactive experience and failing to meet the smoothness requirements of daily office work and monitoring.
[0007] Option 2, Virtual Network Computing (VNC), is a more general remote desktop protocol. It involves running a VNC server on the server side, capturing screen changes, compressing the pixel data of the updated area, and sending it to the client's VNC viewer for display. While it's possible to launch a "virtual" desktop environment (such as Xvfb) on a server without a GUI, run a browser on it, and then access it via VNC, this approach has several inherent technical problems.
[0008] First, typical VNC services are desktop-oriented, meaning that multiple users connect to the same VNC session and see the same desktop, causing their operations to interfere with each other, which cannot meet the needs of multi-user isolation SaaS services.
[0009] Secondly, for the sake of compatibility, the VNC protocol itself is not optimized for modern dynamic web page interaction in terms of compression and transmission efficiency. High-resolution, high-refresh-rate web page content will consume extremely high network bandwidth.
[0010] Third, in terms of user management, the VNC solution lacks refined lifecycle management. When a user logs out, the background browser process and virtual desktop resources cannot be recycled in a timely manner, resulting in resource waste.
[0011] In summary, those skilled in the art urgently need a technical solution for webpage virtualization rendering and interaction based on domestically developed servers. Summary of the Invention
[0012] The core technical problem addressed by this invention is that existing technologies, when solving the problem of webpage access on GUI-less IT innovation servers, generally suffer from technical defects such as high performance overhead, strong network dependence, poor user data isolation, and complex multi-user concurrent management. These defects severely restrict the promotion efficiency and user experience of B / S architecture applications in the IT innovation environment, becoming a key "bottleneck" in the process of implementing the IT innovation ecosystem.
[0013] To address the aforementioned core technical challenges, this invention presents a method, system, and application for virtual rendering of web pages on a domestically developed IT server. The aim is to provide a high-performance, highly isolated, and low-bandwidth web application access solution on a completely user-uninterrupted domestically developed operating system. This method constructs an independent, process-isolated web page rendering engine service in the backend, performs virtual rendering of the web page in server memory, and pushes the rendering results to the frontend in an optimized pixel stream format. Simultaneously, it accurately captures frontend interaction events and maps them back to the corresponding rendering instances, thereby building an independent, secure, and efficient "virtual browser" session for each user. This fundamentally solves the problems of multi-user isolation, resource consumption, and interactive experience inherent in traditional solutions.
[0014] To achieve the above objectives, the specific technical solution of the present invention is a method for virtual rendering webpage interaction based on a domestically developed IT server, applied to a domestically developed IT server without a graphical interface, the method comprising:
[0015] In response to connection requests from user clients, an independent sandbox process is created through the central management module;
[0016] In the sandbox process, a web page rendering engine instance is started and a virtual frame buffer memory area is allocated to it. The web page rendering engine instance outputs the rendered web page graphic data to the virtual frame buffer memory area to form pixel data.
[0017] The encoding module reads the pixel data from the virtual frame buffer memory area, performs encoding processing, and then sends it to the user client for display via a custom streaming protocol.
[0018] Receive user input event data packets sent by the user client, the input event data packets containing session identifiers and event information;
[0019] The input distribution module routes the user input event data packet to the corresponding sandbox process based on the session identifier;
[0020] The input simulation module within the sandbox process converts the event information into input events that the web page rendering engine instance can recognize, thereby enabling remote interaction.
[0021] The process by which the encoding module reads pixel data from the virtual frame buffer memory area and performs encoding processing includes:
[0022] Detect the dynamically changing areas of pixel data in the virtual frame buffer memory area;
[0023] Only the pixel data in the dynamically changing region is compressed and encoded.
[0024] The central management module is also used to maintain a mapping table for an active sandbox instance, which records the correspondence between the process identifier, session identifier, and communication port of the sandbox instance.
[0025] The method further includes:
[0026] When a user client is detected to have disconnected or the session has timed out, the central management module forcibly terminates the corresponding sandbox process and reclaims the system resources it occupies.
[0027] The custom stream protocol is a WebSocket-based protocol.
[0028] A system for virtual rendering and webpage interaction based on a domestically developed IT application server, the system being used to implement the steps of the method, the system running on a domestically developed IT application server without a graphical interface, the system comprising:
[0029] The central management module is used to create and manage independent sandbox processes in response to connection requests from user clients;
[0030] At least one sandbox process, each sandbox process corresponds to a user session (i.e., user client), internally running a web page rendering engine instance, and associated with a virtual frame buffer memory area, used to render web page graphics in memory;
[0031] The encoding module is used to read pixel data from the virtual frame buffer memory area, encode it, and then send it to the user client through a custom streaming protocol.
[0032] The input distribution module is used to receive user input event data packets containing session identifiers sent by user clients, and to route them to the corresponding sandbox process according to the session identifiers;
[0033] The input simulation module, located within the sandbox process, is used to convert the event information in the routed user input event data packets into input events that can be recognized by the web page rendering engine instance.
[0034] The encoding module specifically includes:
[0035] A region detection unit is used to detect dynamically changing regions of pixel data in the virtual frame buffer memory area;
[0036] A compression encoding unit is used to compress and encode only the pixel data of the dynamically changing region.
[0037] The central management module is also used to maintain a mapping table of active sandbox instances and is responsible for forcibly terminating the corresponding sandbox process and reclaiming resources after a user disconnects or the session times out.
[0038] An electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the method.
[0039] A computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the steps of the method. Compared with the prior art, the technical solution disclosed in this application has the following non-obvious technical features:
[0040] First, this application adopts a collaborative architecture of process-level sandboxes and a central management module. Unlike the traditional approach of VNC running multiple browser windows on a single desktop environment, this invention introduces a collaborative architecture of a "central management module" and "sandbox processes." The management module is responsible for creating an independent operating system process-level sandbox for each user session and starting the rendering engine within the sandbox. This process-based rather than session-based isolation granularity ensures strong isolation of user data (such as cookies and LocalStorage). Simultaneously, the management module centrally manages the entire lifecycle of the sandbox (creation, scheduling, and destruction), achieving efficient scheduling and automatic reclamation of server resources, which is not available in traditional VNC or X11 solutions.
[0041] Secondly, this application implements a combination of "virtual frame buffer + intelligent dynamic region encoding" technology in a GUI-free environment. This combination does not simply use general-purpose virtual frame buffer tools like Xvfb; its innovation lies in the deep coupling of the virtual frame buffer with an "intelligent dynamic region detection" encoding module. This module does not simply perform timed screenshots and encoding of the entire screen, but rather analyzes pixel changes in the memory buffer, intelligently identifies dynamically changing regions (such as mouse movement and animation refresh), and performs targeted compression encoding only on these regions (e.g., selecting different compression algorithms based on region characteristics), and then pushes the data through a custom streaming protocol (such as WebSocket). This proactive content-aware and targeted processing mechanism offers a significant improvement in network bandwidth consumption and screen smoothness compared to the passive screenshotting of VNC.
[0042] Third, this application features a precise mapping and closed-loop feedback mechanism for input events, implementing an input event routing mechanism based on session IDs. Mouse clicks, keyboard inputs, and other events captured by the client are not sent to a shared desktop, but are precisely routed to the corresponding sandbox process by the server's input distribution module based on the session ID. The input simulation module within the sandbox then injects the events into the browser instance within this isolated environment. This process establishes a precise closed-loop mapping of "client operation -> server-specific sandbox -> browser within the sandbox," ensuring complete logical and physical isolation and non-interference between concurrent operations of multiple users.
[0043] Fourth, this application has a deep adaptation and optimization mechanism for the domestic IT innovation environment. It is designed for the specific scenario of a domestic IT innovation server (domestic operating system + domestic CPU architecture, such as ARM, LoongArch, etc.) without a GUI environment. It has deeply adapted the process isolation mechanism and memory management method of the domestic operating system and optimized the rendering engine and encoding algorithm for the instruction set of the domestic CPU. This vertical optimization for a specific software and hardware stack makes its performance and stability in the domestic IT innovation environment far superior to general solutions (such as the simple porting of X11 / VNC in the domestic IT innovation environment).
[0044] Compared with the prior art, the present invention has the following beneficial effects: 1. The present invention has the feature of strong data isolation, which greatly improves security. Through the sandbox isolation at the operating system process level, a completely independent running environment is created for each user session. Cookies, browsing history and cached data between different users are strictly isolated, which fundamentally eliminates data leakage and mutual interference between users and meets the high standard requirements for data security in key areas such as government affairs and finance.
[0045] 2. This invention effectively saves bandwidth while ensuring a smooth interactive experience. It adopts "virtual frame buffer + intelligent dynamic region detection" technology, which transmits updated data only when the screen area changes, and uses an efficient compression algorithm to greatly reduce network bandwidth consumption. Even in a network environment with limited bandwidth, it can provide users with a smooth web page interactive experience with high refresh rate and low latency.
[0046] 3. This invention features high resource utilization and a concurrent management mechanism. The central management module enables fine-grained lifecycle management of sandbox instances. Resources are created on demand when a user connects and are immediately reclaimed when the user disconnects, avoiding long-term ineffective occupation of server CPU and memory. At the same time, the process-level isolation method is more lightweight than virtual machine-level isolation, allowing higher density of concurrent user access to be supported on a single physical server.
[0047] 4. The deployment of this invention is convenient and universal. Users do not need to install any dedicated browser plugins or VNC clients locally; only a standard modern browser (Chrome, Firefox, etc.) is required to access the virtualized web application on the server via standard protocols such as WebSocket. This makes the deployment and use of the solution extremely convenient, with good cross-platform compatibility and universality. (See attached figures for details.)
[0048] Figure 1 This is a flowchart of the method described in Embodiment 1 of the present invention;
[0049] Figure 2 This is a schematic diagram of the system described in Embodiment 2 of the present invention;
[0050] Figure 3 This is a coordinate graph of the captured event relative to the visible area of the webpage in the method described in Embodiment 1 of the present invention. Detailed Implementation
[0051] The embodiments of the present invention will now be described in detail with reference to the accompanying drawings;
[0052] Example 1:
[0053] A method for virtual rendering of web page interaction based on a domestically developed IT server, the process of which is as follows: Figure 1 As shown, this embodiment details the implementation process of a user accessing a data visualization dashboard application deployed on a domestic IT innovation server without a graphical interface through a browser on their local computer. The specific steps are as follows:
[0054] Step 1: The user initiates a connection request:
[0055] Assume that the server program of this invention is deployed on a domestic IT innovation server (operating system is Galaxy Kylin V10, CPU is Phytium FT-2000+ / 64). The server program runs in the background as a daemon process, listening on a preset port (such as 8080). The user opens the Chrome browser on a Windows PC in the office, enters the URL of the server in the address bar and presses Enter.
[0056] Step 2: Create a sandbox instance in the central management module:
[0057] (1) The user client's request reaches the server via WebSocket. The server's central management module receives this new connection request;
[0058] (2) The central management module first checks the current CPU and memory load of the server to confirm that there are enough resources to create a new service instance;
[0059] (3) The central management module calls the operating system's fork() and execve() system calls to create a new child process as a sandbox process; at the same time, it uses Linux's namespace and control group (Cgroups) technology to create independent namespaces such as PID, network, and mount point for the new process, and limits its resource usage (such as a maximum memory of 500MB and a CPU share of 50%) to achieve process-level resource isolation and limitation.
[0060] (4) After the sandbox process starts, it initializes a headless Chromium browser instance as the web page rendering engine. The central management module assigns a unique session ID to the sandbox, such as "session_001", and maintains a mapping table in memory to record the "session ID: session_001" corresponding to "process PID: 12345".
[0061] Step 3, Virtualization Rendering and Frame Buffer Output:
[0062] (1) The Chromium instance within the sandbox process receives the task of loading the URL (the application is running in another process).
[0063] (2) Chromium begins to parse, lay out and draw the data visualization dashboard page. Since it is running in headless mode, its rendering output is directly directed to a virtual frame buffer allocated in memory by the operating system (for example, using / dev / shm shared memory to create a buffer of size 1920x1080x4 bytes).
[0064] (3) When the dynamic chart on the page starts to refresh, Chromium continuously draws new pixel data into this memory buffer.
[0065] Step 4, Intelligent Encoding and Push:
[0066] (1) The server-side encoding module scans this memory buffer at a frequency of 30 times per second;
[0067] (2) At a certain moment, it detects that new pixels have been generated (color change) in the curve area representing "CPU load" on the screen, while other static parts of the page (such as title and legend) have not changed;
[0068] (3) The encoding module intelligently cropped out this dynamically changing rectangular area and compressed and encoded its pixel data using a compression algorithm suitable for images (such as WebP);
[0069] (4) The encoding module encapsulates the compressed data in a custom protocol packet containing the coordinates (x, y, width, height) and image data of the updated area. This packet is pushed to the user's Chrome browser through the WebSocket connection established for the session.
[0070] Step 5: Input event capture and postback:
[0071] (1) Users saw a real-time refreshed visual screen on the Chrome browser;
[0072] (2) The user moves the mouse to a "Filter" button on the screen and clicks the left mouse button;
[0073] (3) The client-side JavaScript program captures the mouse click event, obtains the coordinates of the event relative to the visible area of the webpage (e.g., x=150px, y=200px) and the event type (click), such as Figure 3 As shown. The program packages this information along with the previously established session ID "session_001" into a lightweight JSON data packet and sends it back to the server via a WebSocket connection;
[0074] Step 6: Input event dispatch and simulated injection:
[0075] (1) The input distribution module on the server side receives the data packet and parses out the session ID "session_001";
[0076] (2) The input distribution module queries the mapping table maintained by the central management module, finds the sandbox process PID corresponding to “session_001” as “12345”, and forwards the data packet to the sandbox process through inter-process communication (such as Unix Domain Socket);
[0077] (3) The input simulation module (a component listening on a specific port) in the sandbox process receives the data packet and parses out the event coordinates and type;
[0078] (4) The input simulation module calls the DevTools Protocol interface provided by Chromium to accurately inject the received mouse events into the running browser instance, simulating a mouse click at coordinates (150, 200);
[0079] Step 7: Interaction loop complete:
[0080] (1) The Chromium instance receives the injected click event, and the internal logic processes the event, triggering a click action on the page;
[0081] (2) The click action causes changes to elements on the page;
[0082] (3) The process from step 3 to step 6 is repeated again, and the new screen changes are encoded and pushed to the client, thus realizing a complete, low-latency remote interaction closed loop.
[0083] Step 8: Session End and Resource Reclamation
[0084] When a user closes a browser tab or remains inactive for an extended period (timeout), the server detects that the WebSocket connection has been broken. The central management module finds the corresponding sandbox process PID "12345" according to the mapping table, sends a SIGTERM signal to it to forcibly terminate the process, and removes the record from the kernel's process table. The operating system then reclaims all memory and CPU resources used by the process, preparing for the next user session.
[0085] Example 2:
[0086] A system for virtual rendering of web page interaction based on a domestically developed IT server, the structure of which is as follows: Figure 2 As shown, the system runs on a domestic IT innovation server without a graphical interface and is able to implement the steps of the method described in Embodiment 1. The system includes:
[0087] The central management module is used to create and manage independent sandbox processes in response to connection requests from user clients;
[0088] At least one sandbox process, each sandbox process corresponds to a user session (i.e., user client), internally running a web page rendering engine instance, and associated with a virtual frame buffer memory area, used to render web page graphics in memory;
[0089] The encoding module is used to read pixel data from the virtual frame buffer memory area, encode it, and then send it to the user client through a custom streaming protocol.
[0090] The input distribution module is used to receive user input event data packets containing session identifiers sent by user clients, and to route them to the corresponding sandbox process according to the session identifiers;
[0091] The input simulation module, located within the sandbox process, is used to convert the event information in the routed user input event data packets into input events that can be recognized by the web page rendering engine instance.
[0092] The encoding module specifically includes:
[0093] A region detection unit is used to detect dynamically changing regions of pixel data in the virtual frame buffer memory area;
[0094] A compression encoding unit is used to compress and encode only the pixel data of the dynamically changing region.
[0095] The central management module is also used to maintain a mapping table of active sandbox instances and is responsible for forcibly terminating the corresponding sandbox process and reclaiming resources after a user disconnects or the session times out.
[0096] Example 3:
[0097] An electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of the method described in Embodiment 1.
[0098] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, the phrase "comprising an element defined as..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0099] The above technical solutions only embody the preferred technical solutions of the present invention. Any modifications that may be made by those skilled in the art to certain parts thereof embody the principles of the present invention and fall within the protection scope of the present invention.
Claims
1. A method for rendering webpage interaction based on a Xinyuan server virtualization, characterized in that, The method, applied to domestically developed servers without a graphical user interface, includes: In response to connection requests from user clients, an independent sandbox process is created through the central management module; In the sandbox process, a web page rendering engine instance is started and a virtual frame buffer memory area is allocated to it. The web page rendering engine instance outputs the rendered web page graphic data to the virtual frame buffer memory area to form pixel data. The encoding module reads the pixel data from the virtual frame buffer memory area, performs encoding processing, and then sends it to the user client for display via a custom streaming protocol. Receive user input event data packets sent by the user client, the input event data packets containing session identifiers and event information; The input distribution module routes the user input event data packet to the corresponding sandbox process based on the session identifier; The input simulation module within the sandbox process converts the event information into input events that the web page rendering engine instance can recognize, thereby enabling remote interaction.
2. The method of claim 1, wherein, The process by which the encoding module reads pixel data from the virtual frame buffer memory area and performs encoding processing includes: Detect the dynamically changing areas of pixel data in the virtual frame buffer memory area; Only the pixel data in the dynamically changing region is compressed and encoded.
3. The method of claim 1, wherein, The central management module is also used to maintain a mapping table for an active sandbox instance, which records the correspondence between the process identifier, session identifier, and communication port of the sandbox instance.
4. The method of claim 1, wherein, Also includes: When a user client is detected to have disconnected or the session has timed out, the central management module forcibly terminates the corresponding sandbox process and reclaims the system resources it occupies.
5. The method of claim 1, wherein, The custom stream protocol is a WebSocket-based protocol.
6. A system for rendering web page interaction based on a Xinyuan server virtualization, the system is used to implement the steps of the method of any one of claims 1 to 5, characterized in that, The system runs on a domestic IT innovation server without a graphical interface, and the system includes: The central management module is used to create and manage independent sandbox processes in response to connection requests from user clients; At least one sandbox process, each sandbox process corresponds to a user session, internally runs a web page rendering engine instance, and is associated with a virtual frame buffer memory area for rendering web page graphics in memory; The encoding module is used to read pixel data from the virtual frame buffer memory area, encode it, and then send it to the user client through a custom streaming protocol. The input distribution module is used to receive user input event data packets containing session identifiers sent by user clients, and to route them to the corresponding sandbox process according to the session identifiers; The input simulation module, located within the sandbox process, is used to convert the event information in the routed user input event data packets into input events that can be recognized by the web page rendering engine instance.
7. The system of claim 6, wherein, The encoding module specifically includes: A region detection unit is used to detect dynamically changing regions of pixel data in the virtual frame buffer memory area; A compression encoding unit is used to compress and encode only the pixel data of the dynamically changing region.
8. The system of claim 6, wherein, The central management module is also used to maintain a mapping table of active sandbox instances and is responsible for forcibly terminating the corresponding sandbox process and reclaiming resources after a user disconnects or the session times out.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 5.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 5.