作者回复: 非常棒!
作者回复: 使用虚拟机或者多网卡的同学可以参考上面的的解决方案哦
作者回复: 注入builder的一个比较方便的原因是,你在使用webclient的时候就能利用builder的链式构建风格来注入参数。Mono可以理解为一个元素的发布者(publisher),像Mono和Flux都是响应式编程的一个概念,mono表示发布了empty或1个对象,同学也可以通过一些响应式编程的教程了解更多的应用方式。
作者回复: customer service可以被任何子项目调用,可以用k8s中的service topo来管理,不过如果做topo的目的单纯为了实现集群优先的策略,直接定制本地负载均衡策略就好了, nacos的cluster属性会在服务发现的过程中封装到metadata节点,client端可以根据这个属性做routing定制 PP确实有冗长的review process,服务之间相互调用也要通过arch review,但这是一家技术基建很差劲的公司,被国内互联网大厂完爆的渣都不剩,没啥可借鉴的
作者回复: Loadbalancer注解是spring cloud loadbalancer的内容,在Nacos讲完之后紧接着一课里会讲到。如果项目版本和MySQL版本都保持和源码一致的话(在环境准备篇里有版本信息),那么新版里database-platform不用显式配置,默认auto-detect后会自动在日志里打印这一行 org.hibernate.dialect.Dialect: HHH000400: Using dialect: org.hibernate.dialect.MySQL8Dialect
作者回复: templateIds这个参数是拼装好的1,2,3格式
作者回复: 同学摸瓜水平越来越高了。Nacos在watch机制上有了一个比较大的改变,如果查看nacos老版本的源码你会发现nacosServicesWatch这个方法里简直一顿操作猛如虎,但是新版本里,nacosServicesWatch只做一件事就是发布心跳事件了,所以这个watch机制做了一个比较大的减法,没老版本那么牛逼的服务发现了
作者回复: 同学摸到了一个大瓜!非常不错,读源码就这么顺藤摸瓜,从启动入口正着摸,从结果处反着摸,反正一通十八Mo之后就都整明白了
作者回复: 非阻塞一般是使用场景是在方法内发生多个并行调用的时候,使用类似future的方式缩短接口访问时间,现在用的比较多的是基于webflux的响应式编程,挺火的~
作者回复: 接收端是使用Collection<Long> ids来接收的,同学可以试下调用findCoupon服务,在template-serv里是可以顺利接收到ids参数并返回的