Go 并发编程-应用篇

当提到并发编程的时候,人们往往会想到多线程,而 Go 最被人熟知的是借鉴 CSP 的 gorountine & channel 并发模式,那 Go 中是否支持类似传统多线程的并发编程方式呢?答案是支持;因为 Go 的 Sync 包给我们提供了互斥锁、原子操作、条件变量等同步原语。

阅读全文

Open-Falcon 浅析

监控系统概述

在监控系统领域,相信大家都经历过 Zabbix 的时代;在公司刚起步,机器数量不多时,Zabbix 可以很好的满足我们的需求,但是随着业务的发展,Zabbix 的存储会成为主要的性能瓶颈,从而引发很多问题,增加运维成本。

近些年来,随着互联网技术的不断发展,技术架构的不断演进,监控领域有两个我值得推荐的开源系统:一个是小米出品的 Open-Falcon,一个是基于 Google Borgmon 的开源实现 Prometheus。

今天主要介绍下 Open-Falcon。

阅读全文

开源监控系统浅析

为什么需要监控系统?

监控系统是整个运维体系的重要环节之一,主要服务于运维人员和开发人员;运维人员需要监控硬件、软件、网络等状态,做到故障预警、自动转移、自动恢复等,开发人员需要根据监控数据快速定位问题,提高服务的可用性。尤其是「微服务架构」,若没有监控系统,一但出现故障,定位问题就需要花费大量的时间。

阅读全文

Laravel自定义用户权限校验

背景

在现实的架构中,帐号体系往往会单独维护,应用需要鉴权的时候会请求用户中心接口,而laravel使用auth中间件时默认采用的是session进行鉴权,不能满足我们的需求,所以需要自定义权限校验。

Auth 中间件的工作原理

阅读全文