RESTful调用和 RPC调用有什么区别?如果让你设计一个RPC服务治理框架你会设计那些模块?是否了解过Service Mesh,如果了解Service Mesh是用来解决什么问题的?

RESTful是一种软件架构风格,用于约束客户端和服务器交互,满足这些约束条件和原则的应用程序或设计就是 RESTful。比如HTTP协议使用同一个URL地址,通过GET,POST,PUT,DELETE等方式实现查询、提交、删除数据。RPC是远程过程调用,是用于解决分布式系统服务间调用的一种方式。RPC采用客户端与服务端模式,双方通过约定的接口(常见为通过IDL定义或者是代码定义)以类似本地方法调用的方式来进行交互,客户端根据约定传输调用函数+参数给服务端(一般是网络传输TCP/UDP),服务端处理完按照约定将返回值返回给客户端。
RPC服务治理我没用过……,用的是基于http协议的spring cloud
重点为RESTful HTTP的约束风格,RPC调用模型。
1、可分为两大部分RPC +服务治理
RPC部分 = IDL +客户端/服务端实现层 +协议层 +数据传输层
服务治理 =服务管理(注册中心) +服务监控 +服务容灾 +服务鉴权
所以如果说是服务治理的话,那就是
注册中心eureka
监控 Nacos
容灾:生产者熔断+消费者降级 hystrix
客户端负载均衡Ribbon
远程调用Feign
2、 Service Mesh为了解决传统微服务框架"胖客户端"方式,引入的如下问题:
与业务无关的服务治理逻辑与业务代码强耦合,框架、SDK的升级与业务代码强绑定,多语言的胖客户端支持起来性价比极低。

请描述避免多线程竞争时有哪些手段?

我第一眼看这个题以为是要问如何去消除多线程,在宏观架构上说的……,看来是不对

  1. 不可变对象;final
  2. 互斥锁;
  3. ThreadLocal 对象; 用于对象是线程中的所私有的的,而不是多个线程所共有,需要保持一致的
  4. CAS;Compare and swap 小心aba问题

n度好友

我的思路:大概就是广度遍历,遍历到6层的时候结束
int count = 0;
Deque deque = new LInkedlist<>();
Set set = new HashSet<>()
Deque tmp = new LInkedlist<>();
deque.pollLast(“xiaomei”);
while deque.size()!=0
根据图的构造,遍历它附近的节点
如果该节点没有在set中
将该节点保存到tmp deque和set中
找完所有节点之后,deque=tmp count++
如果现在count==6,break
输出deque的前十个节点即可

请简述HTTP的5个常用Method及其含义,以及5个常用Status Code及其含义?HTTP与HTTPS的区别是什么,简述一下HTTPS的实现原理。

区别:
端口:http80端口 http是443端口
速度:http稍快
认证:http是会有认证步骤
安全性:https安全性好
https实现原理:
1.客户端发送建立连接请求
2服务器收到之后,将证书和公钥发送给客户端
3.客户端收到之后,验明证书真伪,然后将自己的对称加密秘钥使用公钥加密之后发送给服务器
4.服务器收到之后,使用私钥解密,并且使用对称加密秘钥加密内容
开始握手,传输,挥手,结束

404 页面不存在
200 请求成功
500 服务器内部错误
400 bad request
403 forbidden
我这个Method理解错了啊……我以为是要说HttpRequest类有什么方法呢,不是的啊,是METHOD,RestFul里面的那个METHOD
get 从服务器端获取资源
put 提交资源
post 更新资源
delete 删除资源
connect 建立tunnel隧道

给出一个布尔表达式的字符串,求值

这个就是用栈处理 and 优先级高,所以如果遇到and直接计算,然后最后栈里就剩下 true false or,计算即可,如果哪里有格式不符 error

带有?和*的模式串匹配

看到有使用回溯做的,但是动态鬼狐好像更好一点……

打车派单

打车派单场景, 假定有N个订单, 待分配给N个司机。每个订单在匹配司机前,会对候选司机进行打分,打分的结果保存在N*N的矩阵A, 其中Aij 代表订单i司机j匹配的分值。
假定每个订单只能派给一位司机,司机只能分配到一个订单。求最终的派单结果,使得匹配的订单和司机的分值累加起来最大,并且所有订单得到分配。

回溯或者动态规划

分片段

2110年美团外卖火星第3000号配送站点有26名骑手,分别以大写字母A-Z命名,因此可以称呼这些骑手为黄家骑士特工A,黄家骑士特工B…黄家骑士特工Z,某美团黑珍珠餐厅的外卖流水线上会顺序产出一组包裹,美团配送调度引擎已经将包裹分配到骑手,并在包裹上粘贴好骑手名称,如RETTEBTAE代表一组流水线包裹共9个,同时分配给了名字为A B E R T的5名骑手。请在不打乱流水线产出顺序的情况下,把这组包裹划分为尽可能多的片段,同一个骑手只会出现在其中的一个片段,返回一个表示每个包裹片段的长度的列表。

滑动窗口,双指针,去确保没有字母出片段

火星词典

已知一种新的火星文的单词由英文字母(仅小写字母)组成,但是此火星文中的字母先后顺序未知。给出一组非空的火星文单词,且此组单词已经按火星文字典序进行好了排序(从小到大),请推断出此火星文中的字母先后顺序。
构造一个字符的有向无环图,再找拓扑序列

美团2020后台秋招笔试整理相关推荐

  1. 美团点评2017秋招笔试编程题

    美团点评2017秋招笔试编程题 1, 大富翁游戏,玩家根据骰子的点数决定走的步数,即骰子点数为1时可以走一步,点数为2时可以走两步,点数为n时可以走n步.求玩家走到第n步(n<=骰子最大点数且是 ...

  2. 2020斗鱼秋招笔试记录

    斗鱼秋招-算法工程师(移动开发部) 2019/8/20 单选10-多选3–判断-简答3 单选: 1,在点集拓扑学与欧几里得空间中,凸集(convex set)是一个点集合,其中每两点之间的直线点都落在 ...

  3. 【面试题记录】2020前端秋招笔试面试题目记录

    笔试题记录 1. 空元素 Empty Element (滴滴笔试) 空元素是HTML/SVG里的不可能存在子节点的元素. 个人理解就是:自闭和标签 HTML中的空元素: <br/> < ...

  4. 美团点评2017秋招笔试真题-安全工程师卷

    1.Webview远程代码执行漏洞曾经危害甚广,Android4.3以下的版本仍可能受此漏洞影响.webview漏洞除用户自己注册的接口外,Android系统本身也存在一些隐藏接口,下面哪一个不属于系 ...

  5. 2020快手秋招笔试记录

    题型 选择(20)+编程4 1,梯度下降算法的正确步骤是什么? a.用随机值初始化权重和偏差 b.把输入传入网络,得到输出值 c.计算预测值和真实值之间的误差 d.对每一个产生误差的神经元,调整相应的 ...

  6. 美团2023届秋招第一场笔试记录2022年8月6日

    美团2023届秋招笔试记录 笔试之后总结记录的一些题解,并不能保证全部AC 编程题1-小美的礼盒包装AC? 题目描述 小美开的西点屋子举办一周年活动,她准备制作一批礼盒作为对消费者的回馈,每个礼盒中都 ...

  7. 春招秋招笔试面试时间(2020年)

    春招面试笔试时间 序号 公司 投简历时间 春招笔试面试时间 1 腾讯 2020.3.10 3.17一面(微信) 3.20一面(网盘) 4.7 PCG的研发部 4.12光子侧开一面 4.18光子侧开二面 ...

  8. 2019年字节跳动2020届秋招在线笔试真题(后端开发工程师)

    2019年字节跳动2020届秋招在线笔试真题(后端开发工程师) 第一题 第二题 第三题 第四题 第一题 第二题 第三题 第四题 字节跳动的题,对于我这个菜鸟来说确实很难,对一半都做不到.还得继续努力啊 ...

  9. 快手2020校园招聘秋招笔试--算法B试卷

    四个编程题总体算比较简单,基本都在LeetCode出现过.但是我的速度太慢了,还要加油啊ヾ(◍°∇°◍)ノ゙ 牛客快手2020校园招聘秋招笔试–算法B试卷 合法数独 给定一个数独板的输入,确认当前的填 ...

最新文章

  1. [转载]INF文件格式说明
  2. Leetcode--671. 合并二叉树
  3. 什么样的企业适合做响应式网站
  4. 微信小程序入门第一天
  5. 图片复印如何去除黑底_身份证复印机中间有黑线怎么办
  6. 【乐理知识】第二章 音符 休止符
  7. Linux下进行源码安装时如何避免找不到那些使用--prefix指定目录安装的依赖
  8. MySQL备份与恢复-innobackupex
  9. 用Python画一个时钟---简易版
  10. Linux 系统批量安装字体的方法
  11. 读书笔记|《金字塔原理》第三章
  12. irobot擦地机器人故障_不想跪下擦地板!iRobot新神器擦地机器人能否帮到你?
  13. install报Failed to execute goal on project xxx: Could not resolve
  14. 【裴蜀定理】CF1055C Lucky Days
  15. Unity案例---愤怒的小鸟
  16. 基于java的SCADA系统_基于普通PC的SCADA系统
  17. Unity 如何在程序中发送Email邮件
  18. OSX: iWorm从何而来?
  19. Sqlserver alter增加列后列名无效
  20. 中国科学院大学计算机复试考什么区别,中国科学院大学考研复试流程及经验分享...

热门文章

  1. Python - 为什么没有常量?
  2. 学会了C语言/C++能做什么?让我来告诉你吧!
  3. FPGA知识汇集-关于Xilinx 工具报告
  4. python 字节流分段_一文掌握CTF中Python全部考点
  5. OpenCV学习 查表函数LUT C++
  6. 课程php家长互助,智慧陪伴在路上 ——2019年雁阵飞家长互助组织领头雁培育培训心得...
  7. matlab静力学实例,AnsysWorkbench静力学分析详细实例.pdf
  8. HTML5系列代码:把一篇文章分成多列显示
  9. linux命令英文缩写的含义(方便记忆)
  10. Android5.1源码改变USB连接方式