Hexo 修改默认文章路径
认识 Redis client-output-buffer-limit 参数与源码分析
API 的 Authorization 头里为啥有个 Bearer
在我们设计和使用API授权的时候,经常会接触到如下内容:
1 | Authorization : Bearer Tokenxxxxxx |
为什么前面会有个Bearer,直接弄成这样不是更简单么。
【Prometheus+Grafana 系列】监控 MySQL 服务
前言
前面的一篇文章已经介绍了 docker-compose 搭建 Prometheus + Grafana 服务。当时实现了监控服务器指标数据,是通过 node_exporter。Prometheus 还可用来监控很多服务,比如常见的 MySQL。本文就介绍如何通过 mysqld_exporter 来监控 MySQL 指标。
下载安装包
1 | cd /opt |
【Prometheus+Grafana 系列】基于 docker-compose 搭建
前言
Prometheus
Prometheus 是有 SoundCloud 开发的开源监控系统和时序数据库,基于 Go 语言开发。通过基于 HTTP 的 pull 方式采集时序数据,通过服务发现或静态配置去获取要采集的目标服务器,支持多节点工作,支持多种可视化图表及仪表盘。
贴一下官方提供的架构图:
Pormetheus 几个主要模块有,Server,Exporters,Pushgateway,PromQL,Alertmanager,WebUI等,主要逻辑如下:
- Prometheus server 定期从静态配置的 targets 或者服务发现的 targets 拉取数据。
- 当新拉取的数据大于配置内存缓存区时,Prometheus 会将数据持久化到磁盘(如果使用 remote storage 将持久化到云端)。
- Prometheus 配置 rules,然后定时查询数据,当条件触发时,会将 alert 推送到配置的 Alertmanager。
- Alertmanager 收到警告时,会根据配置,聚合、去重、降噪等操作,最后发送警告。
- 可以使用 API,Prometheus Console 或者 Grafana 查询和聚合数据。
日志规范实践
简单易用的任务队列 -beanstalkd
概述
beanstalkd 是一个简单快速的分布式工作队列系统,协议基于 ASCII 编码运行在 TCP 上。其最初设计的目的是通过后台异步执行耗时任务的方式降低高容量 Web 应用的页面延时。其具有简单、轻量、易用等特点,也支持对任务优先级、延时/超时重发等控制,同时还有众多语言版本的客户端支持,这些优点使得它成为各种需要队列系统场景的一种常见选择。
beanstalkd 优点
- 如他官网的介绍,simple&fast,使用非常简单,适合需要引入消息队列又不想引入 kafka 这类重型的 mq,维护成本低;同时,它的性能非常高,大部分场景下都可以 cover 住。
- 支持持久化
- 支持消息优先级,topic,延时消息,消息重试等
- 主流语言客户端都支持,还可以根据 beanstalkd 协议自行实现。