泰安非常有意义的一次面试(记录一下)

2023-06-16 08:35:21   2025-02-09 11:12:57   其他   126 views  

 

开头自我介绍,因为项目涉及了物联网硬件有一些获取设备信息的方式和MQTT,只记得他描述了我调用物联网设备的过程,设备把信息发送到网卡,通过网卡上传到云端,然后我利用api调用云端获取相关信息。直接跟设备沟通可以使用MQTT或者socket。剩下的没太记清就略过了

后期问到SaaS做数据隔离,正常逻辑都是使用表然后关联字段,通过某个id获取相关信息。

而真正的SaaS系统做数据隔离大多数采用Redis、MongoDB等非关系型数据缓存方式进行存储。主要原因查询关系型数据库与非关系型数据库的区别。在效率上相差很大,所以非关系型数据库做数据隔离更实用。

关于秒杀设计等问题

秒杀特别涉及超卖问题上并不是只用redis就能解决,要结合各种锁,以及其他一些技术,轻易不要只了解redis就在项目上加秒杀。

关于高并发问题

我描述了前段时间高并发好文分享里面的架构。面试官详细问了我什么是分布式。在以前看很多文章都是描述将一套代码部署到多台服务器,以为这就是分布式。面试官告诉我这只是负载均衡的一个方案。分布式也可以叫分步式,将一个主要业务逻辑进行拆分。比如一个秒杀。第一步拆分为获取资源,获取资源又可以拆分为获取静态资源以及商品信息。第二步拆分为抢,也就是数据库写的步骤。第三步拆分为返回结果。而负载均衡怎么做效果最好,不一定均分每个请求,而是香港的用户访问香港的服务器,北京的用户访问北京的服务器,这样的效率更高。

关于三级分销问题

面试官说:我看你这里有个三级分销,你知道会员三级分销意味着什么吗?(三级分销就意味着你要开始进行涉足灰黑地带了)我做四级分销会怎么样?你能设计一个四级分销的架构吗?

我说:四级分销不就是违法了吗,那不是成传销了么?

面试官说:其实四级分销以及往下的分销,只要你合理上税,其实并不违法。比如我们生活中的保险可不止三级,比如省1代、省2代、市1代、市2代、到最后的维修部,4S店,中间有很多级的,再比如福彩体彩以及奶站,他们之中的任何一个都是超过三级的。而对于传销定义,在于你销的东西是什么,如果你是有实际意义的东西,那就是没问题的,如果是没有实际意义的东西超过三级,那就是传销。传销做这些分销架构不严谨的第一个抓的就是法人然后就是技术总监。当然也能合理的进行四级分销以及更多分销的设计来规避一些风险。

你可以第一级设置一个虚拟总代,二级为二级代理,三级为三级代理,到了第四级只是跟前三级有一定的发展关联关系,但是他直属于虚拟总代。三级之上的佣金正常分佣即可,三级之后的则全部直属虚拟总代管理,而佣金分发由虚拟总代收取管理,以奖金或者红包的方式进行“奖励”分发。