Skip to content

Commit

Permalink
Update the posts in highlights
Browse files Browse the repository at this point in the history
  • Loading branch information
panjf2000 committed Nov 10, 2024
1 parent b268aa5 commit 2fb9a89
Show file tree
Hide file tree
Showing 28 changed files with 111 additions and 2 deletions.
2 changes: 2 additions & 0 deletions highlights/2020-03-13-released-first-version.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: release", "domain: v1.0.0"]
---

![](/img/gnet-v1-0-0.jpg)

# Features

- [x] [High-performance](https://github.com/panjf2000/gnet/blob/v1.0.0/README.md#-performance) event-loop under networking model of multiple threads/goroutines
Expand Down
2 changes: 2 additions & 0 deletions highlights/2020-04-03-released-1-1-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: release", "domain: v1.1.0"]
---

![](/img/gnet-v1-1-0.jpg)

## Features

- Support new load-balancing algorithm of least-connections [#63](https://github.com/panjf2000/gnet/pull/63)
Expand Down
2 changes: 2 additions & 0 deletions highlights/2020-05-11-released-1-2-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: release", "domain: v1.2.0"]
---

![](/img/gnet-v1-2-0.jpg)

## Features

- Support graceful shutdown with OS signals (Fixes #82)
Expand Down
2 changes: 2 additions & 0 deletions highlights/2020-09-13-released-1-3-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: release", "domain: v1.3.0"]
---

![](/img/gnet-v1-3-0.jpg)

## Features

- Determine logging mode by environment variable [2a7977](https://github.com/panjf2000/gnet/commit/2a7977feb33ba18f0c9d788dc611e85154df8548)
Expand Down
2 changes: 2 additions & 0 deletions highlights/2021-02-17-released-1-4-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: release", "domain: v1.4.0"]
---

![](/img/gnet-v1-4-0.jpg)

## Features

- Support TCP_NODELAY socket option [525df8](https://github.com/panjf2000/gnet/commit/525df8ed1e734ac8d9a8f7fc4d28853a3f1e9cb3)
Expand Down
2 changes: 2 additions & 0 deletions highlights/2021-07-11-released-1-5-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: release", "domain: v1.5.0"]
---

![](/img/gnet-v1-5-0.jpg)

## Features

- Move the logging module out of the internal package and refactor to make it serviceable for users [d56606](https://github.com/panjf2000/gnet/commit/d566061586adfda7efbf58feec0bd8ebf7534479) [b6b1cf](https://github.com/panjf2000/gnet/commit/b6b1cfb53400540000efb0f858d001437bc3d4f9) [8837a9](https://github.com/panjf2000/gnet/commit/8837a92308f41805d38a2377da32530c6c79646d)
Expand Down
2 changes: 2 additions & 0 deletions highlights/2021-12-05-released-1-6-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: tag", "domain: v1.6.0"]
---

![](/img/gnet-v1-6-0.png)

# gnet client is now available for production!

## Features
Expand Down
2 changes: 2 additions & 0 deletions highlights/2022-02-27-release-of-gnet-v2.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: tag", "domain: v2.0.0"]
---

![](/img/gnet-v2-0-0.jpg)

Today, I'm thrilled to announce the release of [gnet v2.0.0](https://github.com/panjf2000/gnet/releases/tag/v2.0.0), in which we've made plenty of significant improvements and optimizations: added and removed some APIs, redesigned and reimplemented the buffer, optimized the memory pool, etc.

Please visit [Announcing gnet v2.0.0 blog post](https://gnet.host/blog/announcing-gnet-v2/)
17 changes: 17 additions & 0 deletions highlights/2022-12-03-release-of-gnet-v2-2-0.md
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.
4 changes: 4 additions & 0 deletions highlights/2023-05-19-release-candidate-for-gnet-v2-3-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: tag", "domain: v2.3.0-rc.1"]
---

![](/img/gnet-v2-3-0-rc1.jpg)

## Intro

The two major updates in this release candidate are [#460](https://github.com/panjf2000/gnet/pull/460) and [#461](https://github.com/panjf2000/gnet/pull/461).
Expand Down Expand Up @@ -49,3 +51,5 @@ geomean ² +0.00%
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-rc.1) for more details.
53 changes: 53 additions & 0 deletions highlights/2023-07-01-release-of-gnet-v2-3-0.md
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.
4 changes: 2 additions & 2 deletions highlights/2023-11-11-gnet-techempower-benchmark-top1.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,11 +16,11 @@ TechEmpower Web Framework Benchmarks is a performance comparison of many web app

`gnet` tops the leaderboard of TechEmpower Plaintext Benchmark in round 22, becoming the world No. 1.

![](https://gnet.host/img/techempower-plaintext-top50-dark.jpg)
![](/img/techempower-plaintext-top50-dark.jpg)

This is a leaderboard of the top ***50*** out of ***486*** frameworks that encompass various programming languages worldwide, in which `gnet` is ranked ***first***.

![](https://gnet.host/img/techempower-plaintext-topN-go-dark.png)
![](/img/techempower-plaintext-topN-go-dark.png)

This is the full framework ranking of Go and `gnet` tops all the other frameworks, which makes `gnet` the ***fastest*** networking framework in Go.

Expand Down
15 changes: 15 additions & 0 deletions highlights/2024-04-04-release-of-gnet-v2-4-0.md
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.
2 changes: 2 additions & 0 deletions highlights/2024-04-22-release-of-gnet-v2-5-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: tag", "domain: v2.5.0"]
---

![](/img/gnet-v2-5-0.jpg)

I hereby announce the release of [gnet v2.5.0](https://github.com/panjf2000/gnet/releases/tag/v2.5.0), where we've added two major features of edge-triggered mode and multiple addresses bindings, along with a good deal of code refactoring and optimizations.

Please visit [Announcing gnet v2.5.0](https://gnet.host/blog/announcing-gnet-v2-5-0/) for more details.
2 changes: 2 additions & 0 deletions highlights/2024-11-09-release-of-gnet-v2-6-0.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ hide_on_release_notes: false
tags: ["type: tag", "domain: v2.6.0"]
---

![](/img/gnet-v2-6-0.webp)

I hereby announce the release of [gnet v2.6.0](https://github.com/panjf2000/gnet/releases/tag/v2.6.0), where we've added two major features of [`SO_BINDTODEVICE`](https://man7.org/linux/man-pages/man7/socket.7.html) and [configurable edge-triggered chunk](https://github.com/panjf2000/gnet/pull/646), along with a few bug-fixes.

Another change to note is that starting with this release, the minimum required Go version to run `gnet` is 1.20!
Binary file added static/img/gnet-v1-0-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v1-1-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v1-2-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v1-3-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v1-4-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v1-5-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v1-6-0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v2-0-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v2-2-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v2-3-0-rc1.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v2-4-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v2-5-0.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/img/gnet-v2-6-0.webp
Binary file not shown.

0 comments on commit 2fb9a89

Please sign in to comment.