ktrtos微服务框架使用总结

一、搭建相关环境

  1、go

  2、protoc(用于生成管理protobuf文件)

  3、make(执行makefile文件)

二、安装kratos-cli工具

  1、go install github.com/go-kratos/kratos/cmd/kratos/v2@latest

三、项目初始化

  1、初始化项目:

    kratos new  project_name 

    项目结构如下:

    

  2、目录结构介绍

    api: 存放protobuf文件。

    cmd:程序入口文件。

    configs:配置文件目录,配置文件是yaml格式。

    internal: internal目录是存放业务代码的。整个项目中,这个目录尤其重要,几乎所有的业务逻辑的实现源码都是存在在此目录中。

      biz:biz目录是业务逻辑目录,所有的业务逻辑都是在这一层目录实现的。

      server: server目录是定义应用使用的应用层协议。kratos提供了grpc和http两种。

      conf: conf目录定义应用的配置。和api一样,kratos的风格是使用统一的DL语言,即protobuf,定义服务的配置,然后使用protoc以及相关的插件生成go源码,供业务代码读取需要的配置项。

      data: data目录是数据层目录。数据层包含了一切提供数据的外部数据源,包括数据库、缓存甚至下游服务的rpc接口。

      service: service目录实现了api接口。api的实现(implement)是在service这一层做的。

  3、makefile介绍

   make init: (初始化环境,拉取相关依赖组件)
   make build (构建应用,生成可执行文件,会生成在项目目录里的bin目录中)
   make config (会生成 internal/conf/conf.pb.go 文件,提供对 internal/conf/conf.proto文件的调用方法。
internal/conf/conf.proto 文件对应的配置文件为 configs/config.yaml文件。)
   make api (api目录里的定义的proto文件生成对应的go文件)

 四、运行项目

  位于项目目录下执行 kratos run

  项目已成功跑起来了,http服务监听在8000端口,grpc服务监听在9000端口。

 

 

  

posted @ 2023-06-04 07:47  美好生活我心往之  阅读(59)  评论(0编辑  收藏  举报