作者:KamiaMirage
链接:https://www.nowcoder.com/discuss/334052?type=2&order=3&pos=34&page=1
来源:牛客网
千篇一律的自我介绍和寒暄就省略了,……
主要还是技术栈和项目的结合。
简历上毕竟写了微服务和分布式相关,(当然这也是为了迎合招聘启事要求嘛),所以目标的博弈放在了项目经验分布式技术栈。
你了解MySQL引擎?---------------主要的两种ISAM和InnoDB。ISAM是索引序列访问,所以数据库被查询的次数大于更新次数的场景下更实用,缺点就是不支持事务,不能够容错,所以使用的时候必须经常备份。MyISAM是ISAM的扩展格式,加入了表格锁定的机制,来优化多个并发读写操作。使用该引擎会生成三个文件:.frm表结构信息;.MYD数据文件;.MYI表的索引信息。 InnoDB包含了对事务处理和外来键的支持……。
关于操作存储引擎的命令?--------------查看数据库支持的存储引擎:show engines 查看数据库当前使用的存储引擎:show variables like '%storage_engine%' 或者数据库中的配置文件。查看数据库表所用的存储引擎:show create table table_name。创建表指定存储引擎:create table table_name(column_name column_type)engine=engine_name。修改表的存储引擎:alter table table_name engine=engine_name。修改默认的存储引擎: 修改配置文件window下my.ini, Linux下my.cnf default-storage-engine=INNODB
关于索引的管理?--------------创建、查看、删除等相关操作的命令……
对于MySQL中的SQL常见的优化策略?--------避免全表扫描where或者order by涉及的子句列上建立索引,……这个具体在关键字上的子句找相关资料吧……
聊项目,dubbo的应用架构和传统架构的拆分、异同、改造、部署环境的规划……----------------略
谈一下对dubbo的认识和使用场景?-----------说白了就是谈谈为什么项目要引入dubbo这么个组件。可以从分布式业务中的远程调用的技术瓶颈来阐述,dubbo和spring框架配合搭建一个RPC服务框架,替代F5等硬件负载均衡器,服务自动注册与发现,注册中心基于接口名查询服务提供者的IP地址。……
dubbo的核心功能?------远程网络通信,服务架构基于接口方法的透明远程调用,基于注册中心目录服务……
dubbo的核心组件?服务注册与发现流程?-------Provider暴露服务提供方,Consumer调用远程服务的消费方,Registry服务注册于发现的注册中心,Monitor统计服务的调用时间,Container服务运行容器。最好画个草图来阐述……
dubbo和springclond的架构区别和优劣?----------dubbo架构上,上面已经说明了。对于SpringCloud架构的注册中心为Eureka Server,springcloud除了实现服务治理还覆盖了其他组件功能,论功能范围springcolud更胜一筹。协议方面,dubbo使用RPC通讯协议,Springcloud使用了HTTP协议中的REST API……
你了解哪些消息中间件?--------既然引入了消息队列,那肯定要对市面上的一些中间件进行调研……并发量、维护周期、定制功能(kafka日志采集功能)……
你们公司的生产环境用的是什么中间件?引入中间件的意义?------结合项目来说……解耦、异步、削峰……
使用消息队列会有哪些缺点?-----可用性上消息队列的宕机、以及消息中间件导致的消息丢失、数据一致、数据重复、数据顺序……一系列新问题。
既然有了问题,那如何规避和解决上述问题呢?--------高可用方面,Master和Slave的选举;数据重复消费,数据库的唯一主键……;数据丢失,区分生产者丢失和消息队列丢失以及消费者丢失数据……
其他非技术寒暄---------略……
总结:数据库方面、以及消息中间件、分布式架构……的技术栈。