1
0
mirror of https://github.com/go-micro/go-micro.git synced 2024-12-12 08:23:58 +02:00
go-micro/runtime
Vasiliy Tolstov 7b385bf163
minimize allocations in logger and tunnel code (#1323)
* logs alloc

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* fix allocs

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* fix allocs

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* tunnel allocs

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* try to fix tunnel

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* cache cipher for send

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* more logger

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* more logger

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* more logger

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* more logger

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* more logger

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* more logger

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>

* more logger

Signed-off-by: Vasiliy Tolstov <v.tolstov@unistack.org>
2020-03-11 17:55:39 +00:00
..
kubernetes minimize allocations in logger and tunnel code (#1323) 2020-03-11 17:55:39 +00:00
local minimize allocations in logger and tunnel code (#1323) 2020-03-11 17:55:39 +00:00
service Dynamic Runtime source for k8s with github packages (#1252) 2020-02-24 17:47:47 +00:00
default.go minimize allocations in logger and tunnel code (#1323) 2020-03-11 17:55:39 +00:00
options.go Dynamic Runtime source for k8s with github packages (#1252) 2020-02-24 17:47:47 +00:00
README.md Add runtime => run 2019-05-31 00:26:34 +01:00
runtime.go Runtime (#1160) 2020-02-05 13:59:35 +00:00
service.go minimize allocations in logger and tunnel code (#1323) 2020-03-11 17:55:39 +00:00

Runtime

A runtime for self governing services.

Overview

In recent years we've started to develop complex architectures for the pipeline between writing code and running it. This philosophy of build, run, manage or however many variations, has created a number of layers of abstraction that make it all the more difficult to run code.

Runtime manages the lifecycle of a service from source to running process. If the source is the source of truth then everything in between running is wasted breath. Applications should be self governing and self sustaining. To enable that we need libraries which make it possible.

Runtime will fetch source code, build a binary and execute it. Any Go program that uses this library should be able to run dependencies or itself with ease, with the ability to update itself as the source is updated.

Features

  • Source - Fetches source whether it be git, go, docker, etc
  • Package - Compiles the source into a binary which can be executed
  • Process - Executes a binary and creates a running process

Usage

TODO