SYSTEM AND METHOD FOR ZERO BUFFER COPYING IN A MIDDLEWARE ENVIRONMENT
First Claim
1. A system for zero buffer copying, comprising:
- one or more high performance computing systems, each including one or more processors and a high performance memory;
a user space, which includes a Java virtual machine (JVM) and one or more application server instances;
a plurality of byte buffers accesible to the JVM and the one or more application server instances; and
wherein when a request is received by a first application server instancedata associated with the request is stored in a heap space associated with the JVM,the JVM pins the portion of the heap space where the data is stored,the data is pushed to a first byte buffer where it is accessed by the first application server instance,a response is generated by the first application server using the data, andthe response is sent by the first application server.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods are provided for zero buffer copying. In accordance with an embodiment, such a system can include one or more high performance computing systems, each including one or more processors and a high performance memory. The system can further include a user space, which includes a Java virtual machine (JVM) and one or more application server instances. Additionally, the system can include a plurality of byte buffers accesible to the JVM and the one or more application server instances. When a request is received by a first application server instance data associated with the request is stored in a heap space associated with the JVM, and the JVM pins the portion of the heap space where the data is stored. The data is pushed to a first byte buffer where it is accessed by the first application server instance. A response is generated by the first application server using the data, and the response is sent by the first application server.
3 Citations
15 Claims
-
1. A system for zero buffer copying, comprising:
-
one or more high performance computing systems, each including one or more processors and a high performance memory; a user space, which includes a Java virtual machine (JVM) and one or more application server instances; a plurality of byte buffers accesible to the JVM and the one or more application server instances; and wherein when a request is received by a first application server instance data associated with the request is stored in a heap space associated with the JVM, the JVM pins the portion of the heap space where the data is stored, the data is pushed to a first byte buffer where it is accessed by the first application server instance, a response is generated by the first application server using the data, and the response is sent by the first application server. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A method for zero buffer copying, comprising:
-
providing one or more high performance computing systems, each including one or more processors and a high performance memory; providing a user space, which includes a Java virtual machine (JVM) and one or more application server instances; providing a plurality of byte buffers accesible to the JVM and the one or more application server instances; and receiving a request by a first application server instance; storing data associated with the request in a heap space associated with the JVM; pinning, by the JVM, a portion of the heap space where the data is stored; pushing the data to a first byte buffer where it is accessed by the first application server instance; generating a response, by the first application server, using the data; and sending the response by the first application server. - View Dependent Claims (7, 8, 9, 10)
-
-
11. A non-transitory computer readable storage medium including instructions stored thereon which, when executed by a computer, cause the computer to perform the steps of:
-
providing one or more high performance computing systems, each including one or more processors and a high performance memory; providing a user space, which includes a Java virtual machine (JVM) and one or more application server instances; providing a plurality of byte buffers accesible to the JVM and the one or more application server instances; and receiving a request by a first application server instance; storing data associated with the request in a heap space associated with the JVM; pinning, by the JVM, a portion of the heap space where the data is stored; pushing the data to a first byte buffer where it is accessed by the first application server instance; generating a response, by the first application server, using the data; and sending the response by the first application server. - View Dependent Claims (12, 13, 14, 15)
-
Specification