039_推荐的Exploit和Explore算法之一EE算法综述
072 | 推荐的Exploit和Explore算法之一:EE算法综述
上周,我们聊了一些比较高级的模型,包括张量分解和协同矩阵分解,讨论这些模型如何能够抓住更多的用户和物品之间的关系。最后,我们还讨论了如何优化更加复杂的目标函数。
072 | 推荐的Exploit和Explore算法之一:EE算法综述
上周,我们聊了一些比较高级的模型,包括张量分解和协同矩阵分解,讨论这些模型如何能够抓住更多的用户和物品之间的关系。最后,我们还讨论了如何优化更加复杂的目标函数。
前两讲,我们围绕着 npm 和 Yarn 的核心原理展开了讲解,实际上 npm 和 Yarn 涉及项目的方方面面,加之本身设计复杂度较高,这一讲我将继续讲解 CI 环境上的 npm 优化以及更多工程化相关问题。希望通过这一讲的学习你能够学习到 CI 环境上使用包管理工具的方方面面,并能够解决非本地环境下(一般是在容器上)使用包管理工具解决相关问题。
在上一讲中,我通过一个订单系统的示例,展示了 MyBatis 在实践项目中的基本使用,以帮助你快速上手使用 MyBatis 框架。在这一讲,我就来带你搭建 MyBatis 源码调试的环境,并为你解析 MyBatis 的源码结构,这些都是在为后面的源码分析做铺垫。
通过上一讲的学习,相信你已经掌握了响应式编程中的几个核心概念,即响应式流、背压机制以及响应式流规范,这些概念是理解后续课程内容的基础。
而在介绍基于 Spring 框架的响应式编程技术之前,你可能会有疑问:响应式编程能够应用到那些具体的场景呢?目前有哪些框架中使用到了这一新型的技术体系呢?这一讲我将为你解答这些疑问。
在第 02 课时,我们使用了 Netty 并配合 Java 8 中的 CompletableFuture 类,构建了一个完全异步执行的数据采集服务器。经过这种改造,CPU 和 IO 的使用效率被充分发挥出来,显著提高了服务器在高并发场景下的性能。
我们知道 ShardingSphere 是一种典型的客户端分片解决方案,而客户端分片的实现方式之一就是重写 JDBC 规范。在上一课时中,我们也介绍了,ShardingSphere 在设计上从一开始就完全兼容 JDBC 规范,ShardingSphere 对外暴露的一套分片操作接口与 JDBC 规范中所提供的接口完全一致。
人们常说,Java 是一种跨平台的语言,这意味着 Java 开发出来的程序经过编译后,可以在 Linux 上运行,也可以在 Windows 上运行;可以在 PC、服务器上运行,也可以在手机上运行;可以在 X86 的 CPU 上运行,也可以在 ARM 的 CPU 上运行。
程序员这个群体最开始被社会认知的时候,标签之一就是不善交流。慢慢地,“喜欢玩电脑,不喜欢和人交流”成了大家对程序员的一个刻板印象。作为程序员,我发现工作的时间越久,承担的责任越大,那么交流是一个越来越重要的能力。
在网络编程中,我们经常会提到 socket 这个词,它的中文翻译为套接字,有的时候也叫做套接口。
socket 这个英文单词的原意是“插口”“插槽”,在网络编程中,它的寓意是可以通过插口接入的方式,快速完成网络连接和数据收发。你可以把它想象成现实世界的电源插口,或者是早期上网需要的网络插槽,所以 socket 也可以看做是对物理世界的直接映射。
通过上一节课的学习,我们已经对 Kubernetes 的架构有了清楚的认识。但是到现在还没有和 Kubernetes 集群真正打过交道,所以你可能有一种“不识庐山真面目”的云里雾里的感觉。那么本节课,我们就来学习如何搭建 Kubernetes 集群,开启探索 Kubernetes 的第一站。