ARTS 打卡 2019-04-26

2019-04-26  本文已影响0人  jiaji_3740

Algorithm

Review

主要是关于im系统的一系列文章

最近工作中接触websocket比较多,准备在im领域多了解一下。
主要有几个方面:

为什么说基于TCP的移动端IM仍然需要心跳保活?
IM消息送达保证机制实现(一):保证在线实时消息的可靠投递
知乎:TCP协议中的端口具体指的是什么,为什么要有端口,你是怎么理解的?

Tip

docker 的 gracefully shutdown

优雅的终止docker容器
几个关键点:

  1. CMD /graceful 这种方式,graceful程序会以 bash -c 方式启动,所以接收结束信号的是bash命令而不是graceful程序
  2. CMD [“/graceful”] 这种方式,graceful会直接启动作为pid=1的进程,可以直接接收docker的结束信号
// main.go

package main

import (
    "fmt"
    "os"
    "os/signal"
    "syscall"
)

func main() {
    fmt.Println("Program started...")
    ch := make(chan os.Signal, 1)
    signal.Notify(ch, syscall.SIGTERM)
    s := <-ch

    if s == syscall.SIGTERM {
        fmt.Println("SIGTERM received!")
        //Do something...
    }

    fmt.Println("Exiting...")
}
github项目配置 travis build 徽章

GitHub 研发链 travis-ci 和 codecov 介绍

徽章制作

https://shields.io/

Share

数据结构与算法之美相关分享:
https://www.jianshu.com/p/d028f4fe1256
https://www.jianshu.com/p/a595d8731f92
https://www.jianshu.com/p/95d121ede40d
https://www.jianshu.com/p/d045199e9130

上一篇 下一篇

猜你喜欢

热点阅读