网站性能检测评分
注:本网站页面html检测工具扫描网站中存在的基本问题,仅供参考。
qq浏览器官网
一年后,张小龙为何“食言”了 行业视频课程
一年前,张小龙公开回应小程序会不会能开发游戏:“不能”;整整一年后,微信上线“小游戏”。一年前,2016年12月28日,“微信之父”张小龙在发布微信小程序后以“十问十答”的形式,阐释了小程序初期发展的标准。在“小程序能不能开发游戏?”一问中,张小龙的回答简单直接:“现在不能。”短短的一句回答扼杀了无数游戏类小程序开发者的希望——由于游戏先天具备的黏性与微信平台庞大的用户数,制造一个爆款小程序游戏无异于生成一个成本极低的“流量收割机”,但也正因如此,游戏类小程序的特性正与微信在初期不设入口、没有应用商店等去中心化的设定相违背。想象一下,如果微信一开始就放开游戏小程序的开发,微信平台势必被大量形色各异的小游戏所充斥,这很容易对当时仍处于探索期的微信团队造成失控的局面,也并不符合腾讯“连接一切”的定位。有趣的是,恰恰在一年之后,2017年12月28日,微信通过旗下“微信派”、“微信公开课”等多个公众号宣布上线“小游戏”,同时在更新微信iOS6.6.1版本后,APP开屏也变为指引用户试玩“跳一跳”的页面。在部分用户的发现-游戏入口中,也出现了欢乐斗地主、保卫萝卜、爱消除乐园等更多小游戏。12月28日,微信在更新版本后推出“跳一跳”等小游戏。另外,微信还在公众平台上线了小游戏开发文档,开发者可以利用开发工具先行开发,待小游戏正式开放开发者注册后,就可以在微信公众平台官网提交审核。对于小程序可能在工具、内容、电商行业带来的红利,钛媒体在之前的文章已经多有探讨。随着游戏入口的开放,相关创业者看似有了新的机会,但微信生态现有的严苛规则,以及腾讯本身在游戏领域内的强势地位,都让这个可能形成的“风口”充满了不确定性。为此,钛媒体采访了多位游戏行业人士,同时独家联系到了微信小游戏团队,来一探微信“小游戏”的商业潜力,与可能面临的挑战。游戏开发者准备好了吗?“最大的优势自然就是「入口」。很多同行都在关注这个机会,我们也准备好了适合微信的游戏应用。”一位游戏行业的资深从业人员这样谈“小游戏”。和传统的手游、端游、H5小游戏不同,小游戏依靠小程序在微信内部不断增开的入口,大大增加了用户的触达率,而在昨日,微信又在主界面新增了小程序任务栏,同时对小程序菜单进行升级,用户通过一拉、一点、一按即可快速切入小程序。12月28日,小程序在微信内与QQ浏览器新增多个入口。另外,在QQ浏览器最新发布的安卓8.1版本中,其搜索栏也新增了专供微信小程序的搜索入口(上图左)。QQ浏览器的负责人表示,平台将邀请优质的小程序开发者入驻QQ浏览器。这相当于又为微信小程序增添了一个千万级日活的流量平台。在上述人士看来,虽然诸如“围住神经猫”一类的传统H5游戏在微信生态中的机会已被验证,但由于H5游戏入口过于分散,用户“玩完即走”后无法产生商业价值,但微信统一入口、统一账号、且支持小程序与公众号相互跳转的特点,可以让开发者通过游戏导来的粉丝得以留存,最终可用实物电商、虚拟物品付费等形式盘活流量。H5游戏《围住神经猫》曾创下3天一亿人次访问量的纪录,其诞生的2014年也被认为是H5元年。“现有的「跳一跳」小游戏只是为了让用户熟悉入口,之后微信应该会推出中大型游戏,以提升用户的黏度。”上述游戏行业人士表示,另外,该人士还向钛媒体透露,目前微信也在与苹果逐步推进虚拟物品购买的利润分成,届时有可能会在部分游戏类小程序中上线。不过,由于微信“小游戏”的规则只是刚刚上线,大多游戏从业者仍处于观望状态,在钛媒体联络的多位游戏类小程序开发者中,几乎同时要求不要曝光个人身份以及项目动态,理由是:还没有摸清微信对游戏的态度,一味追求曝光引发流量井喷,很可能被微信发现后封禁。这样的担忧不无道理,今年5月,由“朋友印象”推出的“匿名聊聊”小程序在朋友圈刷屏,创造了5小时1700万PV的纪录,但很快便被微信官方下架。“我们是被微信封杀最多的,因此有了很多经验。比如用完即走是一个错误的印象。小程序绝对不是用完即走,千万别被它骗了。”朋友印象创始人栗浩洋曾这样表示。在栗浩洋看来,小程序除了要增添实名制、敏感词监控等治理能力以外,想成为“爆款”,一定要重视社交关系链的维护,并在荷尔蒙、工具性、孤独感、抒情、炫耀、发泄六个方面切入用户需求。微信为什么复活游戏类小程序?根据第三方统计平台阿拉丁小程序在11月发布的《生态白皮书》,在综合活跃度TOP200的小程序中,工具类小程序占比30%,零售类占比21%,游戏类仅占比2%。不过,该《白皮书》称:在游戏接口尚未开放的情况下,已经有王者荣耀群排行、头脑王者、趣测啦等多个小程序游戏进入TOP200榜单,所以当分享成为小程序第一大入口后,游戏具备天然的分享属性,引入游戏将极大丰富小程序生态。阿拉丁小程序推出的《生态白皮书》中判断游戏类小程序“即将爆发”。在阿拉丁创始人史文禄看来,选择在这个节点推出小程序,是因为微信想明白了流量与微信生态的关系。“对于开发者来说,除了遵守微信规范以外,更多是充利用微信的社交关系链产生流量的裂变,而不是洗劫微信本身的流量。”史文禄告诉钛媒体。也就是说,一款符合微信生态要求的小程序,应该能像“毛细血管”一样延伸至微信内部的各个环节,比如群聊天、微信支付、公众号,最终形成闭环,既能连接微信母体的能力,也能让开发者盘活自己的流量。那么,微信官方团队对游戏类小程序的态度是什么?“我们期待游戏开发者发挥创意,提供更多好玩有趣的小游戏。具体的开发规范,将在后续进行公布。”微信小游戏团队对钛媒体表示。如此来看,微信团队对于游戏类小程序已持欢迎态度,另根据外界猜测,小游戏的开发细则将在2018年1月15日的微信公开课Pro现场公布。另外,在微信小游戏团队给钛媒体的书面回复中,也强调了社交的重要性:“小游戏支持邀请围观、发起好友对战以及排行等功能,能给用户提供更多社交互动玩法,这和微信的社交属性强相关的。”以下为微信小游戏团队针对此次“小游戏上线”提供给钛媒体的独家回复:钛媒体:“跳一跳”的小程序游戏从何时开始筹备?为什么要上线“小游戏”?为何选定了“跳一跳”的游戏形式?微信小游戏团队:微信是一个生活方式,开机页面和开机游戏是微信表达生活态度的一种形式,微信数次的新版本更新都有提供开屏游戏和更新开屏画面的习惯。大家可能注意到了,“跳一跳”很像童年的“跳格子”游戏,相信很多人现在都已经很少去玩了,“跳一跳”就是致敬这款经典的游戏。当现在很多人的生活都被工作占据,信息越来越碎片化,很难专注在一件事上,微信团队开发这款游戏,希望提醒大家“停下来,放松一下”,和好友PK一把,给自己一个享受专注、享受乐趣的机会。钛媒体:“跳一跳”小程序内集合了不少小程序的分享入口,比如邀请围观、发起挑战等,结合这种强社交属性谈谈微信游戏小程序的特点?微信小游戏团队:小游戏支持邀请围观、发起好友对战以及排行等功能,能给用户提供更多有趣的社交互动玩法,这和微信的社交属性也是强相关的。关于它的特点,可参考官方定义:小游戏是小程序的一个类目,它即点即玩,无需下载安装,体验轻便,你可以和微信内的好友一起玩,比如PK、围观等,享受小游戏带来的乐趣。钛媒体:在“跳一跳”之后微信小程序是否会推出更多小游戏?微信小程序之后推出游戏的标准是什么?哪些会做,哪些不会做?微信小游戏团队:与跳一跳同步上线的还有腾讯的十几款游戏。目前,小游戏已提供开发文档和工具,方便开发者先进行开发。待小游戏开放注册后,开发者可注册和提交小游戏。我们期待游戏开发者发挥创意,提供更多好玩有趣的小游戏。具体的开发规范,将在后续进行公布。钛媒体:微信明确提出要禁止“流量泄洪”类小程序,“跳一跳”等游戏小程序的推出是否会与这一说法违背?微信小游戏团队:小程序自上线以来,连接的场景不断丰富,逐步渗透到线下的餐饮、零售、交通出行、医疗、校园等多种场景,也包括很多线上的电商、群工具、阅读产品等等,小游戏只是小程序的一个子类目,我们认为,每个类目都有其对应的更适合服务和连接的场景,只要是用户需要的、符合场景需要的、合理的,就是有价值的。(本文首发钛媒体,作者/苏建勋)
腾讯贡献大规模 Node.js 微服务框架 Tars.js 企业视频课程
随着互联网的发展,越来越多的业务不仅仅由单一节点(或是单一语言)就可承载,而是趋向多语言分布式协同开发(如接入层由Node.js完成,逻辑(数据)层由C++/GO/Python实现)并由此组成大型异构系统。我们(现SuperTeam)基于 Tars 体系研发出 Tars.js 以便用户在不改变异构系统整体架构的情况下快速搭建(迁移)Node.js服务,并可非常方便的将原来的单一服务拆分为多个(逻辑)子服务。Tars.js在腾讯内部经过5年多的沉淀与迭代(Node.js@0.10版本即提供支持),广泛运用于腾讯QQ浏览器、腾讯桌面浏览器、腾讯地图、应用宝、腾讯手机管家、互联网+、腾讯医疗、腾讯觅影、保险、彩票等几十个重要业务中,日承担了上百亿流量。Tars.js包含下述特性:l 100%由JavaScript编写,不包含任何C/C++代码。l 多进程负载均衡与管理。l 代码异常监控与重启。l 服务日志搜集与处理。l HTTP(s)服务监控与用量自动上报,并支持用户自定义维度上报(PP监控)。l 符合 Tars(IDL)规范的编解码模块。l 支持 TarsRPC调用与染色(模调自动上报)。l 支持在线发送管理命令、拉取服务配置。l 独创 LongStackTrace™异常跟踪机制。l …… 更多特性可访问 @tars/node-agent 了解设计理念:»A.高自由度:l 兼容所有(≥0.10)官方Node.js版本。l 对 Node.js源码无侵入无修改。l 底层对上层完全透明,支持各种上层框架,无需变更。也就是说:您可以使用任何您熟悉的框架(如 Express.js/Koa.js等,包括但不仅限于Web框架),也无需对框架进行任何修改(无需引入任何中间件)。即可通过Tars.js运行,享受平台提供的各种监控与管理特性。与此同时,Tars.js所提供的模块,也可以根据您的需求引入(如未使用到则可不引入)。»B.高性能:Tars.js为高性能与大并发量而设计,使用了大量的前端(V8)优化技巧(如FlattenString/FastProperties等)尽量降低所提供的能力对于业务性能的影响。经过我们测试(WebServer),默认的旁路上报与监控对服务性能的影响≤5%,常用模块(RPC、日志等)性能位于业界前列。»C.差异化:Tars.js根据不同的业务类型提供差异化运营方案:l 高流量业务:尽力降低框架对业务性能的影响。l 低流量业务:充分利用硬件资源提升开发体验。HelloWorld我们来看Node.js官网的 例子 (如下),无需任何变更,直接通过Tars.js进行部署,它会拥有哪些特性?✓ 进程管理默认基于 cluster 模块进行负载均衡,进程数可以配置为1~max(CPU核心数)、还可配置为auto(物理核心数相同)以减小内存压力提升“性价比”。与此同时,进程僵死检测也会同时启动,实时监控业务进程。»案例说明某服务在论坛UBB代码转HTML时,使用未优化的正则表达式进行XSS攻击过滤,但由于用户发帖时图片采用BASE64编码,导致正则表达式计算时间过长,CPU使用率飙涨到100%:开启僵死检测后,Tars.js监控到业务进程僵死时,自动重启业务进程,从而缩短了业务无响应时间:Tars.js虽然无法解决业务代码的问题(BUG),但会尽最大努力保证业务的可用性。✓ 服务监控以服务名、接口名(URL-PATH节)为纬度,统计总流量、平均耗时、超时率、异常率:其中返回码大于400(可配置)作为异常进行上报。»监控说明Web服务一般由静态与动态资源(接口)组成,由于静态资源(本地文件)的请求耗时远低于动态资源(业务逻辑),请求量往往又很高,拉低了服务整体耗时。基于此,Tars.js将请求URL中的PATH节作为接口,每个接口均可查看其总流量、平均耗时、异常率,便于用户全面了解服务性能。✓ 特性监控无论您服务的类型是什么,总是会上报下述特性,便于回溯问题与评估性能:l memUsage:内存用量,将会上报rss、heapUsed、heapTotal这三个用量(单位为字节)l cpuUsage:CPU用量,将会上报CPU使用率,数据汇总为逻辑单核(单位为百分比)l eventloopLag:(任务)队列延迟,每隔2秒采样(单位为毫秒)l libuv:I/O用量,将会上报activeHandles、activeRequests这两个用量各策略以平均值(Avg)、最大值(Max)、最小值(Min)分节点进行统计:✓ 日志输出所有通过Console模块(如console.log)输出的日志,都会输出到服务本地文件内。并附加相关信息(如下),方便定位问题。日志格式:日期时间|进程PID|日志级别|输出文件名与行号|日志内容2018-07-0112:00:00|332|DEBUG|app.js:13|Serverrunningathttp://127.0.0.1:3000/✓ LongStackTrace™由于Node.js采用异步机制,在发生异常时堆栈不完整,导致定位问题复杂。鉴于此,我们提供了长链路跟踪技术在产生异常时自动附加前序调用堆栈,同时还支持在异常堆栈中过滤出用户代码部分。由于开启此特性时会造成性能损耗,故默认关闭,管理平台等性能不敏感业务可直接通过配置开启。»案例说明执行上述代码会抛出下述异常:ReferenceError:ThisMayThrowErrorisnotdefinedatTimeout.setTimeoutas_onTimeoutat_disibledevent="http://superzheng.com/">@SuperZheng 创立于2017年。团队成员均为全栈架构师(Super寓意Superman——无所不能),熟知Web(3D)、终端、后端与大数据计算,并由传统前端向互联网从业者方向发展。欢迎前端牛人加入,共创前端美好未来。