go微服务
1.26微服务的概念微服务(micro services),是一种分布式系统解决方案有很多个小的程序分别是微服务器,分别作出反馈 单体式架构和微服务架构的区别单体式架构 复杂性会随着开发越来越高,遇到问题难以解决 技术债务逐渐上升 耦合度高,维护成本高(出现bug不容易排查,解决旧bug出现新bug) 持续交付时间较长 技术选型成本高,风险大 扩展性较差 垂直扩展:增加单个系统负荷 水平扩展:增加更多的系统成员 微服务 优点: 职责单一 轻量级通信(RPC协议) 独立性 迭代开发 缺点 运维成本高 分布式复杂 接口成本高 重复性劳动 业务分离困难 RPC协议远程过程调用(remote procedure call protocol)可以跨进程调用函数 为什么使用RPC 每个服务都被封装成进程,彼此独立 进程和进程之间,可以用不同的语言实现 RPC使用步骤服务端 注册RPC服务对象,绑定方法...
GO学习
1.25为接口做参数校验使用validator做参数校验gin默认使用的是go-playground/validator,安装go get -u github.com/go-playground/validator/v10 使用示例 123type User { age int `validate:"gte=18"` //表示大于等于18岁} 进行验证 123456789101112131415validate := validator.New()//创建验证器 err := validate.Struct(user) for _, err := range err.(validator.ValidationErrors) { fmt.Println(err.Namespace()) //命名 fmt.Println(err.Field()) fmt.Println(err.StructNamespace()) fmt.Println(err.StructField()) ...