关于本地测试需要启动多个api的痛点解决

痛点来源

本人参与的项目采用按业务分离的模式架构开发,每次测试时都需要在Visual Studio Code 中开多个powershell窗口启动多个服务,所以感觉比较痛苦,因为在windows上开发, 然后就想到了bat。

实现细节

bat 启动文件

#cmd-api-start.bat

@echo off

set node=%NODE_HOME%\\node.exe

:从services.txt读取没有'#'注释的服务列表并启动
for /f "eol=/delims=" %%b in ('findstr /i /v "^#" services.txt') do (
	start "%%b Service" %node% %%b
)

services.txt如下

#services.txt


C:/Users/gs82167/git/gui_simweb/simpliciti.js
C:/Users/gs82167/git/simweb-common-router/app/api.js
C:/Users/gs82167/git/container_simweb/api/app/simweb.js
C://Users/gs82167/git/api_counterparty/v1/app/api.js
C:/Users/gs82167/git/api_agreement/v2/app/api.js
#C:/Users/gs82167/git/api_discounting/v2/app/api.js
#C:/Users/gs82167/git/api_makerchecker/v1/app/api.js

体验升级

因cmd 窗口太小,日志不方便查看,于是采用git-bash.exe 调试。

#bash-api-start.bat

@echo off

set gitbash=%BASH_HOME%\git-bash.exe
set mintty=%BASH_HOME%\usr\bin\mintty.exe

for /f "eol=/delims=" %%b in ('findstr /i /v "^#" services.txt') do (
    start /min "" "%mintty%" --icon "%gitbash%",0 --exec "/usr/bin/bash" --login -i -c "node %%b"
)

既然有启动程序,当然也有关闭程序

#kill-node.bat

taskkill /F /IM node.exe

总结

微服务火热的当下,本地测试时需要启动的服务更多,例如spring  cloud 相关项目的一键启动也可以参照以上脚本。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值