Skip to content

QinZhanlong/go-interview

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 

Repository files navigation

Golang 面试资料

序言

整理golang基础知识及linux、后端开发相关面试资料。

声明:未经许可,禁止原文转载。

目录

golang


数据类型

  • string
  • slice

reslice

struct

内存分配

分配器

内存分配扒得干干净净

图解内存管理

内存管理分析

变量分配到哪里

内存逃逸

内存分配(性能优化)

本地内存

调度器

调度

  • 垃圾回收

Go垃圾回收、三色标记原理

白话Go的垃圾回收原理

漫画

GC 20问

并发模型

流水线模型

golang 5种原子操作

单元测试

详解

手把手教你如何进行 Golang 单元测试

压测

误区与实践

最佳实践

Go Test小技巧

调试

golang 调试分析的高阶技巧

如何保留 Go 程序崩溃现场

开源库

go-zero

go-zero追踪

jupiter

别人代码学习golang

分布式事务(dtm)

会话控制

解读Zap的高性能

http 重试

micro
(一):入门 https://medium.com/@dche423/micro-in-action-getting-start-cn-99c870e078f 

(二):项目结构与启动过程 https://medium.com/@dche423/micro-in-action-part2-cn-9bbc33d356eb 

(三):调用服务 https://medium.com/@dche423/micro-in-action-call-service-cn-5ac679194636 

(四):Pub/Sub https://medium.com/@dche423/micro-in-action-pub-sub-cn-ce010bffe1c 

(五):Message Broker https://medium.com/@dche423/micro-in-action-5-message-broker-d975c2f28a55 

(六):服务发现 https://medium.com/@dche423/micro-in-action-6-service-discovery-cn-c13c3e3829d 

(七):熔断与限流 https://medium.com/@dche423/micro-in-action-7-cn-ce75d5847ef4 

(尾声): 分布式计划任务 https://medium.com/@dche423/micro-in-action-9-cron-job-dabec09058e1

gin

https://mp.weixin.qq.com/s/935NOIg4GzRsupZefwqWeA

规范

uber代码规范

go-advice

代码结构

浅谈如何组织Go代码结构

编程模式

热重启

性能优化

高阶调试技巧

pprof

Profiling 在微服务应用下的落地实践

Go 应用优化指北

Context这三个应用场景

Context包详解

一套优雅的 Go 错误问题解决方案

错误处理的一些建议

22条API设计的最佳实践

google最佳实践


linux

操作系统

内核图解

基础概念

如何写出让CPU跑的更快的代码

读取文件发生了什么

CLOSE WAIT

epoll

Linux epoll惊群问题

负载均衡

eBPF

深入理解netfilter框架

深入理解Linux IO模型

同步?异步?阻塞?非阻塞?多路复用?

nginx

入门知识

日志配置

高可用


网络知识

基础知识

基础知识2

详解网络基础知识

Linux网络IO精华指南

字节实践

网络协议面试

TLS

TLS/SSL

文件上传

文件断点续传

常见网络编程面试题

面试题集锦

SSH

TCP

必备知识点

三次握手

三次握手2

23个问题

问题排查1

粘包处理

keep-alive keepalive

IO多路复用

IO多路复用2

最大并发数

HTTP

http.client 源码剖析

缓存机制

谈谈Http

一个故事看懂HTTPS

Grpc

超时传递原理

gRPC 基础概念详解

Websocket

websocket

分布式解决方案


数据库

基础知识

索引

分库分表

24个面试题

拓展字段设计

redis

内存模型

Redis 竟然浪费了这么多内存

优化

开发规范

主从服务机制

redis cluster原理

Redis缓存雪崩

客户端缓存

缓存更新

数据同步

为什么这么快

为什么这么快2

集群搭建总结

缓存设计的好,服务基本不会倒

面试题1

缓存一致性

mongo

B/B+树

原子性

技术从0到1

文件存储

优化指南

优化指南2

Mysql

优化原理剖析

SQL 查询并不是从 SELECT 开始的

mysql技术内幕笔记

mysql面试题


消息队列

Kafka

面试角度学Kafka

Kafka的存储架构

rabbitmq

延时队列

复习精讲

消息投递

消息幂等

消息队列选型分析

设计难题

写个消息中间件

面试连环问

解决消息队列的数据积压问题

消息队列背后的设计思想


ElasticSearch

入门

入门2

原来 Elasticsearch 还可以这么理解

常见错误及最佳实践

优化实战

优化实战2


prometheus

深入理解prometheus


微服务

api 设计

为什么我使用 GraphQL 而放弃 REST API

Spring GraphQL

OAuth

OAuth2

第三方账号登陆


数据结构

红黑树

红黑树图解

跳跃表


高可用

高性能

熔断

面试1


算法

链表题

限流

限流2

raft

图解raft

约瑟夫环

雪花算法

一文搞懂一致性hash的原理和实现


加密

常见加密算法


设计模式

go设计模式代码实现

go设计模式

图解9种常见设计模式

23 种设计模式的通俗解释,虽然有点污,但是秒懂

图文详解 23 种设计模式

通俗解释

mybatis中的9种


代码质量

如何提高代码的可读性


学习之路


一致性

一致性哈希

面试1


乐观锁与悲观锁

锁的应用场景


模型

常见登录鉴权

权限设计

分布式session

多租户

腾讯网关

依赖注入

连接池

链路追踪

GraphQL

数据中台

推荐系统

稳定性规范

优雅向前兼容

微服务架构中10个常用的设计模式


kubernetes

入门

Kubernetes如果是个水族馆!

Kubernetes原理

对象

14个Kubernetes必备基础

干货文章100

pod 入门指南

pod创建

大白话告诉你到底用不用学习这该死的Kubernetes容器化

部署debug

[Envoy VS Traefik

4 种常用的 Kubernetes 容器

运维锦囊,19个K8S日常故障处理解决方案

Envoy 几种负责均衡算法

最佳实践

最简单的 K8S 部署文件编写姿势,没有之一!

入门实战

50个面试问题

CI/CD

工具


IM

微信、陌陌等著名IM软件设计架构


Istio

简介


运维

CI/CD

Devops

72 个网络应用安全实操要点,全方位保护你的 Web 应用

监控

监控告警

监控体系

监控工具

prometheus微服务监控

基于 Prometheus、InfluxDB 与 Grafana 打造监控平台


面试题

简历与项目介绍

面试1

面试2

面试3

面试4

golang 50问

八股文

About

golang 面试总结

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published