29_如何测试Beam_Pipeline?
你好,我是蔡元楠。
今天我要与你分享的主题是“如何测试 Beam Pipeline”。
在上一讲中,我们结合了第 7 讲的内容,一起学习了在 Beam 的世界中我们该怎么设计好对应的设计模式。而在今天这一讲中,我想要讲讲在日常开发中经常会被忽略的,但是又非常重要的一个开发环节——测试。
你好,我是蔡元楠。
今天我要与你分享的主题是“如何测试 Beam Pipeline”。
在上一讲中,我们结合了第 7 讲的内容,一起学习了在 Beam 的世界中我们该怎么设计好对应的设计模式。而在今天这一讲中,我想要讲讲在日常开发中经常会被忽略的,但是又非常重要的一个开发环节——测试。
28 | 如何合理利用assert?
你好,我是景霄。
相信你平时在写代码时,肯定或多或少看到过 assert 的存在。我也曾在日常的 code review 中,被一些同事要求增加 assert 语句,让代码更加健壮。
前面我们通过两篇文章详细介绍了 Medooze 的实现逻辑,我相信你现在已经对 Medooze 有了非常深刻的认知。通过对 Medooze 实现原理和架构的了解,我们可以知道 Medooze 支持的功能非常多,如录制回放、推流、SFU 等,其中最主要的功能是 SFU 的实现。
你好,我是何为舟。
有一句话说“数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已”。这句话在风控系统中同样适用,因为风控系统本质上也是一个大数据分析系统。所以,收集更多的数据是提升风控能力的一项核心工作。
2017 年 9 月 13 日,苹果公司推出了新一代智能手机 iPhone X。相比于它的前辈们,iPhone X 的一项重要卖点就是引入了 Face ID 人脸识别技术,用户直接刷脸就可以解锁手机。虽然目前看来,Face ID 的识别率远没有苹果声称的那么“高精度”,但更加简单便捷的人脸识别无疑是未来的发展方向。而人脸识别乃至图像识别中的一项关键技术,就是卷积神经网络。
把一个大的单体应用拆分成多个微服务之后,每个服务都可以独立进行开发、测试和运维。但当拆分的微服务足够多时,却又仿佛陷入一个新的泥沼,无论是业务代码的开发还是测试和运维,工作量都比之前提升了很多。
28 | 新特性:Tomcat和Jetty如何处理Spring Boot应用?
为了方便开发和部署,Spring Boot 在内部启动了一个嵌入式的 Web 容器。我们知道 Tomcat 和 Jetty 是组件化的设计,要启动 Tomcat 或者 Jetty 其实就是启动这些组件。在 Tomcat 独立部署的模式下,我们通过 startup 脚本来启动 Tomcat,Tomcat 中的 Bootstrap 和 Catalina 会负责初始化类加载器,并解析 server.xml 和启动这些组件。
专栏上一期我介绍了三种不同类型的异地多活架构,复习一下每个架构的关键点:
关键在于搭建高速网络将两个机房连接起来,达到近似一个本地机房的效果。架构设计上可以将两个机房当作本地机房来设计,无须额外考虑。
无抵押贷款、校园贷、车贷、房贷甚至是裸贷,这些词估计你并不陌生,小广告上到处都能看到。极具诱惑的高额度和大优惠,让不少人心动不已,尤其那些有大事、急事要用钱的人,不少大学生也牵连其中。
28 | 怎么尽量“不写”代码?
最有效率的编码就是少编写代码,甚至不编写代码。前面,我们讨论过避免需求膨胀和设计过度,就是减少编码的办法之一。这一次,我们讨论代码复用的问题。商业的规模依赖于可复制性,代码的质量依赖于可复用性。