专栏名称: 细说云计算
关注云平台的网络技术、存储技术,以及少量架构技术。
目录
相关文章推荐
字节跳动技术团队  ·  远程访问代理+内网穿透:火山引擎边缘网关助力 ... ·  17 小时前  
字节跳动技术团队  ·  稀土掘金 x Trae ... ·  17 小时前  
51好读  ›  专栏  ›  细说云计算

日调度5万亿次 腾讯云微服务架构体系TSF深度解读

细说云计算  · 公众号  · 架构  · 2018-02-05 20:32

正文

请到「今天看啥」查看全文


  • 接口调整成本高。微服务之间通过接口进行通信,如果修改某个微服务的 API,可能所有使用了该接口的微服务都需要做调整;

  • 重复劳动。很多服务可能都会使用到相同的功能。而这个功能并没有达到分解为一个微服务的程度,这个时候,可能各个服务都会开发这一功能,导致代码重复。

  • 腾讯云微服务架构体系

    互联网企业的微服务转型经验,可为传统行业开发者提供经验参考。腾讯云基于自身的海量业务需求,通过 IT 架构的微服务化,将紧耦合的塔式架构,重组为小而简的独立服务系统,打磨出一套可用的微服务架构平台和微服务构建方法论,实现业务之间解耦和技术栈独立,允许低成本试错,使团队迭代更敏捷。

    微服务构建的五大核心要素

    微服务构建的初衷不外乎实现敏捷迭代、灵活扩展、服务复用三大功能,腾讯云在构建微服务的过程提炼出了以下五大方法论:

    • 在线协同:对外的 API 文档就是一份公共的说明,常有发布新的不兼容接口,因此,如何跨团队协同、通知至关重要,这方面需要通过 swagger UI 做在线的接口定义,以此公共契约;

    • 部署原则:在真实环境里,Docker 应用还未完全普及,服务的部署耗时费力。可以尝试提供批量的自动化工具,做微服务独立打包,批量的部署,包括启动、停止、升级、回滚、下线等操作 ;

    • 拆分原则:如常见的线上房地产交易门户商品中心,包含运营相关的子系统如二手房推荐系统等,服务拆分得过细会带来不必要的分布式事务、调用环节冗长等问题。各系统的拆分原则上可强调“抓大放小”;

    • 数据扁平化:服务升级过程中,要注重数据模型的统一。首先,各微服务的数据层要允许有完善的权限管理系统,支持多种数据格式转换、数据清洗、数据同步等,便于业务高效地挖掘数据的价值 ;

    • 渐进性架构:大多企业和开发者很难从一开始高瞻远瞩 ,规划处 3、5 年不变的微服务架构,因此,需要有长期的演进迭代以及小规模团队维护,允许小团队技术栈独立,来拥抱业务团队的快速试错。

    腾讯云微服务中间件 TSF 框架解析

    TSF 分布式框架,历经腾讯内部最严苛、最复杂的生产级环境打磨,基于上述方法论,对其中核心性能的提炼,形成了一套具备无限扩展、高性能、高可靠的一站式微服务架构解决方案,可以为云计算开发者提供极具价值的经验参考。

    如下图为腾讯云微服务中间件 TSF 一站式解决方案,最底层是云基础资源平台,包括云服务器、云数据库、云存储和专线加速几大模块,用作数据的存储和调用;同时,作为围绕微服务的 PaaS 平台,TSF 服务框架底层也融合了腾讯云内部大量的中间件服务,提供企业云化架构所必需的消息队列、Kafka、负载均衡、API 网关、全局配置服务等全套中间件。

    在此之上,TSF 支持应用的全生命周期管理功能,如对于虚拟机应用,提供代码包打包上传,批量发布、变更,版本切换等产品生命周期功能;对于火热的 Docker 应用,提供基于行业主流编排框架 Kubernetes 的全流程自动化持续集成和持续交付。

    对于已经在使用 Dubbo 框架的用户,可以通过修改 pom.xml 中的依赖,平滑地迁移到 TSF。其中,Dubbo 存量系统迁移方式包含两种:







    请到「今天看啥」查看全文