面经详情

Golang面试一般,共1轮面试
  • 设计一个作业系统,该系统需要控制10000台机器都运行某个脚本,每个机器上都装有该系统的agent,请大致描述该系统的架构。 现需要对nginx日志进行分析,需要对日志进行转储分析,请问如何实现。 
Q:追问1: 在读取日志过程中,日志名可能会发生变化,请问如何处理追问
  • 对于数据竞争问题,如何处理可采用硬指针指向日志文件,并采用事件机制(inotify)对文件进行监听,当有新行写入时进行读取。当日志位置与文件名发生变更时,如何检查变更前后的文件是否为同一个文件?可采用对比inode和文件前n行的方法,由于前n行可能过长,因此可对其进行hash,对比hash过后的值与inode。 
  • 有x台机器,要将其均匀的分散到2个城市,城市之间机器数相差不大于1,请问如何实现 
Q:追问1: 如果有3个城市,如何实现
Q:追问2: 如果有x个城市,如何实现 
  • 设计一个算法对1000亿次调用进行身份去重,用户数为6亿,内存限制512M.
  • 你之前读过哪些计算机领域的经典书籍,你能说出几本对你影响比较大的书吗?

相关推荐

进入微信小程序

前往微信小程序,查看更多结果

立即前往
看准网千寻位置千寻位置面试经验千寻位置面试经验:Golang面试一般,共1轮面试
正在招聘研发项目经理61 个岗位