青蛙小白
#Apigateway #Kong

使用helm在Kubernetes集群中部署Kong

本文将使用helm在Kubernetes集群中部署微服务API网关kong,并将其用作Kubernetes的Ingress Controller。 Kong官方单独维护了一个项目叫Kong for Kubernetes,项目的地址是https://github.com/Kong/kubernetes-ingress-controller。 Kong for Kubernetes是一个Kubernetes的Ingress Controller,通过插件架构提供API管理能力。 Kong官方另外提供了一个Helm Chart,使用Helm安装这个Chart可以在Kubernetes集群上运行Kong所需的所有组件。

#Grpc

使用grpcurl访问gRPC服务

grpcurl是一个命令行工具,使用它可以在命令行中访问gRPC服务,就像使用curl访问http服务一样。 准备: 在gRPC服务中注册reflection服务 gRPC服务是使用Protobuf(PB)协议的,而PB提供了在运行时获取Proto定义信息的反射功能。grpc-go中的"google.golang.org/grpc/reflection"包就对这个反射功能提供了支持。 这里以grpc-go官方的helloword为例,代码结构如下: grpc-hello ├── go.mod ├── go.sum ├── main.go └── proto ├── doc.go ├── helloworld.pb.go └── helloworld.proto helloworld.proto:

#Design Patterns

设计模式之美学习笔记22: 用迪米特法则(LOD)实现高内聚、松耦合

今天继续打卡学习极客时间上的专栏“设计模式之美”, 本篇是专栏第22节的学习笔记,介绍面向对象设计原则中的迪米特法则(LOD)原则。 笔记 面向对象有很多经典的设计原则: SOLID5原则分别是 单一职责原则(SRP)、开闭原则(OCP)、里氏替换原则(LSP)、接口隔离原则(ISP)、依赖反转原则(DIP) KISS - Keep It Simple, Stupid YAGNI - You aren’t gonna need it DRY - Don’t Repeat Yourself LOD - Law of Demeter(迪米特法则,又叫做最少知识原则) LOD原则 “高内聚、弱耦合"是一个非常重要的设计思想,能够有效的提高代码的可读性和可维护性,能够缩小功能改动导致的代码改动范围。 “高内聚、弱耦合"实际上可以作为很多设计思想、设计原则的总纲,很多设计思想、设计原则都是以实现"高内聚、弱耦合"为目的,例如单一职责原则(SRP)、基于接口而非实现编程等等。

#Design Patterns

设计模式之美学习笔记21: DRY原则

今天继续打卡学习极客时间上的专栏“设计模式之美”, 本篇是专栏第21节的学习笔记,介绍面向对象设计原则中的DRY原则。 笔记 面向对象有很多经典的设计原则: SOLID5原则分别是 单一职责原则(SRP)、开闭原则(OCP)、里氏替换原则(LSP)、接口隔离原则(ISP)、依赖反转原则(DIP) KISS - Keep It Simple, Stupid YAGNI - You aren’t gonna need it DRY - Don’t Repeat Yourself LOD - Law of Demeter(迪米特法则,又叫做最少知识原则) DRY原则 DRY原则,中文译为不要重复自己,不要写重复代码,不要自己造轮子。 但实际上,重复的代码不一定违背DRY原则,而有些看似不重复的代码确可能违背DRY原则。 DRY原则也与代码的复用性相关。

#Design Patterns

设计模式之美学习笔记20: KISS原则和YAGNI原则

今天继续打卡学习极客时间上的专栏“设计模式之美”, 本篇是专栏第20节的学习笔记,介绍面向对象设计原则中的KISS原则和YAGNI原则。 笔记 面向对象有很多经典的设计原则: SOLID5原则分别是 单一职责原则(SRP)、开闭原则(OCP)、里氏替换原则(LSP)、接口隔离原则(ISP)、依赖反转原则(DIP) KISS - Keep It Simple, Stupid YAGNI - You aren’t gonna need it DRY - Don’t Repeat Yourself LOD - Law of Demeter(迪米特法则,又叫做最少知识原则) KISS原则 KISS原则直译过来就是"尽量保持简单"。 KISS原则是保持代码可读性和可维护性的重要手段,足够简单,也就意味着很容易读懂,这就让BUG不容易隐藏且更容易修复。 这个原则从另一个角度也给出了我们在做开发时不要过度设计,要学会用简单的方法解决复杂的问题。

#Design Patterns

设计模式之美学习笔记19: 依赖反转原则(DIP)

今天继续打卡学习极客时间上的专栏“设计模式之美”, 本篇是专栏第19节的学习笔记,介绍面向对象设计原则中的依赖反转原则(DIP)。 笔记 面向对象有很多经典的设计原则: SOLID5原则分别是 单一职责原则(SRP)、开闭原则(OCP)、里氏替换原则(LSP)、接口隔离原则(ISP)、依赖反转原则(DIP) KISS - Keep It Simple, Stupid YAGNI - You aren’t gonna need it DRY - Don’t Repeat Yourself LOD - Law of Demeter(迪米特法则,又叫做最少知识原则) 依赖反转原则 依赖反转(DIP)与控制反转(IOC)、依赖注入(DI)有什么区别和联系呢?