1 程序运行日志记录 我们的程序起来之后,在后台运行的时候,我们如何拿到他在运行中的一些信息呢,我们当然可以通过日志去记录。我们就得使用 log 包 [15:14:25 root@go testlog]#go doc log package log // import "log" Package log implements a simple …
go 操作 mysql 数据 DQL 查询语句范例 我们现在需要在程序中对下面这张表进行查询 # 查看 students 表的数据类型 MariaDB [hellodb]> desc students; +-----------+---------------------+------+-----+---------+------------…
8 html 常用标签与模板 web 开发就是动态的生成响应结果 比如有时候我们需要给用户响应一个 html 格式,html 是一个超文本标记语言。 HTML 是用来描述网页的一种语言。 HTML 指的是超文本标记语言 (Hyper Text Markup Language) HTML 不是一种编程语言,而是一种标记语言 (markup langu…
7 http-client开发 所谓的 http-client 开发就是需要对服务方发起请求http.Client,如何在我们的 client 上提交数据。 提交数据的几种方式 通过 RUL 提交参数 通过 HTTP 协议进行提交 GET/POST HEADER BODY 7.1 客户端 Get 请求方式 1.编写一个 server 端 packa…
如何获取请求数据 我们先写一个 server 端的的 http 服务器,输出当前时间 package main import ( "fmt" "net/http" "time" ) func main() { addr := ":8888" // 绑定处理器函数 http.HandleFunc("/", func(rw http.…
1 RPC RPC 叫做远程过程调用,有的时候也叫做远程方法或者远程函数调用 这两个进程进行交换数据,那他就必须建立网络进行交换,交换数据的话无非就是有一端是服务器端,有一端是客户端。然后客户端要给服务器端发送一个请求,服务器端就需要给客户端一个响应。 请求和响应的话无非就是请求的数据,数据的话主要有编码和解码,当服务器只提供一个功能的时候,那我们…
gin 框架 1 简介 Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点 对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错 借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范 1.1…
1 http 探针工具 实现一个简单的http探测的web gin写一个web /probe/http?host=baidu.com&is_https=1 host代表探测的地址或ip is_https=1代表探测 https://baidu.com否则是 http://baidu.com 返回探测的结果 域名的ip status_code…
2.3 UDP 服务器和客户端开发 UDP 协议是非面向连接 UDP 其实是一种不可靠的协议,它在发送的时候不管客户端是否存在,也不管数据是否真的发送给了客户端。在工作中常见的 UDP 协议一般都是 DNS 在使用 在 UDP 种服务端开发和客户端开发都和 TCP 一样的。三个最主要的因素都是地址和协议还有链接 在 UDP 开发种没有监听 // 开…
2.2 tcp 服务器并发处理客户端请求范例 并发: 时间服务器 当 client 链接,就给客户端响应,服务器端就给客户端返回一个当前时间 2.2.1 未作并发处理范例 server 端 package main import ( "fmt" "net" "time" ) func main() { addr := "0.0.0.0:99…