记录一下实习的第一次线下面试的答辩经历,关于seata|sentinel,gateway与栈
面的一家小公司,他们准备做单体架构升级到微服务,所以问了我一些微服务相关的东西。回答的依托答辩,今天回想起来记录一下我造出来的笑话,正常的就不写在这里了。
首先我简历上大部分写的是熟悉,只有微服务写的是了解,还问了不少微服务的
1.谈谈seata:
这里我和sentinel记混了,妈的。我还说seata用于限流,熔断,隔离。我还记得这玩意有四个功能,另一个实现想不起来了
补正:
seata是用于分布式事务的,用SQL持久化存储,在nacos上进行添加共享配置。分为XA模式和TA模式
XA模式是:ACID,实现简单;但是开销大
1.RM资源管理器注册分支事务,然后执行分支的SQL,但是不提交,向TC事务协调者报告
2.TC检测各分支的执行状态,有错误就回滚,没有才统一提交,然后通知RM进行提交或回滚
AT模式:解决了XA模式的问题,但是会有短暂不一致问题
1.RM注册分支事务,记录undo-log快照,然后提交业务SQL,上报
2.如果需要回滚就根据快照恢复,不需要就直接删除undo-log即可
2.说说gateway的功能:
这里我说的是设置了一个统一接口,能够所有人都请求一个地址。感觉就像线程和进程的关系,(当时是后一天就要考操作系统,在刷操作系统的知识点)。至少这里把最主要的说出来了没说歪
补正:
gateway的主要功能为:
1.统一路由 2.支持熔断限流操作 3.路由策略灵活,而且支持动态配置
后续想起来再补充
3.我看你写了数据结构,我就挑一个考你吧,讲讲栈
这里我正好昨天给同学看了一个四则运算的题目,对栈还有点印象,脱口而出:先进先出。后面经过短暂的反应之后我发现不对,我又说啊不对,那个是队列,栈是先进后出。面试官和我尴尬一笑。我胡言乱语了一会,他又问:嗯。。这样吧,你讲讲你在实际应用中怎么用栈。我如实回答:实际应用中没有用过栈,这个我只是在刷leetcode的时候用了,就刷那些算法用
补正:
实际应用中栈的应用场景:数据的事务处理,回滚时会在最近顺序挨个回滚,保证了事务的原子性和一致性。递归操作时会使用栈。常见的undo操作中也一般都是用栈来实现的
4.问的项目,我看你也用MQ,你这个XX项目是怎么使用的MQ。
当时脑子犯浑,加上一个月没看自己写的简历,忘了自己写的什么吊玩意。
我说我只用了MQ做定时任务,用他那个死信队列。
面试官愣了一下,又问我,你这个项目里只用了定时任务对吗?我当时想都没想:是的,只用了这个。
后来面完了我才知道,我简历上写的使用rabbitMQ实现了elasticsearch的延时双写,保证了数据的一致性。当时做那个项目想是比赛用,也不太需要这些功能,其实我的实际项目还没用MQ,最近两天又补上的延时双写功能
记录一下实习的第一次线下面试的答辩经历,关于seata|sentinel,gateway与栈的更多相关文章
- 关于一次Web线下面试的思考
前言: 今天面试一家Web前端的公司,由于跟初筛的面试官关系挺好,按理来说我在第一次线上面试就应该被淘汰了(呜呜呜),接下来是线下面试,不出意外的话,我凉了.但是这些天的面试经验并非全无收获.我的线下 ...
- SQL Pass北京举行2014年第一次线下活动
地点:北京微软(中国)有限公司[望京利星行],三层308室 时间:2014年 3 月15日 13:30-16:30 SQL PASS 北京QQ群号:2435349 报名地址:http://1drv.m ...
- 肖sir__网页线下面试
第一题: 设计一下两个两位数相加的测试用例,说只能写数字不要写文字 第二题 淘宝订单怎么测试 功能测试: 1.测试订单输入的类型 2.测试金额数量:可创建等价类划分 3.测试库存数量变更 4.测试订单 ...
- 此文记录了我从研二下学期到研三上学期的找工历程,包括百度、腾讯、网易、移动、电信、华为、中兴、IBM八家企业的面试总结和心得--转
感谢电子通讯工程的研究生学长为大家整理了这么全面的求职总结,希望进入通信公司和互联网公司做非技术类岗位的学弟学妹们千万不要错过哦~ ---------------------------原文分割线-- ...
- 面渣逆袭:Redis连环五十二问,图文详解,这下面试稳了!
大家好,我是老三,面渣逆袭系列继续,这节我们来搞定Redis--不会有人假期玩去了吧?不会吧? 基础 1.说说什么是Redis? Redis是一种基于键值对(key-value)的NoSQL数据库. ...
- 合肥.NET技术社区首次线下聚会全程回顾【多图】
2019年3月16日对于合肥.NET来说是一个特别的日子,因为这是合肥.NET技术社区首次非正式线下聚会!这次聚会受场地限制(毕竟是聚餐的形式),即使换成了小椅子后,最多也只能容纳24个人,所以还有一 ...
- 推荐系统resys小组线下活动见闻2009-08-22
http://www.tuicool.com/articles/vUvQVn 时间2009-08-30 15:13:22 不周山原文 http://www.wentrue.net/blog/?p= ...
- 这个立冬,我线下面基了一位TMD高级专家,太牛逼了!
立冬刚过,迎面而来的是一股寒气.天气如此,市场亦是如此.昨天周五,和1个认识的技术专家老刘约饭,也算是线下面基,增进感情.每年我都要向比我高阶的朋友讨教.不由自主聊到了他的职场生涯.鱼哥一直以为自己命 ...
- CTF线下awd攻防文件监控脚本
CTF线下awd攻防赛中常用一个文件监控脚本来保护文件,但是就博主对于该脚本的审计分析 发现如下的问题: 1.记录文件的路径未修改导致log暴露原文件备份文件夹:drops_JWI96TY7ZKNMQ ...
- 【Alpha阶段】第一次线上会议
会议信息 因编译作业ddl,暂时没有大进展,没有close的issue 时间:2016.11.07 19:00 时长:10min 地点:讨论组 类型:线上会议 NXT:2016.11.08 21:30 ...
随机推荐
- c# 32位程序突破2G内存限制
起因在开发过程中,由于某些COM组件只能在32位程序下运行,程序不得不在X86平台下生成.而X86的32位程序默认内存大小被限制在2G.由于程序中可能存在大数量处理,期间对象若没有及时释放或则回收,内 ...
- C#WPF的多屏显示问题
如果想让窗口在第二个屏幕中显示 public MainWindow() { InitializeComponent(); Screen[] _screens = Screen.AllScreens; ...
- docker创建容器数据持久化资源限制基础命令
1. docker简介和核心概念 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化.容器是完全使 ...
- TIM_Cmd()函数引发的思考
在使用定时器的输入捕获进行频率测量时发现用TIM_Cmd()函数关闭定时器后,输入捕获中断还是会被触发,这就很奇怪了,输入捕获是定时器的一种模式,关闭定时器不就意味着输入捕获捕获也被关闭了吗?可是实际 ...
- 规则引擎easyRules中组合规则的使用
这两天想要做支付路由,要根据支付信息将支付请求转发到不同的支付渠道,可能要用到规则引擎,于是研究了一下开源的规则引擎产品.规则引擎核心知识与开源产品对比选型 ,这篇文章对规格引擎和开源产品有详细的介绍 ...
- itest(爱测试) 4.5.5 发布,开源BUG 跟踪管理 & 敏捷测试管理&极简项目管理软件
itest 简介 itest 开源敏捷测试管理,testOps 践行者,极简的任务管理,测试管理,缺陷管理,测试环境管理4合1,又有丰富的统计分析.可按测试包分配测试用例执行,也可建测试迭代(含任务, ...
- vim 多文件编辑
使用vim打开多个文件 vim可以同时打开好几个文件同时进行编辑 [root@localhost opt]# vim ip.txt time.txt 2 files to edit ens32: fl ...
- vue3项目安装依赖报错 npm ERR! code ERESOLVE
vue3项目安装依赖报错 npm ERR! code ERESOLVE npm ERR! ERESOLVE could not resolve npm ERR! npm ERR! While reso ...
- 剑指Offer-62.二叉搜索树的第k个结点(C++/Java)
题目: 给定一棵二叉搜索树,请找出其中的第k小的结点.例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4. 分析: 二叉搜索树的中序遍历结果正好是按数值升序排列的结 ...
- PB通过OLE方式调用C#.NET DLL时,DLL获取自身根目录
PB通过OLE方式调用C#.NET DLL时, DLL获取自身根目录 System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExe ...