标签:Golang相关的结果6条:

    docker运行golang应用

      搭建mysql环境mysql.appdockerrun--net=host-eMYSQL_ROOT_PASSWORD=root-eMYSQL_DATABASE=letchat-dhub.c.163.com/library/mysql:latest1.通过容器编译并运行当前目录下的golang程序(依赖需要先下载到当前目录vendor中)gobuild.appdockerrun--net=bridg…

    发布于:2019-11-18 05:07:01

    Golang方法和接口使用说明

      在编程语言中,方法和函数的概念需要搞清楚。函数指的是一个封装的代码块,我们可以直接调用它,并返回结果。而方法其实也是一种函数,只不过方法需要和某个对象绑定。Golang并没有类的概念,不过仍然有方法和接口这些概念。方法方法接收者方法接收者是一个特殊参数,给函数指定了这个参数之后,函数就成为方法了。这个特性有点像Kotlin和C#中的扩展方法,定义了带有接收者的方法之后,接收者这个类型就好像定义了这…

    发布于:2019-11-14 22:22:23

    Golang协程详解

      一、Golang线程和协程的区别备注:需要区分进程、线程(内核级线程)、协程(用户级线程)三个概念。进程、线程和协程之间概念的区别对于进程、线程,都是有内核进行调度,有CPU时间片的概念,进行抢占式调度(有多种调度算法)对于协程(用户级线程),这是对内核透明的,也就是系统并不知道有协程的存在,是完全由用户自己的程序进行调度的,因为是由用户程序自己控制,那么就很难像抢占式调度那样做到强制的CPU控制…

    发布于:2019-11-14 22:00:10

    Golang如何安全使用协程

      什么是协程?协程(Coroutine)是在1963年由MelvinE.ConwayUSAF,Bedford,MA等人提出的一个概念。而且协程的概念是早于线程(Thread)提出的。但是由于协程是非抢占式的调度,无法实现公平的任务调用。也无法直接利用多核优势。因此,我们不能武断地说协程是比线程更高级的技术。尽管,在任务调度上,协程是弱于线程的。但是在资源消耗上,协程则是极低的。一个线程的内存在MB级…

    发布于:2019-11-14 21:45:47

    centos 6.4安装supervisor守护golang进程

      最近在鼓捣golang守护进程的实现,无意发现了supervisor这个有意思的东西。supervisor是一个unix的系统进程管理软件,可以用它来管理apache、nginx等服务,若服务挂了可以让它们自动重启。当然也可以用来实现golang的守护进程,下面描述下具体实现。安装supervisor基于centos6.4。supervisor使用python编写的,可以用easy_install…

    发布于:2019-11-13 22:46:04

    golang基于redis lua封装的优先级去重队列

      前言:前两天由于某几个厂商的api出问题,导致后台任务大量堆积,又因为我这边任务流系统会重试超时任务,所以导致队列中有大量的重复任务。这时候我们要临时解决两个事情,一件事情,让一些高质量的任务优先执行;另一件事情,要有去重。rabbitmq不能很好的针对这类情况去重、分优先级。这时候我又想到了我最爱的redis…去重?list+set就可以解决,优先级,zset+zrange+zrem也可以解决……

    发布于:2019-11-04 20:55:42