作者回复: 分布式事务一般要根据具体业务场景进行定制,目前还没有成熟通用的中间件方案。建议参考ebay架构师总结的这篇文章《微服务架构中的数据一致性》,总结得很好: https://dzone.com/articles/data-consistency-in-microservices-architecture
作者回复: 我本地这边ok,估计是环境部署问题,建议仿照课程中的步骤用eclipse+tomcat方式启动,如果还有问题,请微信(bulldog2015)交流。
作者回复: 请查看: 1. Tomcat/Servlet是否已经正常启动,healthcheck页面是否能够正常工作? 2. 数据库是否按要求填充数据和启动? 3. 建议在Eclipse中启动Tomcat+Zuul,这样可以调试Zuul代码,方便查看错误信息,建议关注数据库连接和访问错误信息
作者回复: 错误说数据库连不上,zuul拉不了数据库里头的filter,请先确保mysql数据库可以正常连接。
作者回复: 你这个看错误是依赖版本问题,cat client和foundation-service某个版本有问题,可以尝试先把本地maven缓存先清理掉,再尝试加载项目,也就是再把依赖的jar下一遍看看。如果还有问题,联系我微信解决(微信号bulldog2015,说明来自极客时间)。
作者回复: 请参考https://github.com/spring2go/s2g-zuul 这里的readme: “s2g-zuul源码建议使用较新版本的Eclipse IDE for Java EE Developer进行导入,它可以自动感知Servlet Web项目,可在Eclipse+Tomcat里头直接调试源码,方便排查问题。” 建议用我给出的Eclipse IDE的那个版本,将s2g-zuul导入到eclipse中,它可以自动感知Servlet Web项目,这样你就可以在eclipse里头直接调试servlet并跟踪进去,看问题到底出来哪里。
作者回复: 你这个错误看上去是CAT无法连接服务器导致,我本地也没有CAT服务器,但是不会报这个错。 实际本章实验是不依赖于CAT的,有一个简单办法索性绕开CAT,你把s2g-zuul的代码清理一下,把所有(包括会用到的groovy脚本里头的)CAT的依赖全部清理掉,先把cat-client.jar在pom中排除,然后通过IDE把cat引用的地方全部清理掉。 这样就不会报CAT问题了,你就可以先把zuul运行起来,完成本课实验。
作者回复: 你好,我在本地eclipse里头测试是好的。 建议:s2g-zuul源码建议使用较新版本的Eclipse IDE for Java EE Developer进行导入,它可以自动感知Servlet Web项目,可在Eclipse+Tomcat里头直接调试源码,方便排查问题。 https://www.eclipse.org/downloads/packages/release/2019-03/r/eclipse-ide-enterprise-java-developers s2g-zuul源码不多,可以直接调试,看看问题出来哪里。
作者回复: s2g-zuul依赖于CAT3.0,请先按照文档说明配置好CAT,参考[启动 cat 客户端前的准备工作]: https://github.com/spring2go/s2g-zuul. 如果还有问题,一个笨办法,把s2g-zull里头的CAT依赖去掉,把pom和代码简单清理一下。本章实验其实是用不到CAT的。
作者回复: 建议按照实验要求,不要随意修改mysql数据库版本。