teleport/vendor/github.com/gizak/termui
Sasha Klizhentas 8356ae6a74 Use in-memory cache for the auth server API.
This commit expands the usage of the caching layer
for auth server API:

* Introduces in-memory cache that is used to serve all
Auth server API requests. This is done to achieve scalability
on 10K+ node clusters, where each node fetches certificate authorities,
roles, users and join tokens. It is not possible to scale
DynamoDB backend or other backends on 10K reads per seconds
on a single shard or partition. The solution is to introduce
an in-memory cache of the backend state that is always used
for reads.

* In-memory cache has been expanded to support all resources
required by the auth server.

* Experimental `tctl top` command has been introduced to display
common single node metrics.

Replace SQLite Memory Backend with BTree

SQLite in memory backend was suffering from
high tail latencies under load (up to 8 seconds
in 99.9%-ile on load configurations).

This commit replaces the SQLite memory caching
backend with in-memory BTree backend that
brought down tail latencies to 2 seconds (99.9%-ile)
and brought overall performance improvement.
2019-04-12 14:23:09 -07:00
..
_scripts Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
widgets Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
alignment.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
block.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
buffer.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
canvas.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
doc.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
events.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
grid.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
LICENSE Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
render.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
style.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
symbols.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
symbols_other.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
symbols_windows.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
termbox.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
text_parser.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
theme.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00
utils.go Use in-memory cache for the auth server API. 2019-04-12 14:23:09 -07:00