Add async_files library to support filesystem buffering and filesystem caching (#20332)
Signed-off-by: Raven Black <ravenblack@dropbox.com> Mirrored from https://github.com/envoyproxy/envoy @ 18c779af9106a1d85203621c9f4453d5901744e8pull/626/head
parent
71814ae710
commit
ac039cbb6a
4 changed files with 55 additions and 0 deletions
@ -0,0 +1,12 @@ |
|||||||
|
# DO NOT EDIT. This file is generated by tools/proto_format/proto_sync.py. |
||||||
|
|
||||||
|
load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package") |
||||||
|
|
||||||
|
licenses(["notice"]) # Apache 2 |
||||||
|
|
||||||
|
api_proto_package( |
||||||
|
deps = [ |
||||||
|
"@com_github_cncf_udpa//udpa/annotations:pkg", |
||||||
|
"@com_github_cncf_udpa//xds/annotations/v3:pkg", |
||||||
|
], |
||||||
|
) |
@ -0,0 +1,41 @@ |
|||||||
|
syntax = "proto3"; |
||||||
|
|
||||||
|
package envoy.extensions.common.async_files.v3; |
||||||
|
|
||||||
|
import "xds/annotations/v3/status.proto"; |
||||||
|
|
||||||
|
import "udpa/annotations/status.proto"; |
||||||
|
import "validate/validate.proto"; |
||||||
|
|
||||||
|
option java_package = "io.envoyproxy.envoy.extensions.common.async_files.v3"; |
||||||
|
option java_outer_classname = "AsyncFileManagerProto"; |
||||||
|
option java_multiple_files = true; |
||||||
|
option go_package = "github.com/envoyproxy/go-control-plane/envoy/extensions/common/async_files/v3;async_filesv3"; |
||||||
|
option (udpa.annotations.file_status).package_version_status = ACTIVE; |
||||||
|
option (xds.annotations.v3.file_status).work_in_progress = true; |
||||||
|
|
||||||
|
// [#protodoc-title: AsyncFileManager configuration] |
||||||
|
|
||||||
|
// Configuration to instantiate or select a singleton `AsyncFileManager`. |
||||||
|
message AsyncFileManagerConfig { |
||||||
|
message ThreadPool { |
||||||
|
// The number of threads to use. If unset or zero, will default to the number |
||||||
|
// of concurrent threads the hardware supports. This default is subject to |
||||||
|
// change if performance analysis suggests it. |
||||||
|
uint32 thread_count = 1; |
||||||
|
} |
||||||
|
|
||||||
|
// An optional identifier for the manager. An empty string is a valid identifier |
||||||
|
// for a common, default `AsyncFileManager`. |
||||||
|
// |
||||||
|
// Reusing the same id with different configurations in the same envoy instance |
||||||
|
// is an error. |
||||||
|
string id = 1; |
||||||
|
|
||||||
|
oneof manager_type { |
||||||
|
option (validate.required) = true; |
||||||
|
|
||||||
|
// Configuration for a thread-pool based async file manager. |
||||||
|
ThreadPool thread_pool = 2; |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue