sand:作为依赖关系网络的系统架构
sand的Python项目详细描述
砂
python代码和笔记本,将系统架构建模为依赖关系网络
sand使用python和jupyter笔记本探索
将系统架构表示为
工程工件及其相互关系。
工程工件是图形中的顶点。对于一个软件库,
工件是函数,依赖项是函数调用。为了
restful微服务,工件是服务,依赖项是
API调用。
有向边表示依赖关系及其转置、影响。
假设我们有两个微服务,A和B。
如果b调用a,那么b依赖于a。
知道b是客户机,所以依赖关系是定向的。
这种关系的转换是A影响或影响B:
B调用可能中断的A接口中不向后兼容的更改
b.b中的变化不会影响a,因此再次引导边缘。
这个简单的模型在描述
任意复杂的系统架构。沙堆和
随附的jupyter笔记本提供了可视化的工作示例
以及分析。
安装
pip install sand
您可能还希望克隆此git repo,以便与 以下示例:
git clone git@github.com:testedminds/sand.git
cd sand
开始
沙子被记录在一系列的jupyter笔记本中:
在Docker中运行
你可以通过Docker运行这些笔记本进行实验。假设你有 一个正在运行的docker-machine并且您已经克隆了sandrepo:
git clone git@github.com:testedminds/sand.git
docker pull testedminds/sand
make docker-docs
# And after the container starts...
make docker-open
当笔记本在浏览器中打开时,您将看到该笔记本 仪表板,它将显示 docs目录。
这些命令转换为:
docker run -d -p 80:8888 -v `pwd`/docs:/opt/sand --rm --name sand testedminds/sand:latest \ jupyter notebook --allow-root --ip 0.0.0.0 --no-browser --NotebookApp.token='' open http://192.168.99.100
这是一种有用的技术,可以在 你的本地文件系统。
本地运行
不使用Docker在本地运行笔记本:
pip install -r requirements.txt
cd docs
jupyter notebook
- Install Cytoscape运行可选的 细胞景观的例子。启动Cytoscape并关闭欢迎屏幕。 你可能想在左下角勾选“不再显示”。