Skip to content

Commit 8431f2f

Browse files
2 parents 5215011 + 4910960 commit 8431f2f

File tree

1 file changed

+8
-48
lines changed

1 file changed

+8
-48
lines changed

README.md

+8-48
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,6 @@ HyperCache is developed in **Microsoft Visual Studio Enterprise 2022 (64-bit) -
1313
- **MSSQL**: Ensures data persistence with SQL Server.
1414
- **Scalable Architecture**: Designed for ease of use and scalability in enterprise environments.
1515

16-
## Minimum Requirements
17-
The mentioned versions in the project are the latest available at the time of development. The minimum versions required are based on the dependencies of the Delta NuGet package and Blazor. Please refer to the [Delta NuGet Package](https://www.nuget.org/packages/Delta) for specific minimum version requirements.
18-
1916
## Benefits of Using the Delta Package
2017
Using the Delta package improves the efficiency of API responses by sending only the changes instead of the entire dataset. This results in:
2118
- **Reduced payload size**: Only the modified or new data is transmitted.
@@ -27,23 +24,24 @@ Using the Delta package improves the efficiency of API responses by sending only
2724

2825
| Metric | Before Implementation (1M Rows) | After Implementation (1M Rows) |
2926
|----------------------------|----------------------|----------------------|
30-
| **Total Requests** | 10 | 14 |
27+
| **Total Requests** | 10 | 14 (Demonstration Purpose) |
3128
| **Request Method** | GET | GET |
32-
| **Initial Request Time (s)** | 3.58s - 3.67s | **5.90s** |
29+
| **Initial Request Time (s)** | 3.58s - 3.67s | **5.90s** (Due to first-time data retrieval, cache index setup, and rowversion tracking) |
3330
| **Subsequent Request Times (ms)** | 3.58s - 3.67s | **58ms, 12ms, 9ms, 7ms, 6ms, 7ms, 9ms, 6ms, 8ms** |
3431
| **Total Data Transferred (KB)** | 9.3 KB | 7.2 KB |
3532
| **Status Code Consistency**| 200 OK | 200 OK |
3633
| **Protocol Used** | h2 | h2 |
3734

3835
## Response Time Comparison Before And After Delta Implementation
3936

37+
### Performance Metrics Visualization:
38+
![Performance Metrics](Screenshots/Metrics.png)
39+
4040
### Before Implementation:
41-
![Before Implementation](Before%20Implementation.png)
41+
![Before Implementation](Screenshots/Before%20Implementation.png)
4242

4343
### After Implementation:
44-
![After Implementation - 1](after%20Implementation%20-%201.png)
45-
![After Implementation - 2](after%20Implementation%20-%202.png)
46-
![After Implementation - 3](after%20Implementation%20-%203.png)
44+
![After Implementation - 1](Screenshots/after%20Implementation%20-%201.png)
4745

4846
## Installation
4947
Follow these steps to set up the HyperCache project:
@@ -58,7 +56,7 @@ Follow these steps to set up the HyperCache project:
5856

5957
3. Restore the required NuGet packages:
6058
- Delta
61-
- Entity Framework Core 9.0
59+
- Entity Framework Core 9.0 etc.
6260

6361
NuGet package restoration can be performed by running:
6462
```bash
@@ -82,49 +80,11 @@ Follow these steps to set up the HyperCache project:
8280
dotnet run
8381
```
8482

85-
## Project Structure
86-
The HyperCache project is organized as follows:
87-
88-
- **Data**: Contains the database context and entity models.
89-
- **Services**: Implements business logic and caching services.
90-
- **UI**: Includes Blazor components for the user interface.
91-
- **Infrastructure**: Handles configurations and utility functions.
92-
- **Migrations**: Tracks database schema changes.
93-
9483
## Usage
95-
1. **Define Entities**: Add your models to the `Data` folder. Example:
96-
```csharp
97-
public class CacheEntry {
98-
public int Id { get; set; }
99-
public string Key { get; set; }
100-
public string Value { get; set; }
101-
}
102-
```
10384

104-
2. **Update the Database**: Run the following commands after modifying your entities:
105-
```bash
106-
dotnet ef migrations add MigrationName
107-
dotnet ef database update
108-
```
109-
110-
3. **Integrate Caching Service**: Use the provided caching service in your business logic. Example:
111-
```csharp
112-
var cachedValue = _cacheService.Get("key");
113-
if (cachedValue == null) {
114-
cachedValue = "newValue";
115-
_cacheService.Set("key", cachedValue);
116-
}
117-
```
11885

11986
4. **Build the Blazor UI**: Use Blazor components for interactive user interfaces.
12087

121-
## Technologies Used
122-
- **.NET 9.0**: Framework for developing the application.
123-
- **Entity Framework Core 9.0**: ORM for database access.
124-
- **Blazor**: Modern framework for building UI.
125-
- **MSSQL**: Database backend.
126-
- **Delta NuGet Package**: Provides lightweight caching mechanisms.
127-
12888
## Summary of Delta Package Implementation
12989

13090
### **Performance Gains**

0 commit comments

Comments
 (0)