Daniel-I

发现·记录·分享

Go语言内存管理(一)

内存分配

###Go语言内存管理(一)内存分配 golang作为一种“高级语言”,也提供了自己的内存管理机制。这样一方面可以简化编码的流程,降低因内存使用导致出现问题的频率(C语言使用者尤其是初学者应该深有体会),对程序猿友好。另一方面也可以减少内存相关系统调用,提升性能。 先了解下内存管理大致策略: 申请一块较大的地址空间(虚拟内存),用于内存分配及管理(golang:spans+bit...

elasticsearch集群调优

参数调优记录

##系统调优 禁用swap 使用swapoff命令可以暂时关闭swap。永久关闭需要编辑/etc/fstab,注释掉swap设备的挂载项。 swapoff -a 如果完全关闭swap不可行,可以试着降低swap使用的优先级,执行 sysctl vm.swappiness = 1 并编辑/etc/sysc...

kubernetes源码解析

apiserver路由构建解析(2)

kubernetes源码解析—- apiserver路由构建解析(2) 上文主要对go-restful这个包进行了简单的介绍,下面我们通过阅读代码来理解apiserver路由的详细构建过程。 (kubernetes代码版本:1.3.6 Commit id:ed3a29bd6aeb) 从启动位置main函数开始(kubernetes\cmd\kube-apiserver\apis...

kubernetes源码解析

apiserver路由构建解析(1)

kubernetes源码解析—- apiserver路由构建解析(1) apiserver作为k8s集群的唯一入口,内部主要实现了两个功能,一个是请求的路由和处理,简单说就是监听一个端口,把接收到的请求正确地转到相应的处理逻辑上,另一个功能就是认证及权限控制。本文主要对apiserver的路由构建过程进行解析。 apiserver使用go-restful来构建REST-style Web服...

beego搭建api服务

beego下api服务搭建实践

beego介绍 beego是一个Golang实现的开源Go应用开发框架,他可以用来快速开发 API、Web 及后端服务等各种应用,是一个 RESTful的框架,主要设计灵感来源于tornado、sinatra和flask这三个框架,但是结合了Go本身的一些特性(interface、struct 嵌入等)而设计的一个框架。 Beego Framework: 一个使用 Go 的思维来帮...

Go实现一致性哈希

用Golang实现简单场景的一致性哈希

Golang的一致性哈希实现 一致性哈希的具体介绍,可以参考: http://www.cnblogs.com/haippy/archive/2011/12/10/2282943.html import ( "hash/crc32" "sort" "strconv" "sync" ) const DEFAULT_REPLICAS = 100 typ...

qemu-ga & windows

qemu-ga windows下的安装及监控开发

windows安装qemu-ga 虚拟机配置里添加virtio serial端口 virsh edit instance-name devices里添加下面这段配置, <channel type='unix'> <source mode='bind' path='/var/lib/libvirt/qemu/org.qemu.guest_agent.0.instan...