- 博客(17)
- 收藏
- 关注
原创 好未来轻舟业务网关性能提升之旅
什么是轻舟业务网关轻舟业务网关是轻舟大学生项目组所有API服务的入口。他承载了项目组内所有API的流量,且在网关层具备了传输解密,登录态鉴权,传输防篡改,路由修改,缓存,未发布Mock,APi文档等通用能力。是使用Openresty+Lua技术栈实现,在Lua层实现业务逻辑,并使用nginx的proxy能力进行反向代理。现状控制颗粒细相比于集团网关,轻舟业务网关更贴近于业务。拥有更细颗粒度的控制。我们以method+path+api_version来确定唯一控制级,在这个控制级里可设置是
2021-11-12 14:47:52 2838
原创 网校学研web直播课堂架构升级之路
概述首先,web的免安装,即用即走的特性,再加上没有版本的限制,可以快速迭代或者试错,特别的适合一些业务场景,例如创新性业务,快速迭代业务,关于web能不能支撑直播业务,web直播性能行不行,带着这两个疑问,我们对web直播能力做了探索。通过读这篇文章你可以了解到到web、h5、小程序是否能够做直播,以下探索基于网校学研大班直播体系。web1.0版本横空出世背景是产品侧提出讲座业务要重构,这时候天时地利人和都占有了,快速组建团队,耗时1个多月,做出了支持rtmp视频播放、即时聊天、投票、献礼物等
2021-09-10 18:01:18 253
原创 Vue系列之常见内存泄漏定位与解决
JavaScript 有完善的内存处理机制,能自动进行垃圾回收,但是假如一个对象一直被引用,他的内存是无法得到释放的。如果项目运行过程中,内存占用越来越高,只增不减,没有峰值,就存在内存泄漏。多页应用我们可以通过页面刷新缓解,但是对于服务端渲染和单页应用则需要重点关注内存泄漏问题。本文主要以Vue单页应用展开,因为在 SPA 的设计中,用户使用它时是不需要刷新浏览器的,所以 JavaScript 应用需要自行清理组件来确保垃圾回收以预期的方式生效。一、什么是内存泄漏程序的运行需要内存。只要程序提出要
2021-09-03 15:04:03 6346 1
原创 学而思高并发活动保障方案
导读:随着业务的不断发展,尤其是在2020疫情开始后,整个在线教育行业的竞争变得异常严峻,作为这个行业的领路人,用户流量更是成倍增长,这就对我们在线业务运维体系的稳定性提出了更高的要求。对此网校整体产研部每年寒、暑假都会针对性成立寒、暑特战队。特战队成员为各业务总接口人以及各专项总负责人特战队成员共同目标为:保障寒、暑假期间百万学员同时稳定上课,无S0事故每个部门方向均需要输出负责人review过得保障方案,如需有风险,列出整改计划这里我们从SRE视角对活动保障体系进行了系统性的梳理和总结,将好的
2021-08-20 11:53:24 543
原创 未来实验A/B测的统计学原理
引言什么是A/B测A/B 测试以数据驱动为导向,可以实现灵活的流量切分,使得同一产品的不同版本能同时在线,通过记录和分析用户对不同版本产生的行为数据,得到效果对比,最大程度地保证结果的科学性和准确性,从而帮助人们进行科学的产品决策。AB测的核心在于:实验人群的相似性、均匀性;单一变量原则;科学的效果评估。A/B测的应用场景“头条发布一个新APP,其名字都必须打N个包放到各大应用市场进行多次A/B测试而决定,张一鸣告诉同事:哪怕你有99.9%的把握那是最好的一个名字,测一下又有神马关系
2021-08-13 14:07:27 537
原创 直播消息服务架构最佳实践分享
前言在互联网时代,消息服务已成为必备的产品。比如微信、钉钉和QQ等以IM为核心功能的产品。还有一部分是直播间内用户聊天互动,形式上也是常见的IM消息流;直播间内常见的消息流包括直播弹幕、互动聊天、信令、涂鸦、消息推送等。在线教育行业内消息服务尤其重要,直播授课过程中的互动答题、涂鸦、表演、点赞等,不过对消息可靠性有非常高的要求,而且对消息的即时性也非常敏感。消息服务当说到消息服务的时候大家都会想到微信等常见的IM产品,所以直播间内的聊天消息经常类比于群聊,而1v1的消息类比于单聊。大部分人听
2021-07-16 18:50:37 373
原创 企业微信应用实战踩坑之路
背景企业微信这两年在线下场景呈现爆炸性增长趋势,相比个人微信而言,企业微信有很多个人微信无法比拟的优势,比如品牌标识的加强,外部客户的管理,丰富的运营手段等等,说白了企业微信就是面向企业使用的,个人微信是面向个人使用的,定位的不同也决定了企业微信更加适合在运营、营销、推广方面来使用。经过 2021.3 以来的 2 个大版本的产品迭代,目前学而思一对一企业微信已经在用户画像、标签体系建设、裂变活动、渠道活码、群发助手、多主体支持等方面有了生产环境的实践经验。这篇文章分享一下学而思一对一在开发企业微信应用过
2021-07-09 16:13:49 1625
原创 OLAP引擎Clickhouse在abtest场景下的优化
引言A/B测定义A/B 测试以数据驱动为导向,可以实现灵活的流量切分,使得同一产品的不同版本能同时在线,通过记录和分析用户对不同版本产生的行为数据,得到效果对比,最大程度地保证结果的科学性和准确性,从而帮助人们进行科学的产品决策。基于用户行为数据计算不同版本的指标数据,是评估实验结果的唯一依据。指标产品设计图1. 新增指标指标系统产品设计上采用了指标注册的方式,用户可以在自己的业务域和业务线下进行指标注册,注册需要指定指标计算公式(SQL),指标SQL必须遵守SQL模板,并支持自
2021-07-02 17:06:16 321
原创 好未来直播方向出席「亚太内容分发大会暨CDN峰会」并荣获「RTC技术创新奖」
一、概要2021年6月9日,「亚太内容分发大会暨CDN峰会」在北京举行,直播中台受邀出席大会,冯权成老师代表直播中台出席大会的论坛「互动直播论坛」,并发表题为「实时音视频在教育场景下的成熟应用」的主题演讲,向业界介绍了好未来在RTC(Real Time Communication,实时通信)领域所取得的的技术成果和在教育场景下的成熟应用。此次分享的主要内容包含四个部分:直播中台产品全景介绍 TalRTC整体架构 高可用及弱网对抗策略 针对教育场景的特殊优化全场围绕如何使用技术手段最大限度保
2021-06-25 18:06:47 516
原创 服务网格在好未来学而思网校的实践和思考
服务网格方案介绍服务架构从单体发展到微服务,在云原生时代,微服务发展成服务网格。依托容器等技术,服务治理功能独立成基础设施层,与被治理的服务相互分离。服务治理介绍软件领域一直追求高可用、高性能、易扩展。在软件变得复杂之后,需要多人进行协作开发,服务的可用性、高性能和可扩展性受到越来越多的挑战。在一个庞大、复杂的单体服务下进行产品迭代,牵一发而动全身的窘境,简直是开发者的噩梦。为改变这种状况,很自然地会将单一庞大而复杂的服务做拆分,即进行服务化拆分。一个服务由多个微服务组成,微服务通过接口相互调用
2021-06-18 18:26:45 395
原创 深入容器之构建大型容器网络
好未来技术团队出品, 专注于容器底层基础设施建设背景介绍构建一个大型混合云容器网络,首先需要考虑的是性能问题,还有容器网络架构是不是经过大规模验证,云厂商是不是有类似方案的选择,如何设计一个能支撑 5K 节点的容器网络呢?其实经过大规模验证的容器网络组件屈指可数,其中大名鼎鼎的 cilium 公开数据显示支持过单集群 5k node 规模,各大云厂商齐头并进支持 cilium ebpf。本文将包括如下几部分:Kubernetes Pod 网络概览 Kubernetes Servic.
2021-06-11 18:45:13 540
原创 网校学研web直播课堂架构升级之路
概述首先,web的免安装,即用即走的特性,再加上没有版本的限制,可以快速迭代或者试错,特别的适合一些业务场景,例如创新性业务,快速迭代业务,关于web能不能支撑直播业务,web直播性能行不行,带着这两个疑问,我们对web直播能力做了探索。通过读这篇文章你可以了解到到web、h5、小程序是否能够做直播,以下探索基于网校学研大班直播体系。web1.0版本横空出世背景是产品侧提出讲座业务要重构,这时候天时地利人和都占有了,快速组建团队,耗时1个多月,做出了支持rtmp视频播放、即时聊天、投票、献礼物等
2021-06-06 03:32:33 434 1
原创 大数据集群监控体系架构
背景 企业级的数据集群往往有PB 级的数据、成百上千的各类型运算任务 在一套集群上运行。 所以它的维护是充满挑战的: 庞大的数据量、复杂的运算逻辑、相互关联的大数据组件、数以万计的运行任务 都是要克服的难点。 SRE 如果不想被动的话,就必须做好各式监控。预防风险、提前发现风险、然后分析问题、进而针对性的处理问题。凡是成体量的分布式系统,一旦出现性能问题,往往很难在短时间内作出有效处理。 所以 监控要前置,有趋势预测、有风险评估 才行。一、大数据监控体系截止目前,集团数据中台...
2021-05-28 15:16:02 3434 2
原创 Windows平台基于API Hook技术的WinInet网络库HttpDNS实现方案
一、项目背景学而思网校直播课堂在线安装程序,是一个独立的应用程序,提供学生端的安装功能,为了减少安装包体积,避免引入第三方网络库,使用的是操作系统的WinInet网络库。为了更好的优化网络,提高网络连接的成功率,避免Local DNS造成的域名劫持等问题,采用HttpDNS方式实现域名解析。二、为什么使用HttpDNS相比于传统的DNS,HttpDNS主要有以下优势: 1. 域名防劫持:使用Http(Https)协议进行域名解析,域名解析请求直接发送至HttpDNS服务器,绕...
2021-05-21 12:00:25 925
原创 Java并发编程-Volatile和Syncronized关键字
Java并发编程学习分享的目标了解Java并发编程中常用的工具和类用途与用法 了解Java并发编程工具的实现原理与设计思路 了解并发编程中遇到的常见问题与解决方案 了解如何根据实际情景选择更合适的工具完成高效的设计方案学习分享团队团队:培优-技术中心-平台研发部-运营研发团队Java并发编程分享小组:@沈健 @曹伟伟 @张俊勇 @田新文 @张晨本章分享人:@沈健本章课程简介Volatile关键字Synchronized关键字Volatile篇目标:搞清楚Java并发工具.
2021-05-14 15:50:32 214
原创 Java并发编程-知识前瞻(第一章)
前言:Java并发编程学习分享的目标: Java并发编程中常用的工具用途与用法; Java并发编程工具实现原理与设计思路; 并发编程中遇到的常见问题与解决方案; 根据实际情景选择更合适的工具完成高效的设计方案 学习分享团队:学而思培优-运营研发团队Java并发编程分享小组:@沈健 @曹伟伟 @张俊勇 @田新文 @张晨本章分享人:@张晨学习分享大纲:01初识并发什么是并发,什么是并行?用个JVM的例子来讲解,在垃圾回收器做并发标记..
2021-05-08 13:27:55 339
原创 好未来数据中台实时数据平台演进
摘要:本文由好未来资深数据平台工程师毛祥溢分享,主要介绍批流融合在教育行业的实践。内容包括两部分,第一部分是好未来在做实时平台中的几点思考,第二部分主要分享教育行业中特有数据分析场景。大纲如下: 背景介绍 好未来 T-Streaming 实时平台 K12 教育典型分析场景 展望与规划 Tips:点击文末【链接】即可下载作者分享 PPT 并回顾原版分享视频~1.背景介绍好未来介绍好未来是一家 2003 年成立教育科技公司,旗下有品牌...
2021-04-25 16:19:56 1072
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人