C/C++面试基础知识

如何定义一个只能在堆上(栈上)生成对象的类?

方法:将析构函数设置为私有

原因:C++ 是静态绑定语言,编译器管理栈上对象的生命周期,编译器在为类对象分配栈空间时,会先检查类的析构函数的访问性。若析构函数不可访问,则不能在栈上创建对象。

逻辑回归

Logistic Regression 虽然被称为回归,但其实际上是分类模型,并常用于二分类。Logistic Regression 因其简单、可并行化、可解释强深受工业界喜爱。

Logistic 回归的本质是:假设数据服从这个分布,然后使用极大似然估计做参数的估计。

线性回归

回归(regression)是能为一个或多个自变量与因变量之间关系建模的一类方法。 在自然科学和社会科学领域,回归经常用来表示输入和输出之间的关系。

Kubernetes 渐进式发布

Kubernetes 渐进式发布

通常渐进式发布包括:蓝绿发布、金丝雀发布。这篇文章对此做了详细介绍:

蓝绿部署中,一共有两套系统:一套是正在提供的服务系统,标记为”绿色”;另一套是准备发布的系统,标记为”蓝色”。两套系统都是功能完善的、正在运行的系统,只是系统版本和对外服务情况不同。 开发新版本,要用新版本替换线上的旧版本,在线上的系统之后,搭建了一个使用新版本代码的全新系统,这时候,一共有两套系统在运行,正在对外提供服务的老系统是绿色系统,新部署的系统是蓝色系统。

golang 性能优化工具

在 Golang 中,性能优化分析工具是定位瓶颈、优化代码的关键。以下是常用的工具及其使用场景和方法:


Go 内置的 pprof 包提供 CPU、内存、Goroutine、阻塞等维度的性能分析,支持可视化(火焰图、调用链)。