• 白色G小丑
    2019-10-18
    老师!你好。staffjob的跨应用调用是怎么处理事务的问题?

    作者回复: 你好,staffjoy是一个简单教学案例,还没有涉及分布式事务处理。真实世界微服务一般有分布式事务一致性问题,解决办法有很多,而且要看具体业务上下文,没有完全通用解决方案。

    一种最终一致解决思路是先将请求落地(记事务日志或消息队列),类似Write ahead log,然后发消息让各子系统分别去执行操作,操作结果也落地(事务日志或消息系统),由一个事务协调器角色监控事务日志,根据失败或超时情况进行补偿、取消或提醒人工介入。

    这里有一片关于微服务数据一致性的文章不错可供参考:
    https://dzone.com/articles/data-consistency-in-microservices-architecture

    
     2
  • Geek_kk
    2019-08-13
    老师您好,有个问题不太明白,AccountClient中的@FeignClient url地址是url = "${staffjoy.account-service-endpoint}",通过配置文件看到http://localhost:8080,但是这个8080端口的程序是在哪里启动了呢?

    作者回复: 这个8080是account-svc启动时用的端口,默认是8080,也可以在application.yml中通过server.port指定,也可以通过环境变量或者命令行参数等方式传入。

     1
    
我们在线,来聊聊吧