准备应用 go应用,返回环境变量 func InitGinRouter() { engine := gin.Default() engine.GET("/test", func(ctx *gin.Context) { ctx.JSON(http.StatusOK, gin.H{ "code": 1, "msg": os.Getenv("SERVER_NODE_NAME"), }) }) engine.Run(":8800") } 编译出二进制文件hello nginx配置文件 nginx.conf user root; worker_processes auto; error_log /var/log/nginx/error.log notice; pid /var/run/nginx.pid; events { worker_connections
#定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数。 worker_processes 8; #全局错误日志定义类型,[ debug | info | notice | warn | error |
Nginx日志主要分为两种:access_log(访问日志)和error_log(错误日志)。通过访问日志我们可以得到用户的IP地址、浏览器
查询语句执行流程 MySQL 的基本架构示意图: Server 层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日
什么是docker Docker 使用 Google 公司推出的 Go 语言 进行开发实现,基于 Linux 内核的 cgroup,namespace,以及 OverlayFS 类的 Union FS 等技术,对进程进行封装隔
最早的计算机系统都是使用 EBCDIC(扩展的二进制的十进制转换码) 和 ASCII 编码,因为那时候只是用一些英文字母数字,加减号和其他一些字符,字符并不
结构体能否比较?数组能否比较?slice、map、channel能否比较?接口能否比较?函数能否比较? 结构体比较 能用"==&ldq
快速入门 curl 是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思. -i参数可以显示http response的
概述 我们可以为 Go 程序编写三类测试,即:功能测试(test)、基准测试(benchmark,也称性能测试),以及示例测试(example) 测试
lru实现 数组实现 用一个数组来存储数据,给每一个数据项标记一个访问时间戳,每次插入新数据项的时候,先把数组中存在的数据项的时间戳自增,并将新
背景 我们使用redis作为缓存,查询的时候先去redis查,如果有数据直接返回,降低数据库的压力。如果没有的话,查数据库,如果数据库中查到了
protobuf 是什么 Protocol Buffer (简称Protobuf) 是Google出品的性能优异、跨语言、跨平台的序列化库。 2001年初,Protobuf首先在Google
protobuf 是什么 Protocol Buffer (简称Protobuf) 是Google出品的性能优异、跨语言、跨平台的序列化库。 2001年初,Protobuf首先在Google
反码补码 原码:第一位表示符号位,0是正,1是负。其余表示值。 反码:正数的反码和原码相同。负数时第一个符号位不变,其他取反。 补码:正数的补码与
ssh远程登录 密码登录 整个过程所示: (1)远程主机收到用户的登录请求,把自己的公钥发给用户。 (2)用户使用这个公钥,将登录密码加密后,发送回
RPC RPC是远程过程调用(Remote Procedure Call)的缩写形式,是分布式系统中不同节点间流行的通信方式。 一个完整的RPC架构里面包含了四个核心的
protobuf 语法 Protobuf 是 Protocol Buffers 的简称,是一种与语言、平台无关,可扩展的序列化结构化数据的数据描述语言,Protobuf作为接口规范的描述语言,可以作为设计安
我们用过 rpc 来实现过简单的服务,现在我们改用 gRPC 试试。 安装 在我们的项目根下,在命令行执行 Go 语言的 gRPC 库的安装命令,如下: $ go get -u google.golang.org/grpc@v1.29.1 使用 hello.proto 文件,新增
select使用 select只会执行一次 case语句必须是对channel的操作 case语句不管是接收还是发送,语句表达式都会执行(执行顺序
cicd工作原理 gitlab-runner 使用流程 安装gitlab服务器 安装gitlab-runner 注册gitlab-runner,在这个步骤中,我们要知道执行器