• 徐曙辉
    2022-11-01 来自湖南
    A1: 现在做的是一个短视频的新闻app,正在逐渐往微服务方向演进,预计分三个阶段 第一阶段:搭建基础的微服务功能,实现微服务之间的通信; 第二阶段:为各个模块构建服务容错、分布式配置中心、分布式链路追踪能力; 第三阶段:进一步实现微服务网关、消息驱动和分布式事务 技术选型如下 配置中心:Nacos (配置项管理和热更新) 注册中心:Nacos (服务注册和发现) 服务容错: Sentinel (降级、熔断、流量整形) 链路追踪:Skywalking 负载均衡:Aliyun Server Load Balancer 消息中间件:Kafka 日志:阿里云SLS 网关:kratos-gateway 通信协议:gRPC/Http 数据库:MySQL 缓存:Redis 当前采用DDD方式划分各个业务域,核心域:短视频,直播。通用域:评论,账号,点赞,关注,投稿,敏感词。支撑域:视频存储,消息推送。 当前最困难的是拆分微服务的粒度,拆的太细不好维护和测试,性能也有影响,拆的太粗无法体现微服务优势。老师有什么建议? A2: 架构还没演进到这一步,只是大概知道有这个概念,为了剥离微服务中的业务和通用功能,让它专注实现业务,运用的是分层思想。简单比方,解析HTTP协议读写数据的时候无需关心底层TCP怎么实现。
    展开
    
    9
  • Realm
    2022-11-01 来自浙江
    Service Mesh 通过sidecar,可以解决不同语言的微服务之间互联、互通,服务统一治理的问题.
    
    5
  • G55
    2022-11-01 来自北京
    我当前维护的是一套推荐系统服务。 主要包括 主排序 精排 召回 是三个分立的服务,实际上也是微服务架构。请求先到 主排序 然后由主排序去调用召回服务和精排服务。这样做是因为 精排和召回涉及到大量模型调用计算以及特征处理的工作 比较复杂。主排序主要是负责一些业务逻辑规则的处理。
    
    3
  • 胖黑
    2023-03-15 来自上海
    微服务之下,每天运维团队跟干仗一样
    
    