• 韩成丰
    2019-07-09
    我一直有一个疑惑,对于互联网应用,用微服务框架,k8s等可以有很好的适应度。不过目前也出现了一些在边缘计算的基于微服务架构产品,而且希望运行在类似树莓派的这样的小硬件上面。

    我的问题是微服务时候适合在资源有限的环境下运行?如果资源有限,那么如何做到微服务的治理,如视频中说的各种模块。感觉有些行不通,但是不知为什么还是有人在做,比如EdgeXFOUNDRY,apache 的开源物联网框架,基于golang的微服务架构。

    希望可以获得老师的指点,因为这个决定我后期的创业方向。
    展开

    作者回复: 你好,虽然微服务应用场景主要针对企业级互联网应用,但是微服务架构的思想其实是通用的,IoT应用可以是微服务应用的一种特殊场景,只是它的端设备资源可能比较受限,所用操作系统可能也不同于一般的操作系统,但是服务端架构可以和企业应用没有多大区别。我想理解企业微服务架构的话,可以扩展架构视野,对你做IoT架构应该会有帮助,只是需要针对性做一些调整,尤其考虑资源和性能方面。我看到github上有个叫lelylan(https://github.com/lelylan/lelylan/)的IoT框架,采用微服务架构,它是ruby/nodejs可开发,不过其思想完全可以用其它语言实现。当然,取决你的具体场景和规模,IoT项目也可以不用微服务架构。

    
     7
  • John
    2019-07-10
    Netflix已經有了zuul2 來支持reactive 但是似乎spring cloud gateway有移除zuul1和zuul2的趨勢 請問老師對此怎麼看呢

    作者回复: zuul1成熟稳定,已经经过大规模落地验证,实现和使用简单,本质就是一个servlet,虽然同步性能不是很高,但是可以通过多部署实例来解决,另外可以配合hystrix提升稳定性。zuul2异步模型,实现比较复杂,除了netflix,其它企业采用的案例还不多。具体要看企业的流量和技术团队情况,一般企业我觉得zuul1就够了。spring cloud gateway出来时间不长,大规模企业落地案例还不多,而且是全新产品,需要不断迭代才能完善稳定。

    
     3
  • 周翔
    2019-07-12
    杨老师,有2个问题:

    1、目前公司用的dubbo来做微服务的,通信使用hessian协议,支持强类型的rpc调用(类似SOA的调用),如果未来想升级到SpringBoot+Dubbo的框架,此技术栈后期在Api网关和调用链监控方面,会不会有永久缺陷?是否有必要切换到Restfull的方式(那样变动较大),这样能与主流保持一致。



    2、目前有大量的后台定时任务(近百个),还有消息队列的消费处理,这些后台处理非常消耗cpu资源,有什么分布式的调度工具或配置管理工具不?类似:将N个定时任务分散到若干台机器上跑,但是有个工具能统一配置管理,哪些任务和队列消费,放到哪些机器上面跑。
    展开

    作者回复: 1. 服务框架一旦用起来,想要替换成另外一套,总是有不小的成本的,而且迁移很折腾。况且换成另外一套不见得带来什么业务价值。建议内部服务间调用沿用Dubbo,前端对外暴露的聚合服务(也称BFF),可以考虑采用SpringBoot Rest。这样两者可以结合用起来。

    2. 任务调度可选徐雪里的xxl-job(https://github.com/xuxueli/xxl-job),这个比较轻量,比较重量的有唯品会Saturn(https://github.com/vipshop/Saturn),还有当当的elastic-job(https://github.com/elasticjob)。你可以评估下是否符合你的需求。另外容器平台k8s/mesos等都支持后台任务和周期任务等的运行,也可以考虑。

     2
     2
  • 大胡子叔叔
    2019-07-11
    像是Eureka,Ribbon,Hystrix 过段时间不再维护了吧,那还推荐使用这些组件么?还是现在就用别的组件替换它们

    作者回复: Eureka的替代组件,一个是consul(https://github.com/hashicorp/consul),还有一个阿里开源的nacos(https://github.com/alibaba/nacos)。
    Hystrix的替代目前有(resilience4j)https://github.com/resilience4j/resilience4j。

    如果采用K8s平台开发微服务,内置支持服务发现和LB,不需要Eureka/Ribbon这些。

    
     2
  • hunterlodge
    2019-07-09
    老师,我有三个疑问:
    1.hystrix只是一个代码级组件,并非springcloud特有,k8s中跑的springboot可以用,dubbo应用也可以用吧
    2. 像skywalking这种调用链监控工具三种微服务架构也都可以采用吧?
    基于上述两点,对三种框架在这两个点的比较会不会有失公平?
    3. 您之前课程推荐的CAT和Apollo这些组件在本次课程中不再使用了吗?是有更好的替代吗?
    谢谢!
    展开

    作者回复: 1. hystrix确实是一个通用的容错限流组件,理论上可以集成dubbo。我刚在百度上搜了一下,dubbo集成hystrix,有不少解决方案。具体还是需要实际测试,因为可能有线程和网路模型等细节问题。
    2. Skywalking应该也是具体框架无关的。
    我上面的比对,单纯是从这三个框架自身作为一个体系出发,是否考虑了这个关注点,和原生提供怎样的解决方案,是否开源,来进行比对的。

    3. CAT和Apollo之前课程重点介绍过,本课程不重复了。本课程以应用为主,拓展介绍下Skywalking(可替代CAT),同时应用部署到K8s,它原生支持ConfigMaps/Secrets(可替代Apollo)。

    
     2
  • 李盛杰
    2019-09-24
    老师 springboot可以直接集成zuul吗 就像课程里集成feign一样 然后部署到k8s环境中?

    作者回复: 可以,zuul可以SpringBoot方式启动(加一个@EnableZuulProxy标注即可)

    
     1
  • 小白
    2019-07-11
    波波老师,heapster从k8s 1.11开始被标记为废弃了,现在是metrics-server。https://github.com/kubernetes-retired/heapster/blob/master/docs/deprecation.md。

    作者回复: 谢谢提醒!

    
     1
  • William
    2019-07-10
    Zipkin在使用mysql存储的时候,性能及其卡,而且请求量不是很多的情况下数据也很快就会满,后面也没有用ES来替换它,而是选择直接不用。从其他地方了解过来的资料,对于Zipkin评价也都不高,多以“玩具”称之,后来关注到了SkyWalking,就彻底不关注zipkin了。不知道是否有人觉得Zipkin好用?

    作者回复: Zipkin只是一个单纯的调用链监控产品,性能聚合报表能力比较欠缺,企业如果要用的话,一般需要定制扩展。Skywalking和CAT不光是调用链监控,而且是APM,有比较丰富的性能统计报表,更适合企业开箱即用。

    
     1
  • 机器人学习
    2020-01-19
    dubbo 解决的是远程RPC通信的问题,sc是微服务的一个实践生态框架,k8s主要是编排容器服务。为什么可以在一起比较?出发点和目标关注点都不在一个层级。小白愚见。。。

    作者回复: 如果你了解这三者的诞生背景和演进历史,你会发现它们三者实际是为解决同一问题(分布式微服务基础框架/平台)而生,三者都是对同一问题的解,只是解法和层次不同,但殊途同归。k8s是后起之秀,有后发优势,站得高度更高,考虑更系统全面,简单理解k8s = doubbo or sc + container based deployment。

    
    
  • sayid
    2019-08-03
    现在又是微服务,又是边缘计算,是不是随着:用户增长,业务复杂化,'BS'玩不下去去了,转型玩'CS'了。。。

    作者回复: IT技术一直是不断轮回演进的,以前是CS,后来流行BS,目前BS/CS混合局面。

    
    
  • 梁😜
    2019-07-13
    老师您好,非常期待老师在针对SpringBoot封装,搭建微服务基础框架方面的经验分享,不知道后续课程是否会讲解相关内容,是否会给出相关代码,谢谢老师~

    作者回复: 你好,课程第3章讲解在SpringBoot基础上做轻量级封装,搭建微服务基础框架,第4章讲解开发一个轻量级的微服务网关,第5章讲解基于jwt的微服务安全认证架构,这几章都会结合staffjoy案例项目的代码讲解,有兴趣也可以直接看staffjoy项目源码:https://github.com/spring2go/staffjoy,看源码过程中如果有问题,可以再回头看课程讲解,这样更容易理解项目源码。

    
    
  • 囊子
    2019-07-12
    一路跟过来的,希望老师由浅入深,尽量多分享大厂一线实战经验。既要照顾新手,也要拔高层次。如果只是扫盲就太可惜了,没有冒犯的意思。

    作者回复: 对,课程既要照顾新手,也要考虑有经验的学员,有一定的挑战。课程会尽量结合一线企业的实践,所以有几章专门有企业演进案例环节,比如第4章讲网关和BFF是如何在企业架构中演进出来的,第5章讲微服务安全认证架构是如何演进出来的,第7章有调用链监控产品的企业演进历史等。而微服务、云原生和k8s本身也是目前企业开发的前沿技术,很多企业还在摸索阶段,本课程通过案例展示可落地参考的应用架构。Anyway,谢谢你的建议

    
    
我们在线,来聊聊吧