memconn

MemConn is an in-memory network stack for Go.

  • Owner: akutz/memconn
  • Platform:
  • License:: Apache License 2.0
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

MemConn GoDoc Build Status Go Report Card

MemConn provides named, in-memory network connections for Go.

Create a Server

A new net.Listener used to serve HTTP, gRPC, etc. is created with
memconn.Listen:

lis, err := memconn.Listen("memu", "UniqueName")

Creating a Client (Dial)

Clients can dial any named connection:

client, err := memconn.Dial("memu", "UniqueName")

Network Types

MemCon supports the following network types:, Network, Description, ---------, -------------, memb, A buffered, in-memory implementation of net.Conn, memu, An unbuffered, in-memory implementation of net.Conn, ## Performance
The benchmark results illustrate MemConn's performance versus TCP
and UNIX domain sockets:

ops
ns/op
B/op
allocs/op

MemConn is more performant than TCP and UNIX domain sockets with respect
to the CPU. While MemConn does allocate more memory, this is to be expected
since MemConn is an in-memory implementation of the net.Conn interface.

Main metrics

Overview
Name With Ownerakutz/memconn
Primary LanguageGo
Program languageGo (Language Count: 2)
Platform
License:Apache License 2.0
所有者活动
Created At2017-12-07 21:54:19
Pushed At2023-10-04 02:45:39
Last Commit At2021-11-10 17:36:53
Release Count1
Last Release Namev0.1.0 (Posted on 2018-05-01 16:57:23)
First Release Namev0.1.0 (Posted on 2018-05-01 16:57:23)
用户参与
Stargazers Count551
Watchers Count15
Fork Count35
Commits Count41
Has Issues Enabled
Issues Count4
Issue Open Count3
Pull Requests Count5
Pull Requests Open Count2
Pull Requests Close Count2
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private