字节广告基础架构8.1一面

手撕,写一个程序判断是否为合法的ipv4地址

1.讲一下go网关的设计
2.网关设计的难点在哪,架构是如何考虑的
3.redis和MySQL的区别
4.redis的缺点
5.介绍下raft算法
6.为什么要同时用cpp和go各写一遍
7.go写起来感觉如何
8.是否有进行测试,测试结果如何
9.性能还可以如何优化
10.反问

总共1h,大部分时间都是我在输出,因为问题抛出来太大了,讲完喉咙难受,最后挂了,感觉是项目偏简单了,没啥兴趣#字节跳动# #大雨毁了我的体育梦#
全部评论

相关推荐

这是我目前最压力的一次面试开局三道手撕30min完成1.字符串中最长不含重复字符的子串长度2.最长连续子序列3.带优先级的括号匹配1.自我介绍2.用c++还是go多一点3.介绍一下智能指针4.unique指针如何实现资源转移5.move底层如何实现的6.三个智能指针的size(没回答上来,然后面试引导了)7.shared ptr内部如何实现的8.既然引用计数在堆上,那么指针的大小是多少,shared ptr内部几个指针9.讲一下虚函数和动态绑定10.构造函数能否为虚函数11.malloc分配的是物理内存还是虚拟内存12.什么时候会寻找物理内存13.malloc的原理,分配内存的一个过程,怎么找到需要的内存14.如何解决堆的内存碎片问题15.堆的内存块链表何时归还内存以及如何选择归还16.空class的size17.子类指针转为父类指针,指针值是否变化18.多继承的子类,内部内存空间如何分布19.子类指针转换为第一个父类或者第二个父类,进行等于判断,结果是ture还是false20.全局变量的初始化顺序21.讲一下io多路复用,select,poll,epoll的区别22.epoll是如何实现的23.线程和进程的区别24.多线程访问有什么问题25.互斥锁的底层原理26.内核态和用户态是什么,如何理解27.用户态如何切换到内核态28.介绍一下虚拟地址29.函数的参数是如何压栈的,按什么顺序30.函数的返回值保存在哪31.函数执行前需要做哪些工作32.main函数执行前会发生什么33.红黑书和hash_map的区别34.哈希会发生什么问题,如何解决35.介绍自己最熟悉的项目(我选的是im)36.消息是服务器发给用户还是网关37.用户增多会不会导致阻塞38.线程池具体如何实现的39.你的qps实际上不高,如何扩大qps(我答的扩容,负载均衡,用协程)40.协程是如何实现的,跟线程有什么区别41.介绍一下gmp42.问开发机情况(3g4核心),能运行多少个线程43.反问整个面试持续了1h40min,面完直接虚脱了,不愧是wxg,但是面完不久官网秒过了,可惜最后倒在了二面
点赞 评论 收藏
分享
评论
3
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务