Instantly share code, notes, and snippets.

View logger.go
package log
import (
"bytes"
"path"
"time"
"github.com/gin-gonic/gin"
"github.com/lestrrat/go-file-rotatelogs"
"github.com/pkg/errors"
View ae.c
#ifndef __AE_H__
#define __AE_H__
#include <time.h>
#define AE_OK 0
#define AE_ERR -1
#define AE_NONE 0 /* No events registered. */
#define AE_READABLE 1 /* Fire when descriptor is readable. */
View redis_proxy.py
"""
redis proxy
用来展示redis协议
"""
import asyncio
redis_addr = ('127.0.0.1', 6379)
proxy_addr = ('127.0.0.1', 6380)
View epoll.c
//http://www.it165.net/os/html/201308/5868.html
#include <sys/socket.h>
#include <sys/wait.h>
#include <netinet/in.h>
#include <netinet/tcp.h>
#include <sys/epoll.h>
#include <sys/sendfile.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
View tag
#!/bin/sh
# 版本号类似于 MAJOR.MINOR.PATCH 遵循 Semantic Versioning 2.0.0:
# MAJOR: 主版本号,不兼容的修改,如:底层重构、框架层变动
# MINOR:次版本号,向前兼容的修改,如:增加新功能、代码优化
# PATCH: 小版本号,修复bug
PREFIX=v
DEFAULT_VERSION=0.0.0
# 获取git版本号
View four.go 
package main
import (
"bytes"
"fmt"
"strconv"
)
const STEP, NUM = 4, 40
View bit.go
package redis
import (
r "github.com/garyburd/redigo/redis"
)
type Pool struct {
r.Pool
}
View docker-shadowsocks-go.md

##问: 我怎么用docker 部署ss server

##答:

  1. 购买vps: 这个途径比较多。 网上一搜一大把。
  2. vps上安装docker: 方法很多, 比如ubuntu上可以使用sudo apt-get install docker.io 我采用的vps服务提供商提供的docker镜像。
  3. 使用docker 安装ss-server:
View 链表刪除_內存釋放
##问
链表的一个节点被删除以后,那个节点占用的内存空间会自动释放吗?
##答
链表的节点一般是一个结构体,从链表中删除,并不会自动释放内存。
没有gc的时候,就需要手动free。注意:即使free 也可能会造成内存碎片吧。
释放和碎片两个概念不冲突。自己不维护内存池,频繁申请释放会造成内存碎片。
##谢
@贵州-左殇