码迷,mamicode.com
首页 > 其他好文 > 详细

fnproject hot functions 说明

时间:2017-10-05 18:27:38      阅读:159      评论:0      收藏:0      [点我收藏+]

标签:length   hot   form   https   tle   yaml   stat   ocs   ons   

1. 简单介绍
 所谓 hot  functions 实际上就是长时间运行的functions ,简单理解类似后台任务
2. fnproject  处理的方式
fnproject 使用 类似 http的处理方式
3. 配置使用
   参考代码
package main
import (
    "bufio"
    "bytes"
    "fmt"
    "io/ioutil"
    "net/http"
    "os"
    "strconv"
)
func main() {
    for {
        res := http.Response{
            Proto:      "HTTP/1.1",
            ProtoMajor: 1,
            ProtoMinor: 1,
            StatusCode: 200,
            Status:     "OK",
        }
        r := bufio.NewReader(os.Stdin)
        req, err := http.ReadRequest(r)
        var buf bytes.Buffer
        if err != nil {
            res.StatusCode = 500
            res.Status = http.StatusText(res.StatusCode)
            fmt.Fprintln(&buf, err)
        } else {
            l, _ := strconv.Atoi(req.Header.Get("Content-Length"))
            p := make([]byte, l)
            r.Read(p)
            fmt.Fprintf(&buf, "Hello %s\n", p)
            for k, vs := range req.Header {
                fmt.Fprintf(&buf, "ENV: %s %#v\n", k, vs)
            }
        }
        res.Body = ioutil.NopCloser(&buf)
        res.ContentLength = int64(buf.Len())
        res.Write(os.Stdout)
    }
}
    func.yaml  配置
format (mandatory) either "default" or "http". If "http", then it is a hot function.
idle_timeout (optional) - idle timeout (in seconds) before function termination, default 30 seconds.
4. 参考资料
https://github.com/fnproject/fn/tree/master/examples/tutorial/hotfunctions
https://github.com/fnproject/fn/blob/master/docs/hot-functions.md

fnproject hot functions 说明

标签:length   hot   form   https   tle   yaml   stat   ocs   ons   

原文地址:http://www.cnblogs.com/rongfengliang/p/7629472.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!