xcweaver

module
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 13, 2024 License: Apache-2.0

README

Service Weaver Go Reference

Service Weaver is a programming framework for writing, deploying, and managing distributed applications. You can run, test, and debug a Service Weaver application locally on your machine, and then deploy it to the cloud with a single command.

$ go run .                      # Run locally.
$ weaver gke deploy weaver.toml # Run in the cloud.

Visit https://serviceweaver.dev to learn more about Service Weaver.

Installation and Getting Started

Visit https://serviceweaver.dev/docs.html for installation instructions and information on getting started.

Contributing

Please read our contribution guide for details on how to contribute.

Directories

Path Synopsis
cmd
xcweaver command
Weaver deploys and manages Weaver applications.
Weaver deploys and manages Weaver applications.
dev
docgen command
docgen generates a static web site from markdown and other files.
docgen generates a static web site from markdown and other files.
examples
hello command
helloworld command
internal
cond
Package cond implements a context-aware condition variable.
Package cond implements a context-aware condition variable.
config
Package config contains config related utilities.
Package config contains config related utilities.
env
Package env implements helper functions for dealing with environment variables.
Package env implements helper functions for dealing with environment variables.
files
Package files contains file-related utilities.
Package files contains file-related utilities.
heap
Package heap provide a min-heap implementation called Heap.
Package heap provide a min-heap implementation called Heap.
must
Package must provides a generic Must function.
Package must provides a generic Must function.
net/call
Package call implements an RPC mechanism.
Package call implements an RPC mechanism.
pipe
Package pipe extends os.exec, making it easier to create pipes to subcommands.
Package pipe extends os.exec, making it easier to create pipes to subcommands.
reflection
Package reflection implements helpers for reflection code.
Package reflection implements helpers for reflection code.
register
Package register implements a write-once register.
Package register implements a write-once register.
routing
Package routing includes utilities for routing and assignments.
Package routing includes utilities for routing and assignments.
status
Package status contains code for implementing status related commands like "xcweaver multi status" and "xcweaver single dashboard".
Package status contains code for implementing status related commands like "xcweaver multi status" and "xcweaver single dashboard".
tool/callgraph
Package callgraph contains code to create visualizations of component call graphs stored inside a Service Weaver binary.
Package callgraph contains code to create visualizations of component call graphs stored inside a Service Weaver binary.
Package metrics provides an API for counters, gauges, and histograms.
Package metrics provides an API for counters, gauges, and histograms.
Package runtime contains code suitable for deployer implementers but not Service Weaver application developers.
Package runtime contains code suitable for deployer implementers but not Service Weaver application developers.
bin
Package bin contains code to extract data from a Service Weaver binary.
Package bin contains code to extract data from a Service Weaver binary.
codegen
Package codegen contains functions and types used by the weaver_gen.go files generated by "xcweaver generate".
Package codegen contains functions and types used by the weaver_gen.go files generated by "xcweaver generate".
colors
Package colors contains color-related utilities.
Package colors contains color-related utilities.
deployers
Deployers provides useful utilities for implementing Service Weaver deployers.
Deployers provides useful utilities for implementing Service Weaver deployers.
envelope
Package envelope implements a sidecar-like process that connects a weavelet to its environment.
Package envelope implements a sidecar-like process that connects a weavelet to its environment.
logging
Package logging contains logging related utilities.
Package logging contains logging related utilities.
metrics
Package metrics implements Service Weaver metrics.
Package metrics implements Service Weaver metrics.
perfetto
Package perfetto provides utilities for encoding trace spans in a format that can be read by the Perfetto UI.
Package perfetto provides utilities for encoding trace spans in a format that can be read by the Perfetto UI.
protomsg
Package protomsg contains protobuf-related utilities.
Package protomsg contains protobuf-related utilities.
retry
Package retry contains code to perform retries with exponential backoff.
Package retry contains code to perform retries with exponential backoff.
tool
Package tool contains utilities for creating Service Weaver tools similar to xcweaver-multi, xcweaver-gke, and xcweaver-gke-local.
Package tool contains utilities for creating Service Weaver tools similar to xcweaver-multi, xcweaver-gke, and xcweaver-gke-local.
traces
Package perfetto contains libraries for displaying trace information in the Perfetto UI.
Package perfetto contains libraries for displaying trace information in the Perfetto UI.
version
Package version contains the version of the xcweaver module and its constituent APIs (e.g., the pipe API, the codegen API).
Package version contains the version of the xcweaver module and its constituent APIs (e.g., the pipe API, the codegen API).
sim
Package sim implements deterministic simulation.
Package sim implements deterministic simulation.
internal/bank
Package bank includes an example of how to test Service Weaver applications using the sim package.
Package bank includes an example of how to test Service Weaver applications using the sim package.
Package weavertest provides a way to test Service Weaver components.
Package weavertest provides a way to test Service Weaver components.
internal/chain
Package chain defines a chain of components A -> B -> C with methods to propagate a value from the head of the chain to the tail of the chain.
Package chain defines a chain of components A -> B -> C with methods to propagate a value from the head of the chain to the tail of the chain.
internal/generate
Package generate tests that "weaver generate"-generated code *executes* correctly.
Package generate tests that "weaver generate"-generated code *executes* correctly.
internal/simple
Package simple is used for a trivial test of code that uses Service Weaver.
Package simple is used for a trivial test of code that uses Service Weaver.
website
blog/deployers/multi command
Package main implements a simple multiprocess deployer.
Package main implements a simple multiprocess deployer.
blog/deployers/single command
Package main implements a simple singleprocess deployer.
Package main implements a simple singleprocess deployer.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL