作者回复: 加油!⛽️
作者回复: 嗯,可以尝试下CAT,报表丰富粒度细致是CAT一大亮点。
作者回复: 首先,确保你的镜像里头有skywalking agent jar(可以登到容器里头看具体在哪个目录),然后dockerfile启动项ENTRYPOINT: java -javaagent:/path/to/skywalking-agent/skywalking-agent.jar -jar yourApp.jar 参考: https://github.com/apache/skywalking/blob/master/docs/en/setup/service-agent/java-agent/README.md
作者回复: 可以用skywalking官方提供的docker base镜像: https://hub.docker.com/r/apache/skywalking-base https://github.com/apache/skywalking-docker 不到200m,大小还可以。如果你还嫌大,可以再定制,只需把agent目录下面的jar和一下需要的插件,打到openjdk:8-jre-alpine基础镜像中即可。
作者回复: 这个是事务transaction问题,因为这里是对company-db一个数据库的操作,可以把这些操作都包在一个transaction里头(可以参考spring transaction支持),任何一步抛异常可以回滚rollback已经执行的所有操作,只有所有步骤都正确执行才一起批量提交commit。也可以简单什么也不做,记录异常日志,后续人工干预纠正即可。 如果是跨库分布式事务,就会比较复杂,已经超出这门课的scope。