【技术支持】杭州中小厂

一面4.2

问实习,问对他们公司的了解

查看进程的命令有哪些?

查看端口被哪个进程所占用用什么命令?

Linux系统日志存放的目录?

iso七层模型?

http和https的区别?

tcp和udp的区别?

docker了解吗?容器和虚拟机的区别?

为什么虚拟机镜像比容器镜像要大这么多?

如何制作一个dockerfile,常用的指令有哪些?

容器不能上网可能是哪些原因?

开发学习过哪些语言?

有了解过常见的漏洞吗?

说一下sql注入是怎么发生的?

反问

=========

二面4.3


自我介绍


问实习公司,介绍大概工作内容


写过哪些shell?比如说shell中判断变量和数字怎么判断?


cpu内存使用率高,怎么排查解决?


a服务器同步文件到b服务器,怎么同步比较快?


linux系统级别的日志存放位置?


一个文件只想给当前用户执行权限,怎么操作?


snat和dnat的原理讲一下?


wireshark什么情况下去排查网络?


wireshark不是可以写语句?有了解过吗?


tcpdump也是用来抓包吗?


像https协议你用wireshark可以看到body中的内容吗?


python是学校教的?除了python、go,还有其它开发语言吗?


你开发学的比较深入为什么不选择开发岗位呀?


go里面的gc垃圾回收机制讲一下?


sql是大学学的吗?比如join leftjoin rjoin 的区别?


docker是你自学的吗?还是学校学的?你自己也写过dockerfile也写过镜像?


你做过什么docker镜像?


你还记得springboot镜像中写了哪些内容吗?


docker-compose 用在什么地方?


用docker compose重建一个容器怎么操作?


比如说你用docker-compose 停止容器用什么命令?stop和down的区别是什么?


k8s你也用过?比如说k8s看pod日志怎么看?pv和pvc的区别是什么?


你还用过Prometheus?你监控是直接装探针,agent之类的?


问实习经历(略)


你还搭过kafka的集群是吧?你怎么去保证kafka的一个高可用?


下面哪个项目就是你刚刚说的用容器搭建的一个flask项目做成容器化部署的是吧?


你是用Jenkins做的cicd是吧?你讲一下你cicd里面的一个大致的流程吧?从拉取项目到打包部署的这样的一个流程?


比如说它构建出来的一个产物你是放在哪里的?


你有没有了解网络安全的漏洞之类的?


你自己有用过bp吗?你有了解常见的安全漏洞吗?你随便举几个呗?


列举sql注入


你知道怎么去防御sql注入吗?


xss有了解吗?


我看你写了不少的博客?


github上面是你自己参加的一些项目的设计之类的吗?


面试官介绍公司业务,和我岗位的内容。


问岗位和自己发展方向意向


聊聊公司业务,能否接受


反问


===========


4.7oc



全部评论

相关推荐

总结:面了十几分钟,问的八股我准备的不是很好,有点尴尬通用问题1.有了解我们宁银消金吗2.你父母的职业3.你未来的打算4.你是网络安全专业,以后会从事这个方向吗5.问了去单位实习的内容6.你gap一年是在备考吗7.你有做过后端开发项目吗,为什么要来后端开发呢八股1.Spring前后端的参数传递方式有哪些一共有五种方式。第一种是路径传参,可以直接通过url传参@GETMapping("/users/{id})public User getUser(PathVaraiable("id") Long userId)将id绑定到userId上用途:标识唯一资源(用户ID,订单号等等)第二种是查询参数QueryParameters通过URL的?key=value传入,用于筛选数据可以传递附加条件(筛选,排序,分页等等)public String getUsers(RequestParam("name") String name,RequestParam (age) int age)第三种是请求体传参(@RequestBody)@RequestBody可以将JSON格式绑定到JSON对象上第四种是表单参数(Form Parameters)使用Request Param支持url编码和form-data(可以文件上传)主要用于POST/PUT请求会隐藏在请求体中,是不可见的第五种是请求头参数,通过HTTP请求传递信息(如认证令牌)实现方式:使用@RequestHeader注解来绑定信息)@GetMapping("/auth")public String checkAuth(@RequestHeader("Authorization") String token) {    // 验证token}2.抽象类和抽象接口有了解吗抽象类定义 多个相关类有共同属性和部分共享逻辑,就可以抽象出一个抽象类抽象接口定义 声明一组无关类需实现的能力(例如Comparable定义比较规则)它可以实现多继承效果 面试官​:抽象类和接口的区别是什么?​回答​:​核心目的不同​:抽象类为相关类提供通用模板(is-a),接口定义行为规范(can-do)。​代码灵活性​:抽象类支持部分方法实现,接口通过默认方法向后兼容。​继承机制​:抽象类单继承,接口多实现,适用不同扩展需求。​选择依据​:用抽象类:多个类共享状态和部分行为(如动物类族)。用接口:定义跨类能力(如序列化、比较)或实现多态3.面向对象的五大原则面向对象的五大设计原则(SOLID)是构建可维护、可扩展软件的核心准则,以下是具体解析及实践要点:📌 一、单一职责原则(SRP, Single Responsibility Principle) 核心思想 :一个类只应有一个引起变化的原因。● 作用 :避免职责扩散导致的高耦合。例如,职员类若同时处理工程师、销售、经理的职责,会导致方法内充斥条件判断,任何需求变更都可能影响整体。● 实践建议 :按功能拆分模块。如图片加载框架中,将图片加载与缓存分离为两个独立类。🔄 二、开放封闭原则(OCP, Open-Closed Principle) 核心思想 :对扩展开放,对修改封闭。● 作用 :通过抽象隔离变化。例如银行业务中,通过IBankProcess接口定义流程,新增基金业务只需扩展FundProcess类,无需修改原有代码。● 实现方式 : 使用策略模式(Strategy)或模板方法模式(Template Method)。○依赖抽象接口而非具体实现。🔁 三、里氏替换原则(LSP, Liskov Substitution Principle) 核心思想 :子类必须能替换父类且不影响程序正确性。● 作用 :确保继承关系的合理性。反例:正方形继承长方形时,若修改setWidth()会同时改变高度,破坏行为一致性。● 关键点 : 子类方法的前置条件不能比父类更严格,后置条件不能更宽松。○避免重写父类非抽象方法。🧩 四、接口隔离原则(ISP, Interface Segregation Principle) 核心思想 :客户端不应依赖其不需要的接口。● 作用 :避免“臃肿接口”。例如电商订单系统,为门户(查询)、外部系统(插入)、后台(全功能)分别定义专用接口。● 实践建议 : 按角色拆分接口,如IOrderForPortal仅含getOrder()。○避免强制实现无关方法,减少依赖污染。⬇️ 五、依赖倒置原则(DIP, Dependency Inversion Principle) 核心思想 :1.高层模块不依赖低层模块,二者依赖抽象;2.抽象不依赖细节,细节依赖抽象。● 作用 :解耦模块关系。如图片框架中,业务逻辑依赖ImageCache抽象接口,而非具体的内存或本地缓存实现类。● 实现方式 : 依赖注入(DI)或工厂模式。
点赞 评论 收藏
分享
评论
点赞
8
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务