公司:好未来
北京世纪好未来教育科技有限公司,是中国大陆的一间专为中小学生提供课外辅导的教育机构,公司总部位于中华人民共和国北京市,该公司由张邦鑫和曹允东于2003年8月创办。成立最初的公司名称是学而思;于2013年8月19日时,学而思更名为好未来。2021年7月,中国政府发布规定禁止校外培训机构盈利,导致包括好未来在内的上市教育公司股价大幅缩水。“双减”后,辅导平台“希望学”与学而思网校标志,界面设计等方面雷同,且网页源代码里也包含"xueersi"字串,导致许多自媒体平台怀疑希望学与学而思的关系。
Java多线程之CompletableFuture
CompletableFuture是java.util.concurrent库在java 8中新增的主要工具,同传统的Future相比,其支持流式计算、函数式编程、完成通知、自定义异常处理等很多新的特性。Future接口相对简单些,提供了取消(cancel)、获取结果(get)、检测是否完成或者取消(isCancelled、isDone)这些方法,Future接口提供了异步获取结果的能力。CompletableFuture还能够将任务放到不同的线程中执行, 既可以在当前线程中直接执行任务,也可以将其放到其他任务线程中执行,这个过程是自动的,无需干预。
CompletableFuture实现了CompletionStage接口和Future接口,前者是对后者的一个扩展,增加了异步回调、流式处理、多个Future组合处理的能力,使Java在处理多任务的协同工作时更加顺畅便利。CompletionStage相当于“阶段”,一个CompletionStage对象是异步计算中的一个阶段,当 一个CompletionStage完成时会触发下一个动作或计算。 CompletionStage解决了Future的一些问题: Future没有提供通知机制,Future是否执行完任务需要不断的检查或者调用get()方法阻塞任务执行,CompletionStage完美的解决了该问题,前一个任务 执行成功后可以自动触发下一个任务的执行,中间无需等待。CompletableFuture 和 FutureTask 同属于 Future 接口的实现类,都可以获取线程的执行结果 。
基于内容的图像检索技术研究
图像检索技术是一种通过对比和搜索相似图像,以找到特定图像的技术。这项技术在许多领域都有着重要的应用价值,在大量图像数据中快速准确地找到所需信息,能够节省人力和时间。图像检索在安全监控、方位识别、在线购物平台、医疗辅助影响、教育和科研、社交媒体、搜索引擎等领域中都有所涉及。图像检索技术正在越来越多地被应用于我们日常生活中,并且随着AI及深度学习等先进科技的发展, 它将会有更广泛而深远的影响。
golang 实现反向代理
当我们谈到反向代理时,可以将其比喻为一个“中间人”。想象一下,你是一个用户,你想要访问某个网站。但是,这个网站并不直接向你提供服务,而是委托了一个代理来处理你的请求。这个代理就是反向代理。
你可以把反向代理想象成一个非常聪明的助手,它可以帮助你与网站进行交流。当你发送请求时,它会接收到你的请求,并将其转发给网站。然后,网站会将响应发送给反向代理,反向代理再将响应发送给你。这样,你就可以与网站进行交互,而不需要直接与网站通信。
net/http 包里面已经帮我们内置了具有反向代理能力 ReverseProxy 对象, 但是它的能力有限, 从工程能力上面还有很多自行实现。
前端代码质量规范测量
圈复杂度(Cyclomatic complexity)是一种代码复杂度的衡量标准,在1976年由Thomas J. McCabe, Sr. 提出。在软件测试的概念里,圈复杂度用来衡量一个模块判定结构的复杂程度,数量上表现为线性无关的路径条数,即合理的预防错误所需测试的最少路径条数。圈复杂度大说明程序代码可能质量低且难于测试和维护,根据经验:程序的可能错误和高的圈复杂度有着很大关系。
目前最好用的使用js实现一键复制的方法
本文通过分析梳理Web API中两款可完成复制操作的API,总结提炼出了更合理、兼容性更好的方法,以实现“一键复制”。
AutoGPT工作原理解析
本文主要介绍一下最近爆火的AutoGPT是什么,它具体的工作原理是什么样的?以及我们从它的实现思路上能得到什么启示。
浅析深度知识追踪如何助力智能教育
深度知识追踪模型(DKT)可以作为一种人工智能手段自动发现知识点间相互关系同时可以智能设计学生学习路径达到提高学习效率的目的。
网校分钟级数仓体系建设与价值探索
数据已经被当作一种生产要素在日常的经营活动中扮演着无可替代的地位,作为数据的中枢和底座,数据中台一直致力于为全公司提供高效高质的服务,提升数据价值。本文简要介绍了数据中台网校实时数仓团队近半年来基于此目标所作的一系列努力和探索。
黑夜路人:如何构建更健壮的在线系统
- 为什么测试好好的,上到线上代码一堆bug,一上线就崩溃或者一堆问题?
- 为什么感觉自己系统做的性能很好,上线后流量一上来就雪崩了?
- 为什么自己的系统上线以后出问题不知道问题在哪儿,完全无法跟踪?
流量回放测试在学而思1对1的最佳实践
随着互联网竞争越来越激烈,产品的变更迭代也越来越频繁,回归测试工作就变得繁重且紧急,这对测试团队的测试质量和效率带来很大的压力。面对越来越多的回归测试任务,以及对回归测试提出的更高的要求,而传统的接口自动化测试的维护成本太高、公司自动化测试薄弱的现状慢慢成为测试团队非常尴尬的存在。团队迫切需要一套可靠、低维护成本的测试方案,目前最火的当属流量回放测试。
目前学而思1对1团队采用的是单服务Mock方案,底层采用的是滴滴的开源方案,团队在开源的基础上结合团队自身的特点,在准(基于代码覆盖挑选流量)、快(分布式执行)、稳(通过引入参照系报告)、易用性(平台化)等多个方面做了进一步的开发工作。
浅谈WebRTC常用架构
TAL RTC实时音视频是基于好未来在教育场景下的技术积累,平台经历多年优化打磨和严苛质量验证,通过自身媒体服务向开发者开放,致力于帮助开发者快速搭建低成本、低延时、高品质的音视频互动平台。
浅析Docker原理
Docker是基于Go语言实现的容器引擎,能够将应用程序和基础设施层隔离。底层实现基于Linux系统内核的Cgroups、NameSpace,以及Union FS等技术对进程进行封装隔离。
JVM家庭成员盘点及各自职能介绍
java被称为一处编译,到处运行,那么它实现的机制到底是什么呢?关键就在jvm屏蔽了跨平台的多种处理。
关于幂等设计
本文主要介绍了幂等设计及应用的业务场景。
截屏、截窗口方法及在Qt中的实现和探索
本文介绍了GDI和DXGI这两种截图方法,同时在Qt中实现了这几种截图方法,并进行了性能和效果上的比较。
本人是做教师端开发的,不论是最常用的三分屏教师端还是半身直播教师端,都离不开截图、截屏功能。三分屏中,截窗口、截桌面区域是上课是老师的一种教学工具,可以给学生们展示更加丰富的课程内容和一些课外补充。半身直播中(附图为半身直播间的3D图),老师在播放课件中的动画片时,可以直接通过截取课件截图,来给学生更加沉浸的动画体验。
grpc与http的错误传递
使用pb文件定义接口后, 通过 grpc 和 现有http业务 使用同一个pb结构, 发现他们结构之间是有差异的。