10__I_O优化(中):不同I_O方式的使用场景是什么?

今天是 2019 年的第一天,在开始今天的学习前,先要祝你新年快乐、工作顺利。

I/O 是一个非常大的话题,很难一次性将每个细节都讲清楚。对于服务器开发者来说,可以根据需要选择合适的文件系统和磁盘类型,也可以根据需要调整内核参数。但对于移动开发者来说,我们看起来好像做不了什么 I/O 方面的优化?

10__Java对象的内存布局

在 Java 程序中,我们拥有多种新建对象的方式。除了最为常见的 new 语句之外,我们还可以通过反射机制、Object.clone 方法、反序列化以及 Unsafe.allocateInstance 方法来新建对象。

10__Java线程(中):创建多少线程才是合适的?

在 Java 领域,实现并发程序的主要手段就是多线程,使用多线程还是比较简单的,但是使用多少个线程却是个困难的问题。工作中,经常有人问,“各种线程池的线程数量调整成多少是合适的?”或者“Tomcat 的线程数、Jdbc 连接池的连接数是多少?”等等。那我们应该如何设置合适的线程数呢?

10__JIT编译器的死穴:为什么要避免使用_NYI_?

你好,我是温铭。

上一节,我们一起了解了 LuaJIT 中的 FFI。如果你的项目中只用到了 OpenResty 提供的 API,没有自己调用 C 函数的需求,那么 FFI 对你而言并没有那么重要,你只需要确保开启了 lua-resty-core 即可。

10__KafkaApis:Kafka最重要的源码入口,没有之一

你好,我是胡夕。今天,我们来收尾 Kafka 请求处理模块的源码学习。讲到这里,关于整个模块,我们还有最后一个知识点尚未掌握,那就是 KafkaApis 类。

在上节课中,我提到过,请求的实际处理逻辑是封装在 KafkaApis 类中的。你一定很想知道,这个类到底是做什么的吧。

10__Kubernetes一键部署利器:kubeadm

你好,我是张磊。今天我和你分享的主题是:Kubernetes 一键部署利器之 kubeadm。

通过前面几篇文章的内容,我其实阐述了这样一个思想:要真正发挥容器技术的实力,你就不能仅仅局限于对 Linux 容器本身的钻研和使用。

10__lambda:函数式编程带来了什么?

你好,我是 Chrono。

在第 1 节课的时候,我就说到过“函数式编程”,但只是简单提了提,没有展开讲。

作为现代 C++ 里的五种基本编程范式之一,“函数式编程”的作用和地位正在不断上升,而且在其他语言里也非常流行,很有必要再深入研究一下。

10__MVC架构解析:控制器(Controller)篇

你好,我是四火。

今天我们继续学习 MVC 架构,主要内容就是 MVC 架构的第三部分——控制器(Controller)。

控制器用于接收请求,校验参数,调用 Model 层获取业务数据,构造和绑定上下文,并转给 View 层去渲染。也就是说,控制器是 MVC 的大脑,它知道接下去该让谁去做什么事。控制器层是大多数 MVC 框架特别愿意做文章的地方,我相信你可能耳闻、了解,甚至熟练使用过一些 MVC 框架了。

10__MySQL为什么有时候会选错索引?

前面我们介绍过索引,你已经知道了在 MySQL 中一张表其实是可以支持多个索引的。但是,你写 SQL 语句的时候,并没有主动指定使用哪个索引。也就是说,使用哪个索引是由 MySQL 来确定的。

10__OKR评估没你想象的那么难,其实你可以这么做!

你好,我是黄勇。在上两讲中,我分别讲解了制定 OKR 的技巧和如何推动团队高效执行 OKR,今天我所讲的恰好承接上两讲的内容,我们来聊聊 OKR 的评估问题。

当你看到评估、评价、评审、评分、Review 等这类词时,你的感受如何?比如,提到“绩效评估”,你一定会想到,这是领导在给你打分;再比如,提到“代码评审”,你一定也会想到,这是同事在你的代码中找出了不符合规范的代码。