当前位置: 首页 > news >正文

wordpress整合discuz用户杭州seo外包服务

wordpress整合discuz用户,杭州seo外包服务,百度云服务器wordpress,太原做网站直通车GO实现TCP服务器 首先新建一个项目go-redis,将config和lib包放到项目中,config.go用来解析配置,比如端口、功能、DB数;lib包有两个文件夹,分别是logger和sync,其中logger.go是一个日志框架,sync包中的bool.go包装了atomic操作,因为atomic原生没有bool类型,所以将uint…

GO实现TCP服务器

首先新建一个项目go-redis,将config和lib包放到项目中,config.go用来解析配置,比如端口、功能、DB数;lib包有两个文件夹,分别是logger和sync,其中logger.go是一个日志框架,sync包中的bool.go包装了atomic操作,因为atomic原生没有bool类型,所以将uint32类型改造成bool型的atomic,wait.go包装了WaitGroup等待组,多做的工作是将等待组增加一个超时功能,redis.conf配置文件写明我们redis要写在的端口和监听地址

正式开始

  • 新建一个接口文件夹,放一些全局用到的接口,首先是TCP层的handler.go,这个接口的目的是让handler.go代表一个抽象的业务逻辑,让TCP服务器只处理TCP层的连接,具体的业务扔给handler去做
type Handler interface {Handle(ctx context.Context, conn net.Conn)Close() error
}

TCP服务器开发

server.go

net.listen服务器监听端口地址,如果监听成功就调用Accept阻塞等待客户端连接,但这里我们将listener传给ListenAndServe方法,该方法传入三个参数,分别是listener,处理客户端业务的handler和传递关闭信号的channel,在其中for循环阻塞等待客户端连接,新的客户端过来后一个协程一个连接,将上下文ctx和conn句柄传入handler.Handle方法,然后我们只需在main函数里调用ListenAndServeWithSignal方法即可,但此时连接关闭和用户关闭窗口统一关闭所有客户端连接功能我们还没有处理

接下来我们就要着手改进,第一点就是我们这个for循环在不断阻塞接收新的连接,如果接收新连接出现错误后直接break,但此时我们已经有一些连接正在服务,所以我们需要等待已经连接的客户端退出,这里我们就要用到WaitGroup等待组,具体用法就是在每接收一个新的客户端连接后WaitGroup.Add(1),在接收新连接出错也就是break跳出fo

http://www.yidumall.com/news/27970.html

相关文章:

  • 360建筑官网北京优化seo
  • 长沙人才网最新招聘信息seo排名优化软件有用吗
  • 删除wordpress修订版本湖南百度seo排名点击软件
  • 购物网站后台好管理吗怎么学做电商然后自己创业
  • 网站开发可行性分析报告seo综合查询网站源码
  • 中国建筑人才招聘网官网seo搜索排名优化公司
  • 做二手网站赚钱不软文兼职
  • 温州网站制作优化北京seo优化
  • 个人如何做微商城网站前端seo怎么优化
  • 手机新手学做网站三叶草gy5987
  • 临沂网站制作公司6百度指数怎么提升
  • 制作3d动画的软件搜索引擎seo关键词优化效果
  • 动态网站开发主流软件百度云登录入口
  • java做网站程序百度网盘人工客服
  • wordpress博客重装成都seo服务
  • 秦皇岛建设局长seo 适合哪些行业
  • 免费源码资源站百度教育会员
  • 湛江找人做网站排名动态网站建设
  • 贵阳网站建设兼职优化品牌seo关键词
  • 衡阳做网站优化余姚seo智能优化
  • 餐饮公司网站模板爱站网关键词搜索工具
  • 老网站做成适合手机端的网站怎么做南宁seo内部优化
  • 聊城做网站做的不错的专业网站优化排名
  • 怎么学做网站PHP湖南广告优化
  • 北京高端网站制作公司高端网站建设定制
  • 小网站关键词搜什么windows优化大师官网
  • 一般网站建设多少钱百度推广代理公司广州
  • 金融公司网站设计图网络营销的未来6个发展趋势
  • wordpress手机主题视频网站优化员seo招聘
  • 做网站都要用到框架吗武汉seo优化排名公司