凯的BLOG

program

2021


confd+etcd实现nginx配置管理

·

confd是一个轻量级的配置管理工具,可以通过查询后端存储系统来实现第三方系统的动态配置管理,如NginxTomcatHAproxyDocker配置等。

confd能够查询和监听后端系统的数据变更,结合配置模版引擎动态更新本地配置文件,保持和后端系统的数据一致,并且能够执行命令或者脚本实现系统的reload或者重启。

Etcd用户和权限设置

·

创建root用户

etcdctl --user root user add root
etcdctl --user root user grant-role root root

添加root用户的时候会要求指定密码

2019


Go Modules

·

一、Go Modules介绍 #

go modules是golang1.11新加的特性。

官方定义:modules是相关Go包的集合。modules是源代码交换和版本控制的单元。go命令直接支持使用modules,包括记录和解析对其他模块的依赖性。modules替换旧的基于GOPATH的方法来指定在给定构建中使用哪些源文件。

Git工作流——Forking

·

项目维护者初始化正式仓库 #

和任何使用Git项目一样,第一步是创建在服务器上一个正式仓库,让所有团队成员都可以访问到。通常这个仓库也会作为项目维护者的公开仓库。

公开仓库应该是裸仓库,不管是不是正式代码库。所以项目维护者会运行像下面的命令来搭建正式仓库:

git init --bare /path/to/repo.git

如果有现存的代码库,维护者也要push到这个仓库中。

2015


Astar伪代码

·
简单说明Astar算法_(伪代码)_:

旋转矩形碰撞检测 OBB方向包围盒算法

·

  在Cocos2dx中进行矩形的碰撞检测时需要对旋转过的矩形做碰撞检查,由于游戏没有使用Box2D等物理引擎,所以采用了OBB(Oriented bounding box)方向包围盒算法,这个算法是基于SAT(Separating Axis Theorem)分离轴定律的。