【golang】高并发下TCP常见问题解决方案

【golang】高并发下TCP常见问题解决方案

首先,看一下TCP握手简单描绘过程: 其握手过程原理,就不必说了,有很多详细文章进行叙述,本文只关注研究重点。 在第三次握手过程中,如果服务器收到ACK,就会与客户端建立连接,此时内核会把连接从半连接队列移除,然后创建新的连接,并将
Python140
go语言实现一个简单的简单网关

go语言实现一个简单的简单网关

网关=反向代理+负载均衡+各种策略,技术实现也有多种多样,有基于 nginx 使用 lua 的实现,比如 openresty、kong;也有基于 zuul 的通用网关;还有就是 golang 的网关,比如 tyk。 这篇文章主要是讲
Python150
golang使用Nsq

golang使用Nsq

1. 介绍 最近在研究一些消息中间件,常用的MQ如RabbitMQ,ActiveMQ,Kafka等。NSQ是一个基于Go语言的分布式实时消息平台,它基于MIT开源协议发布,由bitly公司开源出来的一款简单易用的消息中间件。 官方和
Python150
Go微服务--常见的微服务框架

Go微服务--常见的微服务框架

近几年诞生了很多微服务框架,比如JAVA的Spring Cloud、DubboGolang的GoKit和GoMicro以及NodeJs的Seneca。几乎每种主流语言都有其对应的微服务框架。 Go在微服务框架中有其独特的优势,至于优势在
Python220
java中的代理是什么意思?

java中的代理是什么意思?

代理模式在设计模式中的定义就是:为其他对象提供一种代理以控制对这个对象的访问。说白了就是,在一些情况下客户不想或者不能直接引用一个对象,而代理对象可以在客户和目标对象之间起到中介作用,去掉客户不能看到的内容和服务或者增添客户需要的额外服务。
Python160
java服务器开发是做什么?和web端的区别是什么?

java服务器开发是做什么?和web端的区别是什么?

web开发,是开发服务端的,开发好的web程序,打包成war,然后放到web容器中运行,而web容器,是部署在服务器中的。web的客户端就是浏览器,教你设计页面,学CSSHTML之类的。标准的web服务器只具有与客户端浏览器通讯的功能,
Python130
java服务器开发是做什么?和web端的区别是什么?

java服务器开发是做什么?和web端的区别是什么?

web开发,是开发服务端的,开发好的web程序,打包成war,然后放到web容器中运行,而web容器,是部署在服务器中的。web的客户端就是浏览器,教你设计页面,学CSSHTML之类的。标准的web服务器只具有与客户端浏览器通讯的功能,
Python360
Python 连接hive(Linux)

Python 连接hive(Linux)

之所以选择基于Linux系统用Python连接hive,是因为在window下会出现Hadoop认证失败的问题。会出现执行python脚本的机器无目标hive的kerberos认证信息类似错误,也会出现sasl调用问题: 该错误我尝试多
Python170
python怎么实现tcp通信

python怎么实现tcp通信

服务器端:    #!usrbinenv python      import socket      host="localhost"      port=10000      s=socket.socket(s
Python220
python怎么调用api接口

python怎么调用api接口

调用windows API的方式其实有两种,第一种是通过第三方模块pywin32。如果小伙伴安装了pip,可以通过pip安装pywin32在命令行中运行pip pst查看是否安装了pywin32如图我们这里调用一个windows最基本的AP
Python160
Go微服务--常见的微服务框架

Go微服务--常见的微服务框架

近几年诞生了很多微服务框架,比如JAVA的Spring Cloud、DubboGolang的GoKit和GoMicro以及NodeJs的Seneca。几乎每种主流语言都有其对应的微服务框架。 Go在微服务框架中有其独特的优势,至于优势在
Python190
为什么go语言适合开发网游服务器端

为什么go语言适合开发网游服务器端

前段时间在golang-China读到这个贴:个人觉得golang十分适合进行网游服务器端开发,写下这篇文章总结一下。从网游的角度看:要成功的运营一款网游,很大程度上依赖于玩家自发形成的社区。只有玩家自发形成一个稳定的生态系统,游戏才能持续
Python120
面试问题总结(一)Golang

面试问题总结(一)Golang

使用go语言的好处: go语言的设计是务实的, go在针对并发上进行了优化, 并且支持大规模高并发, 又由于单一的码格式, 相比于其他语言更具有可读性, 在垃圾回收上比java和Python更有效, 因为他是和程序同时执行的.1.
Python160
golang 微服务开发(一)

golang 微服务开发(一)

本项目旨在使用golang 搭建一个微服务应用。https:github.commafa1993go-micro-learngin做api和rpc的客户端 go-micro作为后台微服务 ···gin
Python90
讲讲go语言的结构体

讲讲go语言的结构体

作为C语言家族的一员,go和c一样也支持结构体。可以类比于java的一个POJO。 在学习定义结构体之前,先学习下定义一个新类型。 新类型 T1 是基于 Go 原生类型 int 定义的新自定义类型,而新类型 T2 则是 基于
Python150
golang判断目录下是否有文件

golang判断目录下是否有文件

golang判断文件或文件夹是否存在的方法为使用os.Stat()函数返回的错误值进行判断:如果返回的错误为nil,说明文件或文件夹存在如果返回的错误类型使用os.IsNotExist()判断为true,说明文件或文件夹不存在如果返回的错误
Python130