billing

command
v0.0.0-...-c9dffe9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 20, 2021 License: Apache-2.0 Imports: 15 Imported by: 0

README

计费系统 Billing server

该模块主要承接pineapple的计费功能,其中包含有用户的账户管理,算力规格的管理,以及用户任务的计费。下面简单介绍每个子目录的相关信息:

conf

该模块主要是读取相关的环境变量,目前主要是mongodb相关。

handler

实现了对外的接口(主要是对webserver以及webhook),接口文档是doc/api/billing.yaml 注意:instance这个接口已经被废弃。

utils

实现了一些工具包,方便handler使用

  • billing-utils.go:更改用户账户信息的相关函数,主要被handler/account.go使用。

  • computeunit-utils.go:查询computeunit以及group的相关函数,主要被handler/computeunit.go使用

  • k8s-utils.go:k8s客户端,主要被heartbeat使用

heartbeat

用于计费,使用go rountine执行,每分钟执行一次,对用户进行扣费,在log中输出所有无法被计费的pod。 当用户的余额不足时,执行用户的callback方法,向webserver发请求,杀死该用户的所有任务。

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
Package conf implements methods to get mongodb configs from flags or environment variables.
Package conf implements methods to get mongodb configs from flags or environment variables.
Package handler implements methods for
Package handler implements methods for
Package utils implements utility methods
Package utils implements utility methods

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL