最新文章列表

将内网服务开放(摆渡、代理)到公网

      业务系统一般部署在内网,内网和公网之间一般是物理隔离或是防火墙隔离的,但有的时候也需要将内网网段的服务开放到公网上,用来进行调试、确认等临时工作。      公网访问内网,一般要具备两个条件(1)到运营商申请固定IP (2)通过路由器,代理服务器等将内网端口映射到固定IP上。 这种方式成本较高,不适合小公司,小团队操作。      有的时候公网资源有限。比如:还是因为成本限制,不可能在 ...
jonenine 评论(0) 有262人浏览 2019-10-08 14:38

【开源】gnet: 一个轻量级且高性能的 Go 网络库

Github 主页: https://github.com/panjf2000/gnet gnet 是一个基于 Event-Loop 事件驱动的高性能和轻量级网络库。这个库直接使用 epoll 和 kqueue 系统调用而非标准 Golang 网络包:net 来构建网络应用,它的工作原理类似两个开源的网络库:libuv 和 libevent。   这个项目存在的价值是提供一个在网络包处理方面 ...
panjf2000 评论(0) 有480人浏览 2019-10-01 01:07

从零开始入门 K8s| 阿里技术专家详解 K8s 核心概念

一、什么是 Kubernetes Kubernetes,从官方网站上可以看到,它是一个工业级的容器编排平台。Kubernetes 这个单词是希腊语,它的中文翻译是“舵手”或者“飞 ...
大涛学长 评论(0) 有479人浏览 2019-09-20 14:54

Java和Go性能的简单比较(mysql query)

通过简单地查询公司表(comp)的100条数据来直观地比较语言的性能。 环境:笔记本64位win10, jdk 1.8, go 1.11, 本机10.1.15-MariaDB。   1. java代码 package main; import java.sql.Connection; import java.sql.DriverManager; import java.sql. ...
pelli 评论(0) 有1053人浏览 2019-04-03 18:48

socket go

socket  类型 socket_dgram socket_ram socket_seqpackage socket_stream 数据新式 数据报 数据报 字节流 字节流 数据边界 有 有 有 无 数据 ...
go 
coollyj 评论(0) 有215人浏览 2019-03-31 19:44

go socket

socket  类型 socket_dgram socket_ram socket_seqpackage socket_stream 数据新式 数据报 数据报 字节流 字节流 数据边界 有 有 有 无 数据 ...
coollyj 评论(0) 有115人浏览 2019-03-31 12:09

go 生产与消费者 系统信号

package main import ( "fmt" "os" "os/signal" "syscall" ) type Goods struct{ hight int } // strconv.Atoi() 字符转数字 func produces(fac int,ou ...
go 
coollyj 评论(0) 有223人浏览 2019-03-29 16:09

go 通道 缓存

无缓冲的与有缓冲channel有着重大差别 那就是一个是同步的 一个是非同步的 怎么说?比如 c1:=make(chan int)        无缓冲 c2:=make(chan int,1)      有缓冲 c1<-1                            无缓冲的 不仅仅是 向 c1 通道放 1 而是 一直要有别的携程 <-c1 接手了 这个参数,那么c1< ...
go 
coollyj 评论(0) 有360人浏览 2019-03-29 14:55

go 单例模式

package main import ( "fmt" "sync" "sync/atomic" ) type singleton struct{} var ( instance *singleton initialized uint32 mu sync.Mutex ) func I ...
go 
coollyj 评论(0) 有204人浏览 2019-03-29 14:16

go 语法

new 与 make new(T)会为T类型的新项目,分配被置零的存储,并且返回它的地址,一个类型为*T的值。在Go的术语中,其返回一个指向新分配的类型为T的指针,这个指针指向的内容的值为零(zero value)。注意并不是指针为零。 记住make只用于map,slice和channel,并且不返回指针。要获得一个显式的指针,使用new进行分配,或者显式地使用一个变量的地址。 // 长度为 ...
go 
coollyj 评论(0) 有159人浏览 2019-03-28 12:22

go 注意事项

package main import ( "fmt" "io/ioutil" "log" "os" "runtime" ) var msg string var done = make(chan bool) func main() { runtime ...
coollyj 评论(0) 有239人浏览 2019-03-28 11:55

etcd 集群

集群包含三个node:etcd1, etcd2, etcd3 1> 下载镜像 docker pull quay.io/coreos/etcd 2>docker-compose.yaml version: '2' networks: byfn: services: etcd1: image: quay.io/coreos/etcd contain ...
go 
coollyj 评论(0) 有231人浏览 2019-03-27 23:21

go token bukkit

令牌桶  限流器 golang 提供了拓展库(golang.org/x/time/rate)提供了限流器组件 package main import ( "fmt" "time" ) func main(){ var fillInterval = ...
go 
coollyj 评论(0) 有146人浏览 2019-03-26 12:06

一个有趣的程序员

https://www.yhspy.com/articles/
go 
coollyj 评论(0) 有157人浏览 2019-03-22 16:25

go rpc

package hello /*** Go语言的RPC包的路径为net/rp 中Hello方法必须满足Go语言的RPC规则:方法只能有两个可序列化的参数,其 中第二个参数是指针类型,并且返回一个error类型,同时必须是公开的方法。 */ type HelloService struct {} func (p *HelloService) Hello(request ...
coollyj 评论(0) 有144人浏览 2019-03-21 11:59

go context 监控

示例中启动了3个监控goroutine进行不断的监控,每一个都使用了Context进行跟踪,当我们使用cancel函数通知取消时,这3个goroutine都会被结束。这就是Context的控制能力,它就像一个控制器一样,按下开关后,所有基于这个Context或者衍生的子Context都会收到通知,这时就可以进行清理操作了,最终释放goroutine,这就优雅的解决了goroutine启动后不可控的问 ...
go 
coollyj 评论(0) 有178人浏览 2019-03-20 15:14

go code01

package pse import ( "sync" "time" ) type ( subscriber chan interface{} // 订阅者为一个管道 topicFunc func(v interface{}) bool // 主题为一个过滤器 ) // 发布者对象 type Publisher st ...
go 
coollyj 评论(0) 有130人浏览 2019-03-20 11:23

go code

package main import ( "fmt" "os" "os/signal" "syscall" "time" ) func Producer(factor int,out chan<- int){ for i:=0;;i++{ o ...
go 
coollyj 评论(0) 有132人浏览 2019-03-19 17:38

golang空间扩容

一、内存构成   内存管理组件构成 二、扩容 一般来说当内存空间span不足时,需要进行扩容。而在扩容前需要将当前没有剩余空间的内存块相关状态解除,以便后续的垃圾回收期能够进行扫描和回收,接着在从中间部件(central)提取新的内存块放回数组中。 // 根据空间规格 获取对应的索引 再获取alloc数组中对应的span func (c *mcache) refil ...
dalan_123 评论(0) 有400人浏览 2019-01-08 15:47

最近博客热门TAG

Java(141747) C(73651) C++(68608) SQL(64571) C#(59609) XML(59133) .net(54785) 编程(39454) JSP(37542) 数据结构(36423) Eclipse(31254) PHP(29988) F#(26079) 算法(24867) 脚本(19840) J#(18922) JDBC(17888) ASP(17480) JDK(14881) JVM(14450)

博客人气排行榜

    博客电子书下载排行

      >>浏览更多下载

      相关资讯

      相关讨论

      Global site tag (gtag.js) - Google Analytics