-
-
Notifications
You must be signed in to change notification settings - Fork 1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
28 changed files
with
111 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
--- | ||
last_modified_on: "2022-12-03" | ||
$schema: "/.meta/.schemas/highlights.json" | ||
title: "Release of gnet v2.2.0" | ||
description: "Release of the official stable version of v2.2.0" | ||
author_github: "https://github.com/panjf2000" | ||
pr_numbers: [d9024a0] | ||
release: "2.2.0" | ||
hide_on_release_notes: false | ||
tags: ["type: tag", "domain: v2.2.0"] | ||
--- | ||
|
||
![](/img/gnet-v2-2-0.jpg) | ||
|
||
The release of [v2.2.0](https://github.com/panjf2000/gnet/releases/tag/v2.2.0) predominantly focuses on bug fixes and feature implementations. | ||
|
||
It's worth noting that breaking changes have been made to the API, so please refer to the [release notes](https://github.com/panjf2000/gnet/releases/tag/v2.2.0) for more information. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
--- | ||
last_modified_on: "2023-07-01" | ||
$schema: "/.meta/.schemas/highlights.json" | ||
title: "Release of gnet v2.3.0" | ||
description: "Release of the official stable version of v2.3.0" | ||
author_github: "https://github.com/panjf2000" | ||
pr_numbers: [59a3c61] | ||
release: "2.3.0" | ||
hide_on_release_notes: false | ||
tags: ["type: tag", "domain: v2.3.0"] | ||
--- | ||
|
||
## Intro | ||
|
||
The two major updates in this official release are [#460](https://github.com/panjf2000/gnet/pull/460) and [#461](https://github.com/panjf2000/gnet/pull/461). | ||
|
||
We introduced a new data structure `matrix` in [#460](https://github.com/panjf2000/gnet/pull/460) to displace the default `map` for managing connections internally, with the help of this new data structure, we can eliminate the pointers in `map` and store connections in the form of a matrix (an array of slices), which will significantly reduce GC (Garbage Collection) latency: | ||
|
||
```bash | ||
goos: darwin | ||
goarch: arm64 | ||
pkg: github.com/panjf2000/gnet/v2 | ||
│ old │ new │ | ||
│ sec/op │ sec/op vs base │ | ||
GC4El100k/Run-4-eventloop-100000-10 30.74m ± 3% 19.68m ± 10% -35.98% (p=0.000 n=10) | ||
GC4El200k/Run-4-eventloop-200000-10 63.64m ± 3% 38.16m ± 11% -40.04% (p=0.000 n=10) | ||
GC4El500k/Run-4-eventloop-500000-10 177.28m ± 8% 95.21m ± 4% -46.29% (p=0.000 n=10) | ||
geomean 70.26m 41.51m -40.92% | ||
|
||
│ old │ new │ | ||
│ B/op │ B/op vs base │ | ||
GC4El100k/Run-4-eventloop-100000-10 27.50 ± 35% 25.50 ± 33% ~ (p=0.423 n=10) | ||
GC4El200k/Run-4-eventloop-200000-10 27.50 ± 53% 20.50 ± 66% ~ (p=0.642 n=10) | ||
GC4El500k/Run-4-eventloop-500000-10 16.00 ± ? 18.00 ± ? ~ (p=0.357 n=10) | ||
geomean 22.96 21.11 -8.04% | ||
|
||
│ old │ new │ | ||
│ allocs/op │ allocs/op vs base │ | ||
GC4El100k/Run-4-eventloop-100000-10 0.000 ± 0% 0.000 ± 0% ~ (p=1.000 n=10) ¹ | ||
GC4El200k/Run-4-eventloop-200000-10 0.000 ± 0% 0.000 ± 0% ~ (p=1.000 n=10) ¹ | ||
GC4El500k/Run-4-eventloop-500000-10 0.000 ± 0% 0.000 ± 0% ~ (p=1.000 n=10) ¹ | ||
geomean ² +0.00% ² | ||
¹ all samples are equal | ||
² summaries must be >0 to compute geomean | ||
``` | ||
|
||
**The more connections there are, the more pronounced the effect.** | ||
|
||
While we have performed sufficient testing on `matrix`, we are still using `map` as the default connection storage in this RC version for the sake of caution, but you can enable the new data structure by specifying build tags: -tags=gc_opt. This can be considered as a precautionary measure so that in case `matrix` has any unexpected bugs, you can quickly fall back to the default `map`. We will consider promoting `matrix` to be the default storage for connections in a subsequent official release. | ||
|
||
Another significant leap is [#461](https://github.com/panjf2000/gnet/pull/461), you can now run `gnet` on Windows, it should be noted that the Windows version of `gnet` is intended for development purposes and is not recommended for use in production. | ||
|
||
Visit the [release notes](https://github.com/panjf2000/gnet/releases/tag/v2.3.0) for more details. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
--- | ||
last_modified_on: "2024-04-04" | ||
$schema: "/.meta/.schemas/highlights.json" | ||
title: "Release of gnet v2.4.0" | ||
description: "Release of the official stable version of v2.4.0" | ||
author_github: "https://github.com/panjf2000" | ||
pr_numbers: [4fee147] | ||
release: "2.4.0" | ||
hide_on_release_notes: false | ||
tags: ["type: tag", "domain: v2.4.0"] | ||
--- | ||
|
||
![](/img/gnet-v2-4-0.jpg) | ||
|
||
The release of [v2.4.0](https://github.com/panjf2000/gnet/releases/tag/v2.4.0) delivers some pragmatic features, improves the performance while fixing a few subtle bugs. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.