摘要:golang的cms 说说cms cms(内容管理系统)是建站利器。它的本质是为了快速建站。cms本质是一个后台服务站,使用这个后台,能很快搭建一个前台web站。在PHP的世界里面,CMS框架简直不要太多:著名的wordpress,漏洞很多的dedecms,以搭建论坛为主的discuz,优雅的Oct 阅读全文
一次composer错误使用引发的思考
2019-03-05 12:19 by 轩脉刃, 888 阅读, 1 推荐, 收藏, 编辑
摘要:一次composer错误使用引发的思考 这个思考源自于一个事故。让我对版本依赖重新思考了一下。 事故现象 一个线上的管理后台,一个使用laravel搭建的管理后台,之前在线上跑的好好的,今天comopser install之后,出现错误信息: 事故分析 这个是个底层库,基本上,一看就知道是版本兼容问 阅读全文
colly源码学习
2019-02-27 09:52 by 轩脉刃, 1205 阅读, 2 推荐, 收藏, 编辑
摘要:colly源码学习 "colly" 是一个golang写的网络爬虫。它使用起来非常顺手。看了一下它的源码,质量也是非常好的。本文就阅读一下它的源码。 使用示例 从Visit开始说起 首先,要做一个爬虫,我们就需要有一个结构体 Collector, 所有的逻辑都是围绕这个Collector来进行的。 阅读全文
使用chan的时候选择对象还是指针
2019-02-22 12:34 by 轩脉刃, 4469 阅读, 0 推荐, 收藏, 编辑
摘要:使用chan的时候选择对象还是指针 今天在写代码的时候遇到一个问题,在创建一个通道的时候,不确定创建的通道是使用chan A还是chan \ A。 思考了一下,觉得这个应该和函数一样是一个值传递还是参数传递的问题。然后写了个play验证了一下。 package main import ( "fmt" 阅读全文
golang中Context的使用场景
2019-02-19 09:27 by 轩脉刃, 22025 阅读, 3 推荐, 收藏, 编辑
摘要:golang中Context的使用场景 context在Go1.7之后就进入标准库中了。它主要的用处如果用一句话来说,是在于控制goroutine的生命周期。当一个计算任务被goroutine承接了之后,由于某种原因(超时,或者强制退出)我们希望中止这个goroutine的计算任务,那么就用得到这个 阅读全文
如何加速golang写业务的开发速度
2019-02-13 08:58 by 轩脉刃, 3693 阅读, 1 推荐, 收藏, 编辑
摘要:如何加速golang写业务的开发速度 不要忌讳panic golang写业务代码经常会被吐槽,写业务太慢了,其中最大的吐槽点就是,处理各种error太麻烦了。一个项目中,会有30%或者更多的是在处理error。 对于golang的error这个事情,golang的官方也说的很详细,建议函数返回err 阅读全文
从零开始搭建运维体系 - ansible
2018-12-17 14:27 by 轩脉刃, 2428 阅读, 1 推荐, 收藏, 编辑
摘要:从零开始搭建运维体系 ansible 基本配置好了局域网内的机器后,第一个遇到的问题就是如何批量操作这么多台机器,ansible就是这么一个自动化运维工具。 ansible是一个基于ssh的批量远程操作命令工具。它有分管理端和被管理端,管理端安装ansible,被管理端什么都不需要安装。这个是非常方 阅读全文
从零开始搭建运维体系 - 开始篇
2018-12-15 22:01 by 轩脉刃, 1595 阅读, 0 推荐, 收藏, 编辑
摘要:从零开始搭建运维体系 开始篇 如果给你一批机器,并且这一批机器在和外部不通的局域网内部,让你从零开始搭建一套运维体系,应该怎么做呢?有哪些开源工具和项目可以使用呢?这个系列的文章就想带大家一起讨论这个问题。 重现场景 首先我们需要使用vagrant搭建3台centos7的机器,这三台机器使用的配置大 阅读全文
Gin框架源码解析
2018-09-18 19:44 by 轩脉刃, 12443 阅读, 4 推荐, 收藏, 编辑
摘要:Gin框架源码解析 Gin框架是golang的一个常用的web框架,最近一个项目中需要使用到它,所以对这个框架进行了学习。gin包非常短小精悍,不过主要包含的路由,中间件,日志都有了。我们可以追着代码思考下,这个框架是如何一步一步过来的。 从http包说起 基本上现在的golang的web库都是从h 阅读全文
mac缺少librt问题记录
2018-08-29 11:35 by 轩脉刃, 2034 阅读, 0 推荐, 收藏, 编辑
摘要:在mac下编译一个程序的时候遇到错误 librt.so主要是glibc对real time部分的支持.所以一般含有 include头文件的代码,编译的时候需要加上 lrt makefile里面有使用 lrt的命令 网上有很多文章意思是mac的lib和include库需要引用下:https://blo 阅读全文