乐趣区

关于golang:第一期2022秋招区块链开发工程师技术面面经-欧科云链

欧科云链(OKEx)区块链工程院

(面后感触:OKEx 问的区块链的底层不多,大多是 Golang 开发的底层)

一面

  • 过程、线程、Goroutine 的比拟
  • GMP 模型
  • Golang Map 底层
  • 如何实现 Map 的有序查找(利用一个辅助 slice)
  • sync 包理解吗
  • Mutex 与 RWMutex
  • 怎么实现 Map 的并发平安 (sync.Map,底层实际上用了一个 Map 缓存)
  • Golang 的 channel 底层
  • defer 函数的应用场景(提早 Close、recover panic)
  • 简介所知的区块链的共识算法(PoW,PoS,DPoS,PBFT,Raft)
  • PBFT 与 Raft 的区别(拜占庭容错与解体容错)
  • 场景题:实现一个接口 C 在指定工夫内最大次数并发调用接口 A 与接口 B
  • MySQL 的 B + 树
  • 简略问了下 Solidity、我的项目
  • 反诘部门业务

二面

  • 简略聊了下我的项目与毕设
  • PBFT 算法底层(外围三阶段,preprepare、prepare、commit)
  • Raft 算法底层(领导者选举、日志复制)
  • Golang GC(三色标记法,插入屏障、删除屏障、混合写屏障)
  • Map 能够用数组作为 Key 吗(数组能够,切片不能够)
  • Channel 的阻塞和非阻塞(顺带问了 select 用法)
  • 介绍除了单例与工厂模式外的设计模式(消费者模式)
  • Redis 为什么快(内存数据库,单线程 IO 多路复用)
  • 介绍 Bloom filter 特点
  • 区块链里的 MT 与 MPT
  • 以太坊智能合约如何执行,介绍 EVM 底层
  • 算法:手撕快排
  • 聊区块链行业
  • 反诘

本篇面经中波及的面试题已收录进 GOLANG ROADMAP 企业题库(搜寻关注 wx-gzh:GOLANG ROADMAP),可查看面试题解析和参加探讨。

退出移动版