腾讯 Tencent Server Web(TSW),是一套面向 WEB 前端开发者,以提升问题定位效率为初衷,提供染色抓包、全息日志和异常发现的 Node.js 基础设施。TSW 关注业务的运维监控能力,适用于 http、websocket 协议的业务场景,可无缝与即有项目进行整合。支持公有云、私有云和本地部署。
TSW 每天为百亿次请求提供稳定服务,广泛应用在 QQ 空间、微视、微云、QQ 音乐、全民 K 歌、腾讯云等三十多个重要业务当中。
TSW 支持用户纬度的抓包
对于染色的用户
对请求生命周期内的抓包进行收集
提供抓包查看、下载等功能
抓包格式支持Fiddler和Charles,以及HAR
TSW 提供用户纬度的全息日志帮助开发者快速定位问题
对请求生命周期内的日志,采用全息的方式记录,形成流水
流水按用户纬度聚合
提供查看功能,快速定位问题原因
内置指标实时监控
代码异常推送告警
操作系统: Windows/Mac/Linux
Node.js: 8.0.0+
写在前面: TSW作为一款提供染色抓包、全息日志、异常发现与处理的开源基础设施,不论是在鹅厂内部还是在其他开发团队里,都有着比较广泛的应用。但是TSW还是有一些美中不足的地方,比如文档体验较差,造成在使用TSW、阅读TSW源码时存在一定的障碍。因此在这里开个坑,写一份TSW的源码阅读指南,帮助大家更好地了解TSW的设计思路和具体实现。 本指南采用TSW 2019.7 开源版本的master分支进行
Overview Tencent Server Framework is a coroutine and Swoole based server framework for fast server deployment which developed by Tencent engineers. Features PHP Based. Compared with C++, the framework
有错误麻烦大佬指出!!!拜托了!!!! 主线程epoll监听socket: //创建套接字,返回listenfd int listenfd = socket(PF_INET, SOCK_STREAM, 0); assert(listenfd >= 0); int ret = 0; struct sockaddr_in address; bzero(&address, sizeof(address
WebServer: Tencent: 1、QHTTPD; ref: http://www.qdecoder.org/wiki/qhttpd 2、
项目目前是存档状态,感谢您对腾讯开源项目的关注!您可以继续fork后更新迭代,感谢理解和支持;如果您有其他疑问,建议请发送邮件:tencentopen@tencent.com 与我们联系 Tencent Server Framework Overview Tencent Server Framework is a coroutine and Swoole based server framewor
Swoole版本选择 EasySwoole 2.x版本全面支持swoole1.x与swoole2.x。若有协程需求,请使用swoole2.x。但对于大部分新手而言,若没有协程概念(可以理解为进程内多线程), 推荐还是配和swoole1.x使用,因为很多场景下,static变量在协程下是非常不安全的,例如单例模式的数据库连接。 若生产环境想上swoole,如果没有太多的基础或者是对内核执行机制比较了
面向对象三要素:封装、继承、多态 封装:封装的意义,在于明确标识出允许外部使用的所有成员函数和数据项,或者叫接口。 继承: 继承基类的方法,并做出自己的扩展; 声明某个子类兼容于某基类(或者说,接口上完全兼容于基类),外部调用者可无需关注其差别(内部机制会自动把请求派发dispatch到合适的逻辑)。 多态:基于对象所属类的不同,外部对同一个方法的调用,实际执行的逻辑不同。很显然,多态实际上是依附
前篇文章已经由介绍、安装至设定都有完整介绍,nodeJS 内部除了javascript 常用的函式(function)、物件(object)之外,也有许多不同的自订物件,nodeJS 预设建立这些物件为核心物件,是为了要让开发流程更为,这些资料在官方文件已经具有许多具体说明。接下来将会介绍在开发nodeJS 程式时常见的物件特性与使用方法。 node.js http 伺服器建立 在`node.js
译见系列|DaoCloud 现推出「译见」系列,每周为开发者提供国外精品译文,主要关注云计算领域的技术和前沿趋势。本系列由 Fiona 翻译。 译者注 DaoCloud 曾在今年 6 月末举办的企业级容器技术研讨会上,与来宾分享讨论「开发者定义基础设施」这一前沿话题,现在我们把 Jerry 的文章翻译成中文,与更广泛的读者分享。 作者介绍 Jerry Chen 是硅谷著名风险投资机构 Greylo
随着微服务架构、云计算、单页应用和响应式设计的兴起,Web前端技术发展迅速。当前在网站开发中使用现代前端技术已经是基本形态,你可以基于Canvas、WebGL来开发二三维的H5游戏,也可以使用React Native等框架来开发新一代的移动APP,还可以使用Nodejs等框架来开发桌面应用,还可以开发ChromeAPP(PWA)、微信小程序、以及这几年很流行的WebVR和AR。 对于GIS行业来说
面向对象的基本特征 面向对象的三个基本特征是:封装、继承、多态 封装 封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。 继承 继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。通过继承创建的新类称为“子类”或“派
学习基于Web的编程可能正是你读本书的原因。事实上,如何通过Go来编写Web应用也是我编写这本书的初衷。前面已经介绍过,Go目前已经拥有了成熟的HTTP处理包,这使得编写能做任何事情的动态Web程序易如反掌。在接下来的各章中将要介绍的内容,都是属于Web编程的范畴。本章则集中讨论一些与Web相关的概念和Go如何运行Web程序的话题。 目录
在第 1 章中,我们简单的介绍了 Node.js。了解到它基于 JavaScript、天生异步、拥有大量的第三方类库。可能对于这些内容你还没有完全弄清。所以在这章中将会给出一个更简洁高效的介绍。 其中的内容包括: Node 的安装 如何使用第三方模块生态 第三方模块的安装 一些简单的使用示例 开发过程中的一些建议和技巧 在此之前,我假设你已经掌握了 JavaScript 基础知识并且熟悉一些基本的