• 和光同尘
    2019-10-12
    波波老师,您好,听完您的课程受益匪浅,有个问题想请教下,staffjoy项目,服务提供者是通过发布一个api jar包给客户端使用,假设某个客户端现在因为业务需要让服务提供者发布了一个新的版本给它使用,而其他客户端不关心这个变化版本继续使用旧的api jar版本,若其他客户端也需要升级的时候确发现已经横跨了多个api jar版本,也不清楚服务提供方到底改动了什么,请问这种通过api jar强依赖的方式会不会对客户端造成什么影响?

    另:期待feign 强类型接口泛型如何做

    作者回复: 你好,问题1是关于服务版本治理的,一般的建议是服务升级最多不超过2~3个版本同时并存,能够让客户端平滑迁移,同时要求客户端限期迁移(比如3月或半年过渡期),注意要监控哪些客户端分别在使用哪些版本,通过监控数据再推进客户端升级。如果服务版本过多,迁移周期没有明确限制,监控手段缺失,那么服务升级就会比较麻烦。

    关于第2个问题,feign强类型范型接口,我正在开发一个简化项目叫smile,预计本月开发完,会放在github.com/spring2go上,请注意关注。

     2
     3
  • shniu
    2019-09-18
    谢谢老师,通过这个课程对云原生有了一个大概的了解。师父领进门,后续还要继续修行。

    作者回复: 嗯,后续参与项目实践很重要。云原生是目前的技术前沿,k8s/cloud native后面会逐渐成为主流,把技术人员领进门,为新技术做好准备,也是我开这门课初衷。

    后续还会推出《K8s微服务实践》课程,更多k8s内容+全新微服务案例+监控体系+CI/CD,欢迎关注。

    
     2
  • 海罗沃德
    2019-12-05
    不容易,能看到这一节的同学们都辛苦了,波波老师也辛苦了,通过学习staffjoy项目,我深刻的感受到了,以前在工作中掌握的知识还只是皮毛,要想真正的成为一名合格的开发人员/架构师,还有很多前沿的技术需要掌握。另外在日常的开发过程中,如果不想沦为每天简单的重复CRUD,就要从项目的整体架构出发,站在上层业务角度来看,系统架构,部署架构,然后才是具体的如何把数据流串起来的CRUD操作。

    学习了staffjoy之后,只是给同学们进阶之路开了一个头而已,后续还有很多衍生出来的知识领域需要大家一起深入学习,比如service mesh,系统架构设计时如何解耦微服务,如何使用缓存、消息队列来应付高并发,如何防止bot等具体的细分领域,不过不用担心,只要大家一起坚持住,不久就会从当前的CRUD重复劳动者晋升为有独立思考能力的架构师,成为项目里,乃至公司都不可或缺的人才。

    大家一起加油
    展开
    
    
  • Geek_548191
    2019-11-28
    感谢波波老师!整个课程学下来,收货很多,也还有些细节需要回头再琢磨一下。
    看到留言,麻烦老师抽空回复一下我在92讲|WWW服务中的留言,非常感谢!!!期待老师的新课程!

    作者回复: 留言已回复,谢谢支持!新课程正在开发中。

    
    
  • PatHoo
    2019-11-06
    期待《K8S微服务实践》课程

    作者回复: 正在开发中,敬请期待!

    
    
  • 亚林
    2019-10-17
    通过波波老师的课程,基本上了解k8s,docker,网关等这些在整个技术架构里面的关系和定位,通过自己按照自己一步步的在阿里云上面实践,基本理解了k8s的基本发布流程。

    作者回复: 不错,先对架构和技术栈有一个总体了解,后续通过实践应用进一步加深理解。请继续关注波波后续的微服务/k8s高级课程。

    
    
  • 和光同尘
    2019-10-08
    波波老师您好 ,请问微服务编排有什么好的技术实现方案

    作者回复: 你好,服务编排我实战经验也不多,一个可以参考的项目是Netflix的Conductor(https://github.com/Netflix/conductor),核心是微服务编排引擎+消息队列。

    
    
  • 让爱随风
    2019-09-29
    我下载下来代码启动报如下错误(感觉staffjoy\config\application.yml 文件没加载上) 不知道什么原因 希望老师指导一下
    java.lang.IllegalArgumentException: Illegal character in path at index 1: ${SENTRY_DSN}
        at java.net.URI.create(URI.java:852)
        at io.sentry.dsn.Dsn.<init>(Dsn.java:41)
        at io.sentry.SentryClientFactory.resolveDsn(SentryClientFactory.java:73)
        at io.sentry.SentryClientFactory.sentryClient(SentryClientFactory.java:42)
        at io.sentry.Sentry.init(Sentry.java:81)
        at io.sentry.Sentry.init(Sentry.java:66)
        at xyz.staffjoy.common.config.StaffjoyConfig.sentryClient(StaffjoyConfig.java:50)
        at xyz.staffjoy.common.config.StaffjoyConfig$$EnhancerBySpringCGLIB$$dea57b5d.CGLIB$sentryClient$4(<generated>)
        at xyz.staffjoy.common.config.StaffjoyConfig$$EnhancerBySpringCGLIB$$dea57b5d$$FastClassBySpringCGLIB$$ee619584.invoke(<generated>)
        at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
        at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:363)
        at xyz.staffjoy.common.config.StaffjoyConfig$$EnhancerBySpringCGLIB$$dea57b5d.sentryClient(<generated>)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:622)


    Caused by: java.net.URISyntaxException: Illegal character in path at index 1: ${SENTRY_DSN}
        at java.net.URI$Parser.fail(URI.java:2848)
        at java.net.URI$Parser.checkChars(URI.java:3021)
        at java.net.URI$Parser.parseHierarchical(URI.java:3105)
        at java.net.URI$Parser.parse(URI.java:3063)
        at java.net.URI.<init>(URI.java:588)
        at java.net.URI.create(URI.java:850)
        ... 67 common frames omitted
    展开

    作者回复: 我这边没有问题,这个外部集中配置是spring的标准机制,不确定你的问题怎么造成的,你看看能否显式通过spring.config.location环境变量设置一下config文件夹的位置,参考官方文档:https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

    如果还不行,一个笨办法,把每个项目里头的application.yml中的相关参数替换下(参考config/application.yml中的相关参数值)。

    
    
  • 鬼谷阳明
    2019-09-28
    作为一个见习架构师,受益匪浅,感谢波波老师,目前正在将一个spring cloud实现的微服务架构切换到k8s

    作者回复: 谢谢支持!波波后续将推出微服务和k8s相关进阶内容,敬请关注!

    
    
  • 非洲小白领
    2019-09-20
    谢谢波波老师,讲得非常好,期待后续课程!

    作者回复: 谢谢支持!敬请关注后续课程!

    
    
  • Continue
    2019-09-19
    期待老师新的课程,受益匪浅

    作者回复: 谢谢支持!加油!

    
    
  • 许童童
    2019-09-19
    感谢波波老师。

    作者回复: 感谢支持!加油!

    
    
  • 05gogoing
    2019-09-11
    这个项目的所有服务都是支持多实例的吗?

    作者回复: 你好,staffjoy应用的所有微服务和前端单页都是无状态,可以任意水平扩展。

    
    
  • 彩瓷菜
    2019-09-09
    感谢波波老师,受益匪浅!!!

    作者回复: 谢谢支持!加油!

    
    
我们在线,来聊聊吧