Prometheus
B站视频
Prometheus 是一个生态。
1. 概述
Prometheus Server,主要用于抓取数据和存储时序数据,另外还提供查询和 Alert Rule 配置管理。
client libraries,用于检测应用程序代码的客户端库。
push gateway,用于批量,短期的监控数据的汇总节点,主要用于业务数据汇报等。
exporters,收集监控样本数据,并以标准格式向Prometheus 提供。例如:收集服务器系统数据的node_exporter,收集MySQL监控样本数据的是MySQL exporter 等等。
alertmanager,用于告警通知管理。
Pushgateway 是Prometheus 生态中一个重要工具,使用它的原因主要是:
Prometheus 采用pull模式,可能由于不在一个子网或者防火墙原因,导致Prometheus 无法直接拉取各个target 数据。
在监控业务数据的时候,需要将不同数据汇总,由Prometheus 统一收集。
当exporter不能满足需要时,也可以通过自定义(python、shell、java)监控我们想要 ...
go包管理
https://cnblogs.com/songhaibin/articles/15512953.html
1. 三种包管理方式
使用go path问题
代码开发必须在go path src目录下,不然,就有问题。
依赖手动管理
依赖包没有版本可言
从这个看, go path不算包管理工具
govendor
解决了包依赖,一个配置文件就管理
依赖包全都下载到项目vendor下,每个项目都把有一份。拉取项目时,开始怀疑人生。
go mod介绍
go modules 是 golang 1.11 新加的特性。现在1.12 已经发布了,是时候用起来了。Modules官方定义为:
模块是相关Go包的集合。modules是源代码交换和版本控制的单元。 go命令直接支持使用modules,包括记录和解析对其他模块的依赖性。modules替换旧的基于GOPATH的方法来指定在给定构建中使用哪些源文件。
2. go mod基本说明
下面设置go mod和go proxy
12go env -w GO111MODULE=ongo env -w GOPROXY=https:// ...
SQLBoiler
SQLBoiler入门指导1-最好用的Go ORM框架
SQLBoiler官方文档翻译–最好用的Go ORM框架
SQLBoiler 是一个根据数据库表生成对应的 Go ORM 代码的工具。
它是一个数据库先行的 ORM 框架,也就是说你需要先设计你的数据库,而不是像 gorm 那样先设计 struct。
1. 环境
这里使用 MySQL 作为数据库,其他数据库配置和依赖可能会有所不同。
环境要求:
Go 1.13以上
表名列名使用蛇形命名法snake_case
蛇形命名法
特点
全部小写:所有字母都使用小写。
单词间隔:单词之间使用下划线(_)来分隔。
数据库表结构
123456789CREATE TABLE `user` ( `id` bigint(0) UNSIGNED NOT NULL AUTO_INCREMENT, `username` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, `password` varchar(64) CHARACTE ...
Gin
https://www.liwenzhou.com/posts/Go/gin/
中文文档
一、下载与示例
下载并安装Gin:
1go get -u github.com/gin-gonic/gin
例子:
1234567891011121314151617181920package mainimport ( "github.com/gin-gonic/gin")func main() { // 创建一个默认的路由引擎 r := gin.Default() // GET:请求方式;/hello:请求的路径 // 当客户端以GET方法请求/hello路径时,会执行后面的匿名函数 r.GET("/hello", func(c *gin.Context) { // c.JSON:返回JSON格式的数据 c.JSON(200, gin.H{ "message": "Hello world!", ...
leetcode hot 100 刷题(go语言版)
入口
Cookbook
哈希
两数之和
查看代码 顺序扫描数组,对每一个元素,在 map 中找能组合给定值的另一半数字,如果找到了,直接返回 2 个数字的下标即可。如果找不到,就把这个数字存入 map 中,等待扫到“另一半”数字的时候,再取出来返回结果。
1234567891011121314151617func twoSum(nums []int, target int) []int { visited := make(map[int]int) // map[val]index ans := make([]int, 2) for i := 0; i < len(nums); i++ { anotherPart := target - nums[i] anotherPartIndex, ok := visited[anotherPart] if ok { ans[0] = anotherPartIndex ans[1] = i ...
如何学习新技术
怎么去学习新技术
何时需要学习新技术
遇到一个新的问题、新的问题,首先我们会看看现有的技术能否解决,其次我们就需要学习新的技术。
跳槽,学习新的技术。
怎么学习新的技术
学习新技术:
(1)原理
(2)基本语法
快速入门案例,会基本使用,不需要涉及技术细节
讨论这个新技术的细节
(1)怎么使用更规范
(2)有什么使用的陷阱
(3)使用时,有什么注意事项
……
Go学习路线
等我称为go语言大佬再更新,啊哈哈……
amis
官方仓库:baidu/amis: 前端低代码框架,通过 JSON 配置就能生成各种页面。 (github.com)
官方文档:中文文档
官方可视化编辑器:可视化编辑器
B站教学视频:Amis 前端低代码框架 百度出品 基础简介(1)_哔哩哔哩_bilibili
这玩意需要会json,不了解的先学一下语法
低代码平台amis学习 三:发送网络请求并回显响应内容 - 我是冰霜 - 博客园 (cnblogs.com)
概念
接下来我要用我的话来说一下这个东西,可能有些说的不太准确,主要是自用,细节还是看文档
背景:
低代码是什么?
低代码(Low-Code)是一种软件开发方法,旨在通过最小化手动编码的需求,使开发人员能够更快速地构建和部署应用程序。低代码平台提供了一套可视化的工具和组件,使开发人员可以通过拖放、配置和设置属性来创建应用程序,从而从头开始编写大量的代码。低代码平台的主要目标是降低开发应用程序所需的技术复杂度,从而加快开发周期并减少这种方法适用于那些需要快速响应业务需求、构建原型、开发内部工具或简化业务流程的项目。
可以想象自己正在建造一座房子。传统的方法是从头开始打 ...
面经
我的简历
CS-Notes 面试笔记 (cyc2018.xyz)
小林coding (xiaolincoding.com)
帅地玩编程-校招|面试|学习路线,你都可以在这里找到 (iamshuaidi.com)
大厂15万字C++开发面试手册出炉(C++和计算机基础全有) (qq.com)
编程十万问的个人空间 (bilibili.com)
程序员面试HR问题汇总及答案,好不容易过了一面二面,千万别栽在HR面_哔哩哔哩_bilibili
手撕
宇量升:
查看解析 就是leetcode的动态规划原题,刷的不多,压根就没往动态规划想,下面是现场做的暴力解法
12345678910111213141516171819202122232425262728293031323334353637383940#define _CRT_SECURE_NO_WARNINGS#include<bits/stdc++.h>using namespace std;int main() { if (freopen("./sample1.txt", &quo ...
LaTeX入门
零基础3小时精通LaTeX排版!数学建模论文排版 | 毕业设计 | 学术论文 | 学术报告等都能用!_哔哩哔哩_bilibili
安装
编译器:TeXlive、MacTex、CTeX
编辑器:TexStudio、TeXwords、Texmaker、Overleaf
To be continue……
YAML
YAML
参考地址:
https://www.ruanyifeng.com/blog/2016/07/yaml.html
https://daihainidewo.github.io/blog/yaml教程/
现代配置指南——YAML 比 JSON 高级在哪? - 掘金 (juejin.cn)
本文部分来自菜鸟驿站
编程免不了要写配置文件,怎么写配置也是一门学问。
YAML 是专门用来写配置文件的语言,非常简洁和强大,远比 JSON 格式方便。
YAML 是 “YAML Ain’t a Markup Language”(YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:“Yet Another Markup Language”(仍是一种标记语言)。
YAML 的语法和其他高级语言类似,并且可以简单表达清单、散列表,标量等数据形态。它使用空白符号缩进和大量依赖外观的特色,特别适合用来表达或编辑数据结构、各种配置文件、倾印调试内容、文件大纲(例如:许多电子邮件标题格式和YAML非常接近)。
YAML 的配置文件后缀为 .yml,如:xxx.yml ...