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

开源巨献:腾讯最热门30款开源项目

本文为大家整理腾讯开源项目,排名顺序按照Github★Star数排列!一起来看看!0、Android热修复框架Tinker★Star896

0?wx_fmt=gif

本文为大家整理 腾讯 开源项目,排名顺序按照 Github ★Star 数排列!一起来看看!


0、Android 热修复框架 Tinker ★Star 8967


640?wx_fmt=png


Tinker是Android的热修复解决方案库,它支持dex,库和资源更新,无需重新安装apk。有一些问题,Tinker不能动态更新:

无法更新AndroidManifest.xml,例如添加Android组件。;不支持一些三星型号与os版本的android-21;由于Google Play开发者分发协议,我们无法动态更新我们的apk(详情:

https://github.com/Tencent/tinker)


1、微信客户端跨平台组件 Mars  ★Star 8874




Mars 是微信官方的终端基础组件,目前已接入微信 Android、iOS、Mac、Windows、WP 等客户端。主要包括以下几个部分:

● comm:可以独立使用的公共库,包括socket,线程,消息队列,协程等;

● Xlog软件:日志组件,可靠性高,高性能

● SDT:网络诊断组件

● STN:信令分发网络模块,也是Mars最主要的部分。图。(详情:https://github.com/Tencent/mars)


2、微信移动数据库框架 WCDB(WeChat Database)  ★Star 3123


WCDB(WeChat Database)是一个高效、完整、易用的移动数据库框架,基于SQLCipher,支持iOS, macOS和Android,WCDB于6月9日正式对外开源。


开源地址:
https://github.com/Tencent/wcdb




WCDB for iOS/macOS 基本功能

  • WINQ(WCDB语言集成查询): 通过WINQ,开发者无须为了拼接SQL的字符串而写一大坨胶水代码。

  • ORM(Object Relational Mapping): WCDB支持灵活、易用的ORM。开发者可以很便捷地定义表、索引、约束,并进行增删改查操作。

  • 多线程高并发: WCDB支持多线程读与读、读与写并发执行,写与写串行执行。

  • 加密:WCDB提供基于SQLCipher的数据库加密。

  • 损坏修复: WCDB内建了Repair Kit用于修复损坏的数据库。

  • 反注入: WCDB内建了对SQL注入的保护。


WCDB for Android 基本功能

  • 基于SQLCipher的数据库加密

  • 使用连接池实现并发读写

  • 内建 Repair Kit 可用于修复损坏数据库

  • 针对占用空间大小优化的数据库备份/恢复功能

  • 日志输出重定向以及性能跟踪接口

  • 内建用于全文搜索的 mmicu FTS3/4 分词器


3、手机前端开发调试工具 vConsole  ★Star 2393


vConsole 是一款由微信公众平台前端团队打造的前端调试面板,专治手机端看 log 难题。 目前 vConsole 自带有 2 个面板,默认为“日志”面板,负责展示 log。 第二个是“系统”面板,vConsole 会自动将一些基础信息(如系统版本)打印出来,方便开发者定位问题。若页面是在微信内置浏览器中打开的,vConsole 还会打印出微信版本号、当前网络类型等额外信息。(详情:https://github.com/WechatFE/vConsole)


4、微信团队前端开发工具 WeFlow  ★Star 2233



这是一个高效、强大、跨平台(macOS & Win)的前端工具,核心基于 tmt-workflow 工作流.(详情:

https://github.com/weixin/WeFlow)


5、分布式后台服务引擎 MSEC ★Star 2221




毫秒服务引擎(MSEC)由腾讯 QQ 团队开源。它是一个后端 DEV&OPS 引擎,包括RPC,名称查找,负载平衡,监控,发布和容量管理。毫秒服务引擎特性:

● 模块间访问采用RPC的方式,开发者不用关注网络与报文格式,像写单机程序一样开发分布式服务。

● 负载自动均衡与容错,对于单机故障、局部网络波动等状况自动应对,服务高可用性。

● 支持 C/C++/java/PHP 语言,如果选择 C/C++ 语言,支持协程,兼具开发和运行效率。

● Web 化的管理界面

● 简易部署,需要复杂部署的服务器都采用docker镜像的方式安装

● 相比使用其他开源组件拼凑起来的解决方案,毫秒服务引擎更加的体系化,对团队的规范更加到位(详情:http://haomiao.qq.com/)


6、随身调测平台GT ★Star 2183


GT(随身调)是 APP 的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment)。利用 GT,仅凭一部手机,无需连接电脑,您即可对APP进行快速的性能测试(CPU、内存、流量、电量、帧率/流畅度等等)、 开发日志的查看、Crash日志查看、网络数据包的抓取、APP 内部参数的调试、真机代码耗时统计等。如果您觉得GT提供的功能还不够满足您的需要,您还 可以利用 GT 提供的基础 API 自行开发有特殊功能的 GT 插件,帮助您解决更加复杂的 APP 调试问题。(详情:

https://github.com/Tencent/GT)


7、Unity3D 下 Lua 编程解决方案 xLua ★Star 1816


xLua为Unity3D增加Lua脚本编程的能力,xLua在功能、性能、易用性都有不少突破,这几方面分别最具代表性的是:

① 可以运行时把C#实现(方法,操作符,属性,事件等等)替换成lua实现;

② 出色的GC优化,自定义struct,枚举在Lua和C#间传递无C# gc alloc;

③ 编辑器下无需生成代码,开发更轻量;

(详情:https://github.com/Tencent/xLua)


8、RPC开发框架Tars ★Star 1800




它是基于名字服务使用 Tars 协议的高性能 RPC 开发框架,配套一体化的运营管理平台。Tars 是腾讯从 2008 年到今天一直在使用的后台逻辑层的统一应用框架 TAF(Total Application Framework),目前支持 C ++ 和 Java 两种语言。目前该框架在腾讯内部,各大核心业务都在使用,颇受欢迎,基于该框架部署运行的服务节点规模达到上万个。(详情:

https://github.com/Tencent/Tars)


9、MySQL集群PhxSQL  ★Star 1759




PhxSQL是一个基于Paxos和Percona的高可用性和强大的一体化MySQL集群,PhxSQL以单Master多Slave方式部署,在集群内超过一半机器存活的情况下,可自身实现自动Master切换,且保证数据一致性。(详情:https://github.com/tencent-wechat/phxsql) 


10、超轻量级 Web 手势库AlloyFinger  ★Star 1734


可以看到hammerjs体积远远大于AlloyFinger,对于手机QQ web加载速度性能追求极致的同学来说,使用hammerjs的大小是不可以接受的!那么,为什么hammerjs这么大?看下架构设计便知♂(详情:https://github.com/AlloyTeam/AlloyFinger)架构设计:



11、多机状态拷贝类库PhxPaxos  ★Star 1244


PhxPaxos 是腾讯公司微信后台团队自主研发的一套基于 Paxos 协议的多机状态拷贝类库。它以库函数的方式嵌入到开发者的代码当中, 使得一些单机状态服务可以扩展到多机器,从而获得强一致性的多副本以及自动容灾的特性。 这个类库在微信服务里面经过一系列的工程验证,并且我们对它进行过大量的恶劣环境下的测试,使其在一致性的保证上更为健壮。(详情:

https://github.com/tencent-wechat/phxpaxos)


12、Web组件化框架Omi  ★1057


Omi是一款开放现代的Web组件化框架,有以下特性:

① 局部CSS:HTML+ Scoped CSS + JS组成可复用的组件。不用担心组件的CSS会污染组件外的,Omi会帮你处理好一切

② 超小的尺寸:7 kb (gzip),虽然文件尺寸小,但是兼容性很好!

③ 更新更自由:每个组件都有update方法,可自由更新。

④ 模板引擎可替换,开发者可以重写Omi.template方法来使用任意模板引擎

⑤ 完全面向对象

⑥ Omi提供了ES6+和ES5的两种开发方案

(详情:https://github.com/AlloyTeam/omi)


13、UI 前端框架 QMUI Web  ★Star 888


QMUI Web 是一个专注 Web UI 开发,帮助开发者快速实现特定的一整套设计的框架。通过 QMUI Web,开发者可以很轻松地提高 Web UI 开发的效率,同时保持了项目的高可维护性与稳健。如果你的项目需要有一套完整的设计,并且可能有频繁的变动,那么 QMUI Web 框架将会是你最好的解决方案。(详情:

https://github.com/QMUI/QMUI_Web)


14、curvejs  ★Star 749


是腾讯AlloyTeam打造的一款魔幻线条框架,让线条成为一名优秀的舞者,让线条们成为优秀的舞团,HTML5 Canvas就是舞台。其原理就是使用 Perlin-Noise + Particle System + Bézier Curve + Color Transition 制作而成。使用curvejs实现类似变幻线功能只需要不到10行代码。 https://github.com/AlloyTeam/curvejs


15、基于C ++的RPC框架 PhxRPC  ★Star 645


PhxRPC是微信后台团队推出的一个非常简洁小巧的RPC框架,编译生成的库只有450K(详情:

https://github.com/tencent-wechat/phxrpc)


16、Web 开发调试工具AlloyLever  ★533


AlloyLever 是腾讯 AlloyTeam 团队开源的一款 Web 开发调试工具。AlloyLever的功能:点击 alloylever 按钮之间切换显示或隐藏工具面板; Console会输出所有用户打印的日志如 console.[log/error/info/debug/debug] ;Console会输出所有的错误信息(脚本错误和网络请求错误) ;XHR 面板会输出所有(XMLHttpRequest)AJAX 请求和服务器端返回的数据; Resouces 面板会输出所有的 COOKIE 信息和 LocalStorage ;TimeLime 面板会输出页面相关的生命周期里的时间段耗时情况(详情:

https://github.com/AlloyTeam/AlloyLever)


17、bk-cmdb  ★Star 452


蓝鲸配置平台是一款面向应用的 CMDB,在 ITIL 体系里,CMDB 是构建其它流程的基石,而在蓝鲸智云体系里,配置平台就扮演着基石的角色,为应用提供了各种运维场景的配置数据服务。现有功能如下:用户管理、业务管理、拓扑(集群、模块)管理、资源池管理、主机管理、日志查询(详情:

https://github.com/Tencent/bk-cmdb)


18、分布式开发框架Pebble-RPC  ★Star 351


Pebble是一个分布式开发框架。基于该框架,可以让开发者只需专注于业务逻辑的实现,而不需要关注基础功能的开发,如网络通信,数据存储,集群管理等。使用pebble配套的运营系统,可方便的进行游戏开区开服,版本升级,扩容缩容等操作。当前发布的Pebble版本,是一个Linux平台C++版本的后台开发框架。整个分布式开发框架包括:服务管理、集群管理、RPC通信、协程、广播、进程框架。(详情:https://github.com/TencentOpen/Pebble)


19、UI自动化测试框架 GAutomator  ★Star 337


GAutomator 是一 Unity 手游的UI 自动化测试框架。

Windows Os 和软件要求: Windows 7(32/64位),Windows 8或更高版本;python 2.7;Android SDK(或adb),在设备上启用ADB设置,并使用usb与您的PC连接您的Android设备。Linux和软件要求:Ubuntu 14.04 LTS;python 2.7;Android SDK(或adb),在设备上启用ADB设置,并使用usb与您的PC连接您的Android设备。

Android:Android 4.3(API级别18)或更高版本。(详情:https://github.com/Tencent/GAutomator)


20、WeDemo  ★Star 297


WeDemo 为微信团队开源项目,用于帮助微信开发者完成微信登录、微信分享等功能的接入和开发。开发者可参考源代码完成开发,也可以直接将代码应用到自己的App开发中,安全、便捷地在App中实现微信分享、微信登录功能。(详情:https://github.com/Tencent/WeDemo)


21、AI开发框架组件 Behaviac  ★Star 297




Behaviac 是游戏 AI 的开发框架组件,也是游戏原型的快速设计工具。支持行为树BT,状态机 FSM,HTN 等多种范式,方便的编辑和调试。支持全平台,适用于客户端和服务器,助力游戏快速迭代开发。 编辑器可以运行在 PC 上,操作方便直观可靠,支持实时和离线调试;编辑器可以导出 xml,bson 等多种格式,更可以导出 C++,C# 源码,提供最高效率。 运行时支持全平台,有 C++ 和 C# 两个版本,原生支持 Unity。 (详情:

https://github.com/Tencent/behaviac)


22、Fanvas  ★Star 214


Fanvas是一个把swf转为html5 canvas动画的系统,由两部分组成:Actionscript实现的解析器、js运行库。(详情:https://github.com/Tencent/Fanvas)


23、HaboMalHunter ★Star 161


HaboMalHunter 是 Habo Malware 分析系统(https://habo.qq.com)的子项目,可用于Linux系统上的自动恶意软件分析和安全评估。该工具可用于 Linux x86 / x64 平台上 ELF 文件的静态和动态分析。(详情:

https://github.com/Tencent/HaboMalHunter)


24、基于ACE的服务框架 TEAF  ★157


TEAF(Tencent Easy ACE Framework),基于 ACE 的高性能服务框架,单进程多线程模型,支持 select/epoll 等多种网络 IO 模型,同时支持 tcp 和 udp 协议,支持二进制(pb等)和文本格式(json等,易于理解),相对多进程模型的框架来说更易维护,更轻量。业务侧只需要开发自己的逻辑处理即可实现高性能的业务后台服务器。已经在腾讯互娱(IEG)大部分平台类产品中成熟应用,比如 idip,游戏人生,心悦,帮帮,新终端游戏中心 aj,cross 等,公司其他 BG 也有很多产品在使用。(详情:

https://github.com/Tencent/Teaf)


25、QT4A ★Star 67


QT4A(Android的快速测试)是适用于 Android 应用程序的 QTA 测试自动化驱动程序。支持Android 2.3 - 6.0 版本,需要设备根。支持多设备同时测试;支持跨进程,跨应用测试;支持进行过控件混淆的安装包(需要映射文件);支持自定义控件(如果有代码混淆需要映射文件)(详情:

https://github.com/Tencent/QT4A)


26、辅助测试工具 WeTest-Assistant ★Star 49


WeTest 助手包括性能测试和远程调试两大功能。手游客户端性能测试常用性能维度,CPU,内存,FPS,流量一次性全部收集, 图表化展示,数据可按场景化分类,并且支持离线和在线两种模式,地铁上都可以做测试,Web上看报告。 支持ROOT和非ROOT安卓手机,支持越狱iOS系统。(详情:https://github.com/Tencent/WeTest-Assistant)


27、QT4i  ★Star 44


QT4i是iOS应用程序的QTA测试自动化驱动程序。主要特性:轻松易用、支持iOS Native控件,webview控件和自定义控件;平台支持,高效维护。(详情:https://github.com/Tencent/QT4i)


28、KNVProtoEngine ★Star 44


KNV是一个模式自由的高性能树型协议处理引擎,是对Key-Value的一个通用结构化扩展。(详情:

https://github.com/Tencent/KNVProtoEngine)


29、优图人脸识别 Python_sdk ★Star 32


优图人脸识别(Face Recognition), 是由腾讯优图团队研发的,基于人的脸部特征信息进行身份识别的一种生物识别技术。它提供了"人脸检测与分析"、"人脸比对"、"人脸验证"、"人脸识别"等一整套技术方案。(详情:

https://github.com/TencentYouTu/python_sdk)

看完本文有收获?请转发分享给更多人


欢迎关注“互联网架构师”,我们分享最有价值的互联网技术干货文章,助力您成为有思想的全栈架构师,我们只聊互联网、只聊架构,不聊其他!打造最有价值的架构师圈子和社区。

本公众号覆盖中国主要首席架构师、高级架构师、CTO、技术总监、技术负责人等人 群。分享最有价值的架构思想和内容。打造中国互联网圈最有价值的架构师圈子。

  • 长按下方的二维码可以快速关注我们

  • 640?wx_fmt=jpeg

    如想加群讨论学习,请点击右下角的“加群学习”菜单入群



推荐阅读
  • Hibernate全自动全映射ORM框架,旨在消除sql,是一个持久层的ORM框架1)、基础概念DAO(DataAccessorOb ... [详细]
  • CentOS下ProFTPD的安装与配置指南
    本文详细介绍在CentOS操作系统上安装和配置ProFTPD服务的方法,包括基本配置、安全设置及高级功能的启用。 ... [详细]
  • 本文探讨了如何在PHP与MySQL环境中实现高效的分页查询,包括基本的分页实现、性能优化技巧以及高级的分页策略。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 问题描述现在,不管开发一个多大的系统(至少我现在的部门是这样的),都会带一个日志功能;在实际开发过程中 ... [详细]
  • 在处理大数据量的SQL分页查询时,通常需要执行两次查询来分别获取数据和总记录数。本文介绍了一种优化方法,通过单次查询同时返回分页数据和总记录数,从而提高查询效率。 ... [详细]
  • PHP面试题精选及答案解析
    本文精选了新浪PHP笔试题及最新的PHP面试题,并提供了详细的答案解析,帮助求职者更好地准备PHP相关的面试。 ... [详细]
  • 本文介绍如何通过整合SparkSQL与Hive来构建高效的用户画像环境,提高数据处理速度和查询效率。 ... [详细]
  • JUC并发编程——线程的基本方法使用
    目录一、线程名称设置和获取二、线程的sleep()三、线程的interrupt四、join()五、yield()六、wait(),notify(),notifyAll( ... [详细]
  • 在Java开发中,保护代码安全是一个重要的课题。由于Java字节码容易被反编译,因此使用代码混淆工具如ProGuard变得尤为重要。本文将详细介绍如何使用ProGuard进行代码混淆,以及其基本原理和常见问题。 ... [详细]
  • 在Android应用开发过程中,开发者经常遇到诸如CPU使用率过高、内存泄漏等问题。本文将介绍几种常用的命令及其应用场景,帮助开发者有效定位并解决问题。 ... [详细]
  • 为何Compose与Swarm之后仍有Kubernetes的诞生?
    探讨在已有Compose和Swarm的情况下,Kubernetes是如何以其独特的设计理念和技术优势脱颖而出,成为容器编排领域的领航者。 ... [详细]
  • 在中标麒麟操作系统上部署达梦数据库及导入SQL文件
    本文档详细介绍了如何在中标麒麟操作系统上安装达梦数据库,并提供了导入SQL文件的具体步骤。首先,检查系统的发行版和内核版本,接着创建必要的用户和用户组,规划数据库安装路径,挂载安装介质,调整系统限制以确保数据库的正常运行,最后通过图形界面完成数据库的安装。 ... [详细]
  • 本文通过C++语言实现了一个递归算法,用于解析并计算数学表达式的值。该算法能够处理加法、减法、乘法和除法操作。 ... [详细]
author-avatar
冷月荐向_878
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有