You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by GitBox <gi...@apache.org> on 2020/08/25 10:35:22 UTC

[GitHub] [flink-statefun] carp84 commented on a change in pull request #131: [FLINK-18968] Translate README.md to Chinese

carp84 commented on a change in pull request #131:
URL: https://github.com/apache/flink-statefun/pull/131#discussion_r476234672



##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>

Review comment:
       I'm not quite sure whether translate the name into Chinese is a good idea. Personally I prefer to keep the English name.
   ```suggestion
   <img alt="Stateful Functions" src="docs/fig/stateful_functions_logo.png" width=350px/>
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 

Review comment:
       ```suggestion
   该文档旨在简要介绍使用 Stateful Functions 需要了解的核心概念和设置方法。 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 
+
+有关详细文档,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 
+
+有关代码示例,请查看[示例](statefun-examples/) 。 
+
+ [![构建状态](https://travis-ci.org/apache/flink-statefun.svg?branch=master)](https://travis-ci.org/apache/flink-statefun) 
+
+## 目录
+
+- [核心概念](#core-concepts) 
+   * [抽象化](#abstraction) 
+   * [函数模块和可扩展性](#modules) 
+   * [运行时](#runtime) 
+- [入门](#getting-started) 
+   * [运行一个完整的例子](#greeter) 
+   * [新建项目](#project-setup) 
+   * [构建项目](#build) 
+   * [在IDE Harness中运行](#ide-harness) 
+- [部署应用](#deploying) 
+   * [使用Docker映像进行部署](#docker) 
+   * [部署为Flink作业](#flink) 
+- [贡献](#contributing) 
+- [开源软件许可](#license) 
+
+## <a name="core-concepts"></a>核心概念
+
+### <a name="abstraction"></a>抽象化
+
+有状态函数应用程序由以下原语组成:有状态函数,入口(ingress),
+路由器(router)和出口(egress)。 
+
+<p align="center">
+  <img src="docs/fig/stateful_functions_overview.png" width="650px"/>
+</p>
+
+#### 有状态函数
+
+* _有状态函数_是通过消息调用的一小段逻辑/代码。每个有状态函数
+都作为_函数类型_的唯一可调用_虚拟实例_存在。每个实例都通过其``type``以及type中的唯一``ID`` (字符串)来寻址。 
+
+* 有状态函数可以从ingress或任何其他有状态函数(包括其自身)中调用。
+调用者只需要知道目标函数的地址即可。 
+
+* 函数实例是_虚拟的_ ,因为它们不总是同时在内存中活跃。
+在任何时间点,只有一小部分函数及其状态作为实际对象存在。当
+虚拟实例接收到消息时,将配置一个对象并带着该虚拟实例的状态
+加载,然后处理该消息。与虚拟内存类似,许多函数的状态可能
+在任何时间点都被“交换出去”(swap out)。 
+
+* 函数的每个虚拟实例都有其自己的状态,可以通过局部变量访问。
+该状态是私有的,对于该实例是本地的(local)。
+
+如果您知道Apache Flink的DataStream API,则可以将有状态函数考虑为轻量级的
+`KeyedProcessFunction` 。函数``type``等同于处理函数转换(process function transformation),而`` ID ``是键(key)。不同之处
+在于,函数不是在定义数据流的有向非循环图(DAG)中组装(流拓扑),

Review comment:
       ```suggestion
   在于,函数不是在定义数据流(拓扑)的有向无环图(DAG)中组装,
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 
+
+有关详细文档,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 
+
+有关代码示例,请查看[示例](statefun-examples/) 。 
+
+ [![构建状态](https://travis-ci.org/apache/flink-statefun.svg?branch=master)](https://travis-ci.org/apache/flink-statefun) 
+
+## 目录
+
+- [核心概念](#core-concepts) 
+   * [抽象化](#abstraction) 
+   * [函数模块和可扩展性](#modules) 
+   * [运行时](#runtime) 
+- [入门](#getting-started) 
+   * [运行一个完整的例子](#greeter) 
+   * [新建项目](#project-setup) 
+   * [构建项目](#build) 
+   * [在IDE Harness中运行](#ide-harness) 
+- [部署应用](#deploying) 
+   * [使用Docker映像进行部署](#docker) 
+   * [部署为Flink作业](#flink) 
+- [贡献](#contributing) 

Review comment:
       ```suggestion
   - [参与贡献](#contributing) 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 
+
+有关详细文档,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 
+
+有关代码示例,请查看[示例](statefun-examples/) 。 

Review comment:
       ```suggestion
   相关代码示例,请查看[这里](statefun-examples/) 。 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 

Review comment:
       Ditto
   ```suggestion
   Stateful Functions 是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 
+
+有关详细文档,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 
+
+有关代码示例,请查看[示例](statefun-examples/) 。 
+
+ [![构建状态](https://travis-ci.org/apache/flink-statefun.svg?branch=master)](https://travis-ci.org/apache/flink-statefun) 
+
+## 目录
+
+- [核心概念](#core-concepts) 
+   * [抽象化](#abstraction) 

Review comment:
       ```suggestion
      * [摘要](#abstraction) 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 

Review comment:
       ```suggestion
   Stateful Functions 使我们能够将强大的状态管理和组合方法,与 AWS Lambda 等 FaaS 实现和 Kubernetes 等现代资源编排框架的弹性、快速扩缩容和滚动升级功能相结合。通过这些特性,它解决了当今许多 FaaS 解决方案中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :函数间的状态一致性和高效消息传递。 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 
+
+有关详细文档,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 

Review comment:
       ```suggestion
   更多详细信息,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 
+
+有关详细文档,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 
+
+有关代码示例,请查看[示例](statefun-examples/) 。 
+
+ [![构建状态](https://travis-ci.org/apache/flink-statefun.svg?branch=master)](https://travis-ci.org/apache/flink-statefun) 
+
+## 目录
+
+- [核心概念](#core-concepts) 
+   * [抽象化](#abstraction) 
+   * [函数模块和可扩展性](#modules) 
+   * [运行时](#runtime) 
+- [入门](#getting-started) 
+   * [运行一个完整的例子](#greeter) 
+   * [新建项目](#project-setup) 
+   * [构建项目](#build) 
+   * [在IDE Harness中运行](#ide-harness) 
+- [部署应用](#deploying) 
+   * [使用Docker映像进行部署](#docker) 
+   * [部署为Flink作业](#flink) 
+- [贡献](#contributing) 
+- [开源软件许可](#license) 
+
+## <a name="core-concepts"></a>核心概念
+
+### <a name="abstraction"></a>抽象化
+
+有状态函数应用程序由以下原语组成:有状态函数,入口(ingress),
+路由器(router)和出口(egress)。 

Review comment:
       ```suggestion
   Stateful Functions 应用程序由以下原语组成:有状态函数,入口(ingress),路由器(router)和出口(egress)。 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 
+
+有关详细文档,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 
+
+有关代码示例,请查看[示例](statefun-examples/) 。 
+
+ [![构建状态](https://travis-ci.org/apache/flink-statefun.svg?branch=master)](https://travis-ci.org/apache/flink-statefun) 
+
+## 目录
+
+- [核心概念](#core-concepts) 
+   * [抽象化](#abstraction) 
+   * [函数模块和可扩展性](#modules) 
+   * [运行时](#runtime) 
+- [入门](#getting-started) 
+   * [运行一个完整的例子](#greeter) 
+   * [新建项目](#project-setup) 
+   * [构建项目](#build) 
+   * [在IDE Harness中运行](#ide-harness) 
+- [部署应用](#deploying) 
+   * [使用Docker映像进行部署](#docker) 
+   * [部署为Flink作业](#flink) 
+- [贡献](#contributing) 
+- [开源软件许可](#license) 
+
+## <a name="core-concepts"></a>核心概念
+
+### <a name="abstraction"></a>抽象化
+
+有状态函数应用程序由以下原语组成:有状态函数,入口(ingress),
+路由器(router)和出口(egress)。 
+
+<p align="center">
+  <img src="docs/fig/stateful_functions_overview.png" width="650px"/>
+</p>
+
+#### 有状态函数
+
+* _有状态函数_是通过消息调用的一小段逻辑/代码。每个有状态函数
+都作为_函数类型_的唯一可调用_虚拟实例_存在。每个实例都通过其``type``以及type中的唯一``ID`` (字符串)来寻址。 
+
+* 有状态函数可以从ingress或任何其他有状态函数(包括其自身)中调用。
+调用者只需要知道目标函数的地址即可。 
+
+* 函数实例是_虚拟的_ ,因为它们不总是同时在内存中活跃。
+在任何时间点,只有一小部分函数及其状态作为实际对象存在。当
+虚拟实例接收到消息时,将配置一个对象并带着该虚拟实例的状态
+加载,然后处理该消息。与虚拟内存类似,许多函数的状态可能
+在任何时间点都被“交换出去”(swap out)。 
+
+* 函数的每个虚拟实例都有其自己的状态,可以通过局部变量访问。
+该状态是私有的,对于该实例是本地的(local)。
+
+如果您知道Apache Flink的DataStream API,则可以将有状态函数考虑为轻量级的
+`KeyedProcessFunction` 。函数``type``等同于处理函数转换(process function transformation),而`` ID ``是键(key)。不同之处
+在于,函数不是在定义数据流的有向非循环图(DAG)中组装(流拓扑),
+而是使用地址将事件任意发送到所有其他函数。 
+
+#### 入口和出口
+
+* _入口_ (Ingress)是事件最初到达有状态函数应用程序的方式。
+入口可以是消息队列,日志或HTTP服务器-产生事件并由
+应用程序处理的任何物件。 
+
+* _路由器_(Router)连接到入口(Ingress),以确定哪个函数实例应最初处理事件。 
+
+* _出口_(Egress)是一种以标准化方式从应用程序发送事件的方法。
+出口是可选的;也有可能没有事件离开应用程序和函数接收器(functions sink)事件,或
+直接调用其他应用程序。 

Review comment:
       ```suggestion
   出口是可选的;也有可能没有事件离开应用程序,函数会完成事件的处理或直接调用其他应用程序。 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 
+
+有关详细文档,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 
+
+有关代码示例,请查看[示例](statefun-examples/) 。 
+
+ [![构建状态](https://travis-ci.org/apache/flink-statefun.svg?branch=master)](https://travis-ci.org/apache/flink-statefun) 
+
+## 目录
+
+- [核心概念](#core-concepts) 
+   * [抽象化](#abstraction) 
+   * [函数模块和可扩展性](#modules) 
+   * [运行时](#runtime) 
+- [入门](#getting-started) 
+   * [运行一个完整的例子](#greeter) 
+   * [新建项目](#project-setup) 
+   * [构建项目](#build) 
+   * [在IDE Harness中运行](#ide-harness) 
+- [部署应用](#deploying) 
+   * [使用Docker映像进行部署](#docker) 
+   * [部署为Flink作业](#flink) 
+- [贡献](#contributing) 
+- [开源软件许可](#license) 
+
+## <a name="core-concepts"></a>核心概念
+
+### <a name="abstraction"></a>抽象化
+
+有状态函数应用程序由以下原语组成:有状态函数,入口(ingress),
+路由器(router)和出口(egress)。 
+
+<p align="center">
+  <img src="docs/fig/stateful_functions_overview.png" width="650px"/>
+</p>
+
+#### 有状态函数
+
+* _有状态函数_是通过消息调用的一小段逻辑/代码。每个有状态函数
+都作为_函数类型_的唯一可调用_虚拟实例_存在。每个实例都通过其``type``以及type中的唯一``ID`` (字符串)来寻址。 
+
+* 有状态函数可以从ingress或任何其他有状态函数(包括其自身)中调用。
+调用者只需要知道目标函数的地址即可。 
+
+* 函数实例是_虚拟的_ ,因为它们不总是同时在内存中活跃。
+在任何时间点,只有一小部分函数及其状态作为实际对象存在。当
+虚拟实例接收到消息时,将配置一个对象并带着该虚拟实例的状态
+加载,然后处理该消息。与虚拟内存类似,许多函数的状态可能
+在任何时间点都被“交换出去”(swap out)。 
+
+* 函数的每个虚拟实例都有其自己的状态,可以通过局部变量访问。
+该状态是私有的,对于该实例是本地的(local)。
+
+如果您知道Apache Flink的DataStream API,则可以将有状态函数考虑为轻量级的
+`KeyedProcessFunction` 。函数``type``等同于处理函数转换(process function transformation),而`` ID ``是键(key)。不同之处
+在于,函数不是在定义数据流的有向非循环图(DAG)中组装(流拓扑),
+而是使用地址将事件任意发送到所有其他函数。 
+
+#### 入口和出口
+
+* _入口_ (Ingress)是事件最初到达有状态函数应用程序的方式。
+入口可以是消息队列,日志或HTTP服务器-产生事件并由
+应用程序处理的任何物件。 
+
+* _路由器_(Router)连接到入口(Ingress),以确定哪个函数实例应最初处理事件。 

Review comment:
       ```suggestion
   * _路由器_(Router)连接到入口(Ingress)并决定最先处理事件的函数实例。 
   ```

##########
File path: README.zh.md
##########
@@ -0,0 +1,228 @@
+<img alt="有状态函数" src="docs/fig/stateful_functions_logo.png" width=350px/>
+
+有状态函数是一个[Apache Flink](https://flink.apache.org/)库, __可简化构建分布式有状态应用程序的过程__ 。它基于有着可持久化状态的函数,这些函数可以在强大的一致性保证下进行动态交互。 
+
+有状态函数使强大的状态管理和组合,与AWS Lambda之类的FaaS实现和Kubernetes之类的现代资源编排框架的弹性,快速缩放/零缩放和滚动升级功能相结合成为可能。通过这些特性,它解决了当今许多FaaS设置中[最常被引用的两个缺点](https://www2.eecs.berkeley.edu/Pubs/TechRpts/2019/EECS-2019-3.pdf) :状态一致和函数之间的高效消息传递。 
+
+本自述文件旨在简要介绍核心概念以及如何进行设置
+以使您开始使用有状态函数。 
+
+有关详细文档,请访问[官方文档](https://ci.apache.org/projects/flink/flink-statefun-docs-master) 。 
+
+有关代码示例,请查看[示例](statefun-examples/) 。 
+
+ [![构建状态](https://travis-ci.org/apache/flink-statefun.svg?branch=master)](https://travis-ci.org/apache/flink-statefun) 
+
+## 目录
+
+- [核心概念](#core-concepts) 
+   * [抽象化](#abstraction) 
+   * [函数模块和可扩展性](#modules) 
+   * [运行时](#runtime) 
+- [入门](#getting-started) 
+   * [运行一个完整的例子](#greeter) 
+   * [新建项目](#project-setup) 
+   * [构建项目](#build) 
+   * [在IDE Harness中运行](#ide-harness) 
+- [部署应用](#deploying) 
+   * [使用Docker映像进行部署](#docker) 
+   * [部署为Flink作业](#flink) 
+- [贡献](#contributing) 
+- [开源软件许可](#license) 
+
+## <a name="core-concepts"></a>核心概念
+
+### <a name="abstraction"></a>抽象化
+
+有状态函数应用程序由以下原语组成:有状态函数,入口(ingress),
+路由器(router)和出口(egress)。 
+
+<p align="center">
+  <img src="docs/fig/stateful_functions_overview.png" width="650px"/>
+</p>
+
+#### 有状态函数
+
+* _有状态函数_是通过消息调用的一小段逻辑/代码。每个有状态函数
+都作为_函数类型_的唯一可调用_虚拟实例_存在。每个实例都通过其``type``以及type中的唯一``ID`` (字符串)来寻址。 
+
+* 有状态函数可以从ingress或任何其他有状态函数(包括其自身)中调用。
+调用者只需要知道目标函数的地址即可。 
+
+* 函数实例是_虚拟的_ ,因为它们不总是同时在内存中活跃。
+在任何时间点,只有一小部分函数及其状态作为实际对象存在。当
+虚拟实例接收到消息时,将配置一个对象并带着该虚拟实例的状态
+加载,然后处理该消息。与虚拟内存类似,许多函数的状态可能
+在任何时间点都被“交换出去”(swap out)。 
+
+* 函数的每个虚拟实例都有其自己的状态,可以通过局部变量访问。
+该状态是私有的,对于该实例是本地的(local)。
+
+如果您知道Apache Flink的DataStream API,则可以将有状态函数考虑为轻量级的
+`KeyedProcessFunction` 。函数``type``等同于处理函数转换(process function transformation),而`` ID ``是键(key)。不同之处
+在于,函数不是在定义数据流的有向非循环图(DAG)中组装(流拓扑),
+而是使用地址将事件任意发送到所有其他函数。 
+
+#### 入口和出口
+
+* _入口_ (Ingress)是事件最初到达有状态函数应用程序的方式。
+入口可以是消息队列,日志或HTTP服务器-产生事件并由
+应用程序处理的任何物件。 

Review comment:
       ```suggestion
   入口可以是消息队列,日志或HTTP服务器-它们产生事件并交由应用程序处理。 
   ```




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org