## IronFunctions
IronFunctions是无服务器的微服务平台。
*
一次写入
*
[适合所有语言](https://github.com/iron-io/functions/blob/master/docs/faq.md#which-languages-are-supported)
*
[支持 AWS Lambda 格式](https://github.com/iron-io/functions/blob/master/docs/lambda/README.md)
[随时运行](https://github.com/iron-io/functions/blob/master/docs/faq.md#where-can-i-run-ironfunctions)
*
公有,私有和混合云
*
[直接从 Lambda 导入函数](https://github.com/iron-io/functions/blob/master/docs/lambda/import.md),并而在任何地方运行
[容易使用](https://github.com/iron-io/functions/blob/master/docs/README.md#for-developers)
[易于管理](https://github.com/iron-io/functions/blob/master/docs/README.md#for-operators)
用 [Go](https://golang.org/) 开发
### 示例:
下面是一个Go函数,只返回“Hello $ {NAME}!”:
<pre class="brush:cpp ;toolbar: true; auto-links: false;">package main
import (
"encoding/json"
"fmt"
"os"
)
type Person struct {
Name string
}
func main() {
p := &Person{Name: "World"}
json.NewDecoder(os.Stdin).Decode(p)
fmt.Printf("Hello %v!", p.Name)
}</pre>
将上面的代码复制并粘贴到名为func.go的文件中,然后运行以下命令来构建您的函数并进行部署。
<pre class="brush:cpp ;toolbar: true; auto-links: false;"># create func.yaml file, replace $USERNAME with your Docker Hub username.
fnctl init $USERNAME/hello
# build the function
fnctl build
# test it
fnctl run
# push it to Docker Hub
fnctl push
# create an app
fnctl apps create myapp
# create a route that maps /hello to your new function
fnctl routes create myapp /hello</pre>
现在可以调用你的函数:
<pre class="brush:cpp ;toolbar: true; auto-links: false;">curl http://localhost:8080/r/myapp/hello</pre>