热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

腾讯与阅文集团技术合作,微服务框架Tars新增PHP支持

腾讯与阅文集团在技术领域展开合作,共同推进微服务框架Tars的发展。此次合作中,Tars新增了对PHP语言的支持,不仅强化了Tars-PHP作为客户端的功能,还显著提升了其在服务端的应用能力。这一改进旨在满足不同业务场景下的多样化需求,为开发者提供更加灵活和高效的技术解决方案。

• Tars-PHP的服务端

除了建设Tars-PHP作为客户端的能力之外,服务端的能力同样是必不可少的。为了能够满足不同业务场景下的需求,Tars-PHP在服务端主要会关注两类服务。

第一类是HTTP的服务,会以SWOOLE2.0为网络收发的基础,实现一套高性能、简洁好用的面向WEB服务的框架。这套框架会支持基本的 路由、中间件、MVC架构等常见的WEB框架特性。同时也会集成Redis、Mysql、Http、Multicall、Tars等常见的客户端,方便WEB服务再去调用后台服务。更重要的是,接入到Tars平台中,使得服务可监控,可重启,享受Tars运维平台带来的一站式便利。现在框架的第一个版本已经实现,并在阅文集团内部上线使用,测试成熟后,会及时进行开源。

第二类则是TCP的服务,同样底层依赖于SWOOLE2.0,但是协议从HTTP换成了对TUP和Tars的支持。框架实现上而言,会与JAVA、C++的服务端保持一致,底层集成网络能力,使用者只需关心服务名称以及接口参数和自己的业务处理逻辑而已。当然,这个服务肯定也是要与Tars运维平台相结合的。现在框架对TUP协议支持的第一个版本已经完成,后续也会在完成Tars协议的底层支持之后,在业务上进行使用和验证。

•  业务实践

阅文集团在进行后台服务治理与改造的过程中,使用了Tars-PHP的解决方案。一方面,所有WEB后台与后台服务的接口,全部从原有的HTTP接口,切换为了基于Tars协议的TCP网络传输。依赖于Tars-PHP的自动代码生成,开发效率提升巨大,保证了项目的顺利按时上线。同时,这套基于PHP扩展的方案,也保证了代码执行效率的高效,单个请求的处理时间,相比于原有的HTTP接口调用,得到了显著的缩短。

另一方面,由于使用的WEB后台服务是常驻内存的,基于SWOOLE的实现。所以在发布、启动、监控等方面与原有PHP中固有的Apache和PHP-FPM的方式都不相同。因此,正如上文中所说,服务接入Tars平台,享受其监控、保活、日志等一系列的功能,会大大提高服务本身的运维和扩容的便利性。如今在其线上服务中,超过十个服务已经切入并稳定运行了接入到Tars平台的HTTP服务。这些服务的发布、扩容和运维完全依赖Tars平台,十分便利。

除去对Tars平台运维的使用,阅文WEB后台侧同样在服务发现上,有一套方案。



推荐阅读
  • 本文探讨了2019年前端技术的发展趋势,包括工具化、配置化和泛前端化等方面,并提供了详细的学习路线和职业规划建议。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • 解决PHP与MySQL连接时出现500错误的方法
    本文详细探讨了当使用PHP连接MySQL数据库时遇到500内部服务器错误的多种解决方案,提供了详尽的操作步骤和专业建议。无论是初学者还是有经验的开发者,都能从中受益。 ... [详细]
  • 本文探讨了如何在 PHP 的 Eloquent ORM 中实现数据表之间的关联查询,并通过具体示例详细解释了如何将关联数据嵌入到查询结果中。这不仅提高了数据查询的效率,还简化了代码逻辑。 ... [详细]
  • Startup 类配置服务和应用的请求管道。Startup类ASP.NETCore应用使用 Startup 类,按照约定命名为 Startup。 Startup 类:可选择性地包括 ... [详细]
  • Java项目分层架构设计与实践
    本文探讨了Java项目中应用分层的最佳实践,不仅介绍了常见的三层架构(Controller、Service、DAO),还深入分析了各层的职责划分及优化建议。通过合理的分层设计,可以提高代码的可维护性、扩展性和团队协作效率。 ... [详细]
  • 本文深入探讨了MySQL中常见的面试问题,包括事务隔离级别、存储引擎选择、索引结构及优化等关键知识点。通过详细解析,帮助读者在面对BAT等大厂面试时更加从容。 ... [详细]
  • 在寻找轻量级Ruby Web框架的过程中,您可能会遇到Sinatra和Ramaze。两者都以简洁、轻便著称,但它们之间存在一些关键区别。本文将探讨这些差异,并提供详细的分析,帮助您做出最佳选择。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 本文介绍如何解决在 IIS 环境下 PHP 页面无法找到的问题。主要步骤包括配置 Internet 信息服务管理器中的 ISAPI 扩展和 Active Server Pages 设置,确保 PHP 脚本能够正常运行。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • PHP 5.5.0rc1 发布:深入解析 Zend OPcache
    2013年5月9日,PHP官方发布了PHP 5.5.0rc1和PHP 5.4.15正式版,这两个版本均支持64位环境。本文将详细介绍Zend OPcache的功能及其在Windows环境下的配置与测试。 ... [详细]
  • MySQL索引详解与优化
    本文深入探讨了MySQL中的索引机制,包括索引的基本概念、优势与劣势、分类及其实现原理,并详细介绍了索引的使用场景和优化技巧。通过具体示例,帮助读者更好地理解和应用索引以提升数据库性能。 ... [详细]
  • 深入解析 Apache Shiro 安全框架架构
    本文详细介绍了 Apache Shiro,一个强大且灵活的开源安全框架。Shiro 专注于简化身份验证、授权、会话管理和加密等复杂的安全操作,使开发者能够更轻松地保护应用程序。其核心目标是提供易于使用和理解的API,同时确保高度的安全性和灵活性。 ... [详细]
  • Struts与Spring框架的集成指南
    本文详细介绍了如何将Struts和Spring两个流行的Java Web开发框架进行整合,涵盖从环境配置到代码实现的具体步骤。 ... [详细]
author-avatar
我才不要喜欢你了
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有