Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/panjf2000/gnet
π gnet is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go./ gnet ζ―δΈδΈͺι«ζ§θ½γθ½»ιηΊ§γιι»ε‘ηδΊδ»Άι©±ε¨ Go η½η»ζ‘ζΆγ
https://github.com/panjf2000/gnet
opt: implement zero-allocated []byte pool for reusing bytes (#292)
741be360d7edfb9e96ec7508712b2cddfbe08e5d authored about 3 years ago
741be360d7edfb9e96ec7508712b2cddfbe08e5d authored about 3 years ago
bug: fix the repeated resource release issues
For #305
d6cbe31e65ad3666acf8b4b9d4f55da9ec8c2fdd authored about 3 years ago
chore: fix the undefined: math.MaxInt
afde9cd848f6f143f313c1477af315cb34bef372 authored about 3 years ago
afde9cd848f6f143f313c1477af315cb34bef372 authored about 3 years ago
bug: limit the maximum size of iovec
Fixes #303
58a6ae9d04be38d5031a4249ef41ef0b52294c44 authored about 3 years ago
bug: eliminate the redundant Encode() call of each AsyncWrite() on Windows
Fixes #300
b4d76f88e3674d8ee9f7260b168c0ec0e227fb79 authored about 3 years ago
chore: update some comments
51fb73842710051c216dbea9c170d62e7eafcf4b authored about 3 years ago
51fb73842710051c216dbea9c170d62e7eafcf4b authored about 3 years ago
chore: refine the condition after Decode()
51b71cd434f2e8283103ad89e101ad3b22cfcafe authored about 3 years ago
51b71cd434f2e8283103ad89e101ad3b22cfcafe authored about 3 years ago
chore: resolve the lint issue of staticcheck
e8f7a874593d7bc0b4aec5bf190f85e49e33257c authored about 3 years ago
e8f7a874593d7bc0b4aec5bf190f85e49e33257c authored about 3 years ago
opt: simplify some internal function names
302b2e55a1e0b62544983c0ea3d692fdaa5db4df authored about 3 years ago
302b2e55a1e0b62544983c0ea3d692fdaa5db4df authored about 3 years ago
opt: implement a []byte pool for reusing bytes
d1ca7f3360ea906411616967d14727ad8c1a4add authored about 3 years ago
d1ca7f3360ea906411616967d14727ad8c1a4add authored about 3 years ago
opt: improve the internal package of socket
c0681fe67c3b94803a68bfd523e69cad5c50f0a0 authored about 3 years ago
c0681fe67c3b94803a68bfd523e69cad5c50f0a0 authored about 3 years ago
opt: reduce the memory usage with UDP protocol
Fixes #289
ad0f237badb9ddd3451b83d75e11bce822318f15 authored about 3 years ago
bug: set the status of ring-buffer to non-empty after it grows its size
Fixes #288
4569dec0c13f52e2a0fbb8063dfffbed0ff406bd authored about 3 years ago
opt: improve the management logic of the mixed-buffer
b8d571dd762cb79c2c685f16d36886f6edb40195 authored about 3 years ago
b8d571dd762cb79c2c685f16d36886f6edb40195 authored about 3 years ago
opt: make the mixed-buffer more flexible
4ac906cae698b1a4483c583d0267f86f05ce595b authored about 3 years ago
4ac906cae698b1a4483c583d0267f86f05ce595b authored about 3 years ago
chore: update go modules
4b3679d8f4f9c2bc83ee65154ff1303558089e7d authored about 3 years ago
4b3679d8f4f9c2bc83ee65154ff1303558089e7d authored about 3 years ago
feat: implement the gnet.Conn.AsyncWritev()
Fixes #245
9a2032f876cd8f41c554545bcbb63d3043f4946f authored about 3 years ago
chore: check the box fo gnet client
Fixes #4
Fixes #143
Fixes #248
Fixes #282
feat: invoke OnClosed() when a UDP socket is closed
7be4b2a758e32af489450b6b62d8da48e471ba00 authored about 3 years ago
7be4b2a758e32af489450b6b62d8da48e471ba00 authored about 3 years ago
chore: improve code quality
72cd0ea7924ead73271c327e3a3b4546795443c6 authored about 3 years ago
72cd0ea7924ead73271c327e3a3b4546795443c6 authored about 3 years ago
opt: refactor the logic of handling UDP sockets
d72d3de70a0cb31c6059820dbd4ba6db6c4e23eb authored about 3 years ago
d72d3de70a0cb31c6059820dbd4ba6db6c4e23eb authored about 3 years ago
chore: start more clients to test
4f2cfa3de6ea9c258d4eebacf0c7605146556b18 authored about 3 years ago
4f2cfa3de6ea9c258d4eebacf0c7605146556b18 authored about 3 years ago
feat: support UDP and Unix protocol in client
7159b95cd9ebc8fe2f9bea909844eb8c8bb37bf7 authored about 3 years ago
7159b95cd9ebc8fe2f9bea909844eb8c8bb37bf7 authored about 3 years ago
opt: refine code
5d8fe649f487019f8f5e9d1925a5a63994bc6c17 authored about 3 years ago
5d8fe649f487019f8f5e9d1925a5a63994bc6c17 authored about 3 years ago
opt: refine code of moving write pointer in ring-buffer
f1d1d7736532916158c934c33c665a74a819fdd1 authored about 3 years ago
f1d1d7736532916158c934c33c665a74a819fdd1 authored about 3 years ago
opt: scale up the inbound ring-buffer when it is full
25c8b86347f1f377b928e68bf58dba89f6f6154c authored about 3 years ago
25c8b86347f1f377b928e68bf58dba89f6f6154c authored about 3 years ago
opt: avoid memory allocations when calling readv
15611b482f50f1333fcee47b02d6ec04b4d2ede5 authored about 3 years ago
15611b482f50f1333fcee47b02d6ec04b4d2ede5 authored about 3 years ago
opt: improve the network read with ring-buffer and readv
0dcf599fd0673bc712b5409fd9a0711cb90606c0 authored about 3 years ago
0dcf599fd0673bc712b5409fd9a0711cb90606c0 authored about 3 years ago
chore: rename a function in internal/queue/queue.AsyncTaskQueue
dfa473dd8689084de04eebd3a4ae9940918c4561 authored about 3 years ago
dfa473dd8689084de04eebd3a4ae9940918c4561 authored about 3 years ago
opt: get as much data read from socket per loop as possible
148ee163fb3ddd0fcd7919ab17390a3cd910933f authored about 3 years ago
148ee163fb3ddd0fcd7919ab17390a3cd910933f authored about 3 years ago
fix: add the RingBuffer.WithByteBuffer() back for Windows
747896a17493af1ec8e62f508d9c08db1ea54606 authored about 3 years ago
747896a17493af1ec8e62f508d9c08db1ea54606 authored about 3 years ago
chore: fix the build failure on Windows
c29ef7160c484bde0e478be2c8b24aa07745dd60 authored about 3 years ago
c29ef7160c484bde0e478be2c8b24aa07745dd60 authored about 3 years ago
opt: improve the logic of reading data from socket into ring-buffer
a7f07b3d4eaa70a9b5c8b389d73b72ddb06b8c16 authored about 3 years ago
a7f07b3d4eaa70a9b5c8b389d73b72ddb06b8c16 authored about 3 years ago
chore: simplify the imports of list-buffer
93a2843e65b67727ddf8060d925cd504ddf66f4e authored about 3 years ago
93a2843e65b67727ddf8060d925cd504ddf66f4e authored about 3 years ago
chore: improve the project layout
2e172bde78bcdb56dbec9a57d95dfa4b6213b1f2 authored about 3 years ago
2e172bde78bcdb56dbec9a57d95dfa4b6213b1f2 authored about 3 years ago
chore: update go.mod
a3bd990920aafe4ca96bb1cae1aa8c54e7c7287a authored about 3 years ago
a3bd990920aafe4ca96bb1cae1aa8c54e7c7287a authored about 3 years ago
chore: add comments to indicate which APIs are concurrency-safe
016b5b433db08f2745dda33fc9a85eed60827b6f authored about 3 years ago
016b5b433db08f2745dda33fc9a85eed60827b6f authored about 3 years ago
chore: set MaxStackingBytes to 32KB
62c33d9ea176e43dc36200d0fc26f72d0ac5c436 authored about 3 years ago
62c33d9ea176e43dc36200d0fc26f72d0ac5c436 authored about 3 years ago
opt: increase the maximum buffer size of ring-buffer inside mixed-buffer
0c6af6cd96f287c28da5b8d6aa157bcc2eefddb8 authored about 3 years ago
0c6af6cd96f287c28da5b8d6aa157bcc2eefddb8 authored about 3 years ago
opt: implement a mixed buffer of ring-buffer and list-buffer
mixed-buffer combines ring-buffer and list-buffer, used as the outbound buffer by gnet.Conn
edbdf4b54b7439bfb2ac4ba9652ec6a1764e0659 authored about 3 years ago
bug: fix the issue of panic: runtime error: slice bounds out of range
30311e936869d8685c8c06ff98170f0adb68bc8b authored about 3 years ago
30311e936869d8685c8c06ff98170f0adb68bc8b authored about 3 years ago
chore: a trivial update
24967fe4d72908b298622d7f15877a4d7ab7d4d4 authored about 3 years ago
24967fe4d72908b298622d7f15877a4d7ab7d4d4 authored about 3 years ago
chore: refine the loop in ByteBufferList.PeekBytesList()
bcaa8939b641ca19060151a2cf534c4b095a3b26 authored about 3 years ago
bcaa8939b641ca19060151a2cf534c4b095a3b26 authored about 3 years ago
opt: optimize the buffer management and network I/O
6aba6d7a3fc31cf749b0001dcb1c82f01c816f65 authored about 3 years ago
6aba6d7a3fc31cf749b0001dcb1c82f01c816f65 authored about 3 years ago
chore: rename all receivers of ring-buffer
c85cf92f691ec5dc45d8d932e2f7675a327ce4da authored about 3 years ago
c85cf92f691ec5dc45d8d932e2f7675a327ce4da authored about 3 years ago
feat: implement writev and readv on BSD-like OS's
60ba6d30b04351e26c3f7c9cc496b1b849936731 authored about 3 years ago
60ba6d30b04351e26c3f7c9cc496b1b849936731 authored about 3 years ago
test: make the unit tests for client work
802fa358f2c8ac95414e36cb0afd53f6dd57bfa0 authored about 3 years ago
802fa358f2c8ac95414e36cb0afd53f6dd57bfa0 authored about 3 years ago
chore: update a comment
072ff35413e504d776757981586b940ea787f979 authored about 3 years ago
072ff35413e504d776757981586b940ea787f979 authored about 3 years ago
chore: resolve the format issues
fa054af67c811c89b451146862432899dacc48c8 authored about 3 years ago
fa054af67c811c89b451146862432899dacc48c8 authored about 3 years ago
bug: fix the data corruption in some default codecs
a56d2f3f50981107ae6b2bd2653fe19dc75d4e18 authored about 3 years ago
a56d2f3f50981107ae6b2bd2653fe19dc75d4e18 authored about 3 years ago
chore: make several improvements for logger
58d2031440b1c9725e2d12aeb651aa8bc78d3489 authored about 3 years ago
58d2031440b1c9725e2d12aeb651aa8bc78d3489 authored about 3 years ago
feat: support more functional options for client
4db46da43d5defd5da71213c0abaebb174af642c authored about 3 years ago
4db46da43d5defd5da71213c0abaebb174af642c authored about 3 years ago
feat: support so_reuseaddr (#280)
Fixes #266
Fixes #272
Co-authored-by: zhongweikang <[email protected]>
f7a3adadd83bbc79803d8eb464cb0575fd355892 authored about 3 years ago
chore: return the more specific errors when Dial() fails
c71b023c10e721222dd95e8a6f03f3863d22b0bd authored about 3 years ago
c71b023c10e721222dd95e8a6f03f3863d22b0bd authored about 3 years ago
fix: resolve all test failures of gnet client
Fixes #260
a5ac95a5057fb82e2f71cb6a7f4ffed83c967efb authored about 3 years ago
fix: correct the wrong logging function
10c619f3a42c4f8397464a7a45daff24bfa873ea authored about 3 years ago
10c619f3a42c4f8397464a7a45daff24bfa873ea authored about 3 years ago
chore: return error when loopRegister fails
c40b4b6f63ed0c210ef835d484b293204c155709 authored about 3 years ago
c40b4b6f63ed0c210ef835d484b293204c155709 authored about 3 years ago
chore: refine test code
c8965ecb48c979011110a5cff86c07c6aa6a537c authored about 3 years ago
c8965ecb48c979011110a5cff86c07c6aa6a537c authored about 3 years ago
chore: eliminate the code for preventing false-sharing
0bfade3aea015a7932b0e45b646a6c85a620a205 authored about 3 years ago
0bfade3aea015a7932b0e45b646a6c85a620a205 authored about 3 years ago
chore: print errors in logs
cc085c50545d988157ee895e6e985f93e3b17e30 authored about 3 years ago
cc085c50545d988157ee895e6e985f93e3b17e30 authored about 3 years ago
chore: update some comments
65b8f8b5ebe8503fbd8842f254c3b19abb19f815 authored about 3 years ago
65b8f8b5ebe8503fbd8842f254c3b19abb19f815 authored about 3 years ago
doc: remove the irrelevant articles
bbdc1bcc76138feb3529d639e63ebe9374c22165 authored about 3 years ago
bbdc1bcc76138feb3529d639e63ebe9374c22165 authored about 3 years ago
Update FUNDING.yml
7b29795db5fe184da0939490f8bf4ec39d3c27db authored about 3 years ago
7b29795db5fe184da0939490f8bf4ec39d3c27db authored about 3 years ago
Create FUNDING.yml
1989eda4cc668e548f8572ac9fb07cef8c8f612d authored about 3 years ago
1989eda4cc668e548f8572ac9fb07cef8c8f612d authored about 3 years ago
chore: update README's
dacd62e255ab37367d1e018d0640cb29b6f3a995 authored about 3 years ago
dacd62e255ab37367d1e018d0640cb29b6f3a995 authored about 3 years ago
fix: add build constraints in gnet.Client to exclude Windows
Fixes #258
13f934c4465957d0369c89ae46f6f9022e7345ba authored over 3 years ago
doc: update to the latest benchmark results
81d984236401fb42d2f75c8989b87321804f4503 authored over 3 years ago
81d984236401fb42d2f75c8989b87321804f4503 authored over 3 years ago
doc: update README's
d219ce9c59c2f119bc14568d0b27abc2b2b5dc23 authored over 3 years ago
d219ce9c59c2f119bc14568d0b27abc2b2b5dc23 authored over 3 years ago
chore: add copyright statement in client.go
9c26c1e7e4dd900bc24dd269401ee752ffed8020 authored over 3 years ago
9c26c1e7e4dd900bc24dd269401ee752ffed8020 authored over 3 years ago
doc: change the license from MIT to Apache 2.0
a900c8f21958eb8096443125afafb672d9f1218e authored over 3 years ago
a900c8f21958eb8096443125afafb672d9f1218e authored over 3 years ago
chore: update some log descriptions
b56ff6aec92005198f4bca27b747946bf3139e89 authored over 3 years ago
b56ff6aec92005198f4bca27b747946bf3139e89 authored over 3 years ago
doc: update some docs
514758a7ed5f393aa3058e881ba14e21f3503daa authored over 3 years ago
514758a7ed5f393aa3058e881ba14e21f3503daa authored over 3 years ago
feat: Implement the gnet client
2295e8c6f3394341d28318cb6ea33f0799d52c45 authored over 3 years ago
2295e8c6f3394341d28318cb6ea33f0799d52c45 authored over 3 years ago
Add a new event handler: AfterWrite()
Fixes #242
6a654c85e7c1172503813c9703603e42eea2fc29 authored over 3 years ago
opt: reduce the potential system calls for waking pollers up
9ce41f3b921a9341081506629185e733f97defa4 authored over 3 years ago
9ce41f3b921a9341081506629185e733f97defa4 authored over 3 years ago
Revert "opt: reduce atomic operations for asynchronous task queues in pollers"
This reverts commit 90bea0e0ee46176cbfac02e6a2a2b6ebf873db71.
e2ad774437c75cee97703be3c08f907b11761a6c authored over 3 years ago
opt: prevent the event-list from expanding or shrinking endlessly
b220dfd3f3ff9b8ecee4a09170d4db3760393fc0 authored over 3 years ago
b220dfd3f3ff9b8ecee4a09170d4db3760393fc0 authored over 3 years ago
opt: reduce atomic operations for asynchronous task queues in pollers
90bea0e0ee46176cbfac02e6a2a2b6ebf873db71 authored over 3 years ago
90bea0e0ee46176cbfac02e6a2a2b6ebf873db71 authored over 3 years ago
Add a new patron
0c9f965f24a6a706ddcfbcc2ba2dd8339e611e8e authored over 3 years ago
0c9f965f24a6a706ddcfbcc2ba2dd8339e611e8e authored over 3 years ago
doc: add the echo benchmarks on macOS
f429e7afaf3745574c95bf03d60baeaec2ecd9c1 authored over 3 years ago
f429e7afaf3745574c95bf03d60baeaec2ecd9c1 authored over 3 years ago
fix: resolve the data race of stdConn on Windows (#235)
990db79996793dbf6057b182726be3a3e52d75c9 authored over 3 years ago
990db79996793dbf6057b182726be3a3e52d75c9 authored over 3 years ago
chore: update README's
b95d9dbc2869bb652de5e217af7e1e87e2156ee5 authored over 3 years ago
b95d9dbc2869bb652de5e217af7e1e87e2156ee5 authored over 3 years ago
chore: fix typos
6a5e0a3d98c45921ab948177d88160b024c1ba39 authored over 3 years ago
6a5e0a3d98c45921ab948177d88160b024c1ba39 authored over 3 years ago
doc: update benchmark results
1b4ae56edf45bb3bc165c183a089fb0a8144ca67 authored over 3 years ago
1b4ae56edf45bb3bc165c183a089fb0a8144ca67 authored over 3 years ago
doc: update benchmark results
24e4ce06a4c4e1d3990eec9945c98175763c027f authored over 3 years ago
24e4ce06a4c4e1d3990eec9945c98175763c027f authored over 3 years ago
doc: renew benchmark results
21f55a6832d82b88073c51ccfbed8a0e627399c3 authored over 3 years ago
21f55a6832d82b88073c51ccfbed8a0e627399c3 authored over 3 years ago
fix: don't set option.TCPKeepAlive in listener
Fixes #233
8bdbde36f87ce97572912a59bdd32b9c9e845aad authored over 3 years ago
chore: move the ownerships of reactors from server to eventloop
bc618a476539aee9b1cb5adb4dfddccdc9cbfe7d authored over 3 years ago
bc618a476539aee9b1cb5adb4dfddccdc9cbfe7d authored over 3 years ago
chore: improve the CI powered by Github actions
c2f911bce8c06c14fd42868024bcc95691f49561 authored over 3 years ago
c2f911bce8c06c14fd42868024bcc95691f49561 authored over 3 years ago
opt: eliminate redundant code for acceptors
fd6409304305873b32cffcc9cde2db56283bfe50 authored over 3 years ago
fd6409304305873b32cffcc9cde2db56283bfe50 authored over 3 years ago
chore: change the logging level when the server exits normally
7aee5e1ae68268a6238e08f67c1b2e0077801268 authored over 3 years ago
7aee5e1ae68268a6238e08f67c1b2e0077801268 authored over 3 years ago
chore: update the copyright information in some source files
df369380c995969d2c52380e1f2310d486c1a335 authored over 3 years ago
df369380c995969d2c52380e1f2310d486c1a335 authored over 3 years ago
chore: rename the source files of reactors
576524665c353fec2b73cf61b4fff3da1cad4878 authored over 3 years ago
576524665c353fec2b73cf61b4fff3da1cad4878 authored over 3 years ago
chore: use testify to test ring-buffer
1e428aa7cd2431325a9d6881db125947e1bef5fa authored over 3 years ago
1e428aa7cd2431325a9d6881db125947e1bef5fa authored over 3 years ago
opt: a minor improvement in grow() of ring-buffer
Updates #226
fd8d27ba98237a44c8d37ca9c9ecf02a7365ad44 authored over 3 years ago
opt: prevent the ring-buffer from growing too fast
Fixes #226
ccd37ff254e47ed4fff3feee79d88849d9444502 authored over 3 years ago
chore: add debugging logs when accept() or recvfrom() fails
6beac295cb988a8512c8d0b34713ebece0673a02 authored over 3 years ago
6beac295cb988a8512c8d0b34713ebece0673a02 authored over 3 years ago
opt: introduce a global sync.Pool for netpoll.PollAttachment
4811183f9c9d7e98e3074e1852dad72e5f37f519 authored over 3 years ago
4811183f9c9d7e98e3074e1852dad72e5f37f519 authored over 3 years ago
chore: rename some files in internal/netpoll
ac5dea16ca518761d75d788e8c46894ca4c0b6e2 authored over 3 years ago
ac5dea16ca518761d75d788e8c46894ca4c0b6e2 authored over 3 years ago
test: let it fail when running "go test -race -tags=poll_opt" on Linux
fe540365b9dc3a9d0035163e6258a64e95abb738 authored over 3 years ago
fe540365b9dc3a9d0035163e6258a64e95abb738 authored over 3 years ago