No.10 滴滴、华为、蓝色光标、人工智能研究院、电视家面经整理(中1-web框架篇)

简介: No.10 滴滴、华为、蓝色光标、人工智能研究院、电视家面经整理(中1-web框架篇)

640.png

作者Tips:毕业近两年时间自己主要是做golang web后端开发工作,接触到的框架也是gin gorm居多,所以在框架准备方面,读者可根据自己的项目背景做合理的准备。

gin,gorm框架


问题1.你们项目的架构是什么?基于什么框架?

答:项目B/S架构,用到gin,gorm框架。        


问题2.谈谈B/S架构

答:B/S架构(Browser/Server)是指浏览器/服务器架构是一种分布式计算架构,它将应用程序的用户界面数据存储分离用户界面运行在客户端的浏览器上,数据存储在服务器端,这样就可以更加高效地管理数据,提高系统的可扩展性。

B/S架构优点1.便于维护,只需要在服务器端进行修改就可以更新整个系统;2.可以跨平台,只要客户端支持浏览器,就可以访问系统;3.可以支持多用户访问,可以同时支持多个用户访问系统。

B/S架构缺点1.客户端依赖于网络,如果网络不稳定,就会影响使用体验;2.安全性较差,由于数据传输是通过网络进行的,因此容易受到攻击;3.性能受限,由于客户端和服务器端的数据传输是通过网络进行的,因此会受到带宽的限制。


问题3.gin的架构设计是什么?什么场景下适用于gin框架?你还了解其他框架吗?

答:Gin是一个用Go语言编写的Web框架,它提供了一系列的API可以帮助开发者快速构建Web应用,并且提供了灵活的路由功能,可以帮助开发者快速实现路由规则的配置。此外,Gin还提供了多种实用的功能,比如中间件、模板引擎等,可以帮助开发者更加高效地开发Web应用。追求灵活快速搭建项目适合用gin框架。gin框架相比其他框架相对轻量且高性能,还了解iris,beego框架。


问题4.为什么说gin轻量且高性能?

答:Gin的轻量和高性能主要来源于其精简的架构设计,它将Web应用的核心功能模块化,使得开发者可以根据需要来自由组合这些模块,从而更加高效地实现Web应用的开发,而且Gin使用Go语言开发,可以更好地利用Go语言的高性能特性,从而提高Web应用的性能。


问题5.说说gin,iris,beego框架的优缺点?

答:Gin框架的优点是采用Go语言开发,可以更好地利用Go语言的高性能特性,从而提高Web应用的性能,可扩展性强,简单易用缺点是功能比较单一,没有提供更多的辅助工具。不支持多核心,没有更多的特性,可能会出现资源泄漏的情况。

Iris框架的优点是提供了更多的功能,比如路由守卫、安全验证等,可以帮助开发者更加安全可靠地开发Web应用;缺点是由于提供了更多的功能,可能会导致应用的性能有所下

Beego框架的优点是提供了更多的辅助工具,可以帮助开发者更加快速地完成Web应用的开发;缺点是由于采用了模块化的架构,可能会导致应用的维护和扩展比较困难


问题6.gin框架在什么情况下会出现资源泄漏?

答:一般情况下,Gin框架在使用不当的情况下可能会出现资源泄漏,比如在请求处理过程中分配了大量内存,但是没有及时释放,从而导致系统资源的浪费。例如:在不正确使用请求上下文或者不正确关闭连接池等情况下也会出现资源泄漏的情况。因此,在开发Gin应用时,应该注意资源的管理,避免出现资源泄漏的情况。


问题7.gin框架的路由规则配置有什么特殊之处吗?

答:Gin框架的路由规则配置更加灵活,可以更好地满足开发者的需求。它支持多种路由规则的配置,比如可以指定路由的HTTP方法、路径参数等,从而更加精细地控制Web请求的处理流程。


问题8.iris 和beego不能指定路由的http方法吗?

答:不能,Iris和Beego都不支持指定路由的HTTP方法,只能指定路径参数。但是Gin框架可以指定路由的HTTP方法,从而更加精细地控制Web请求的处理流程。


问题9.gorm框架是什么?

答:Gorm是一个开源的Go语言ORM框架,它支持多种数据库,可以帮助开发者快速构建数据库操作应用,并且提供了灵活的查询功能,可以帮助开发者快速实现数据库操作。此外,Gorm还提供了多种实用的功能,比如自动迁移、模型关联、查询缓存等,可以帮助开发者更加高效地开发数据库应用。


问题11.gorm框架的底层实现你有了解吗?

答:了解。Gorm框架的底层实现是一个叫做sqlx的库,它提供了一系列用于操作数据库的API,可以帮助开发者快速构建数据库操作应用。Gorm框架在sqlx的基础上进行了封装,提供了更加方便的API,从而使得开发者可以更加高效地实现数据库操作


参考资料

1.《B/S架构https://blog.csdn.net/qq_46071165/article/details/1240910482.《Gin框架源码解析https://www.shuzhiduo.com/A/RnJWw68yJq/3.《Go 三款主流框架--Gin Beego Iris 选型对比https://zhuanlan.zhihu.com/p/4270954114.《知识体系之Go面试题https://blog.csdn.net/weixin_36750623/article/details/127050854

相关文章
|
1月前
|
人工智能 并行计算 搜索推荐
昇思MindSpore 2.3全新发布 | 昇思人工智能框架峰会2024圆满举办
人工智能框架作为软件根技术,已成为加速人工智能大模型开发、推动产业智能化发展的核心力量。 以“为智而昇,思创之源”为主题的昇思人工智能框架峰会2024今日在北京国家会议中心举办,旨在汇聚AI产业界创新力量,推动根技术持续创新,共建人工智能开源新生态。
|
2月前
|
机器学习/深度学习 人工智能 PyTorch
Python 与人工智能的完美结合——解析 PyTorch 框架
【2月更文挑战第4天】本文将探讨 Python 在人工智能领域中的应用,以及介绍 PyTorch 框架。PyTorch 是一个基于 Python 的开源机器学习库,其强大的自动微分功能和易于使用的接口使其成为深度学习领域的热门选择。本文将从 PyTorch 的发展历程、工作原理以及示例代码等方面进行详细分析和解释。
|
2月前
|
人工智能 前端开发 Java
软件测试/人工智能|熟练使用web控件定位技巧,提升测试工作效率!
软件测试/人工智能|熟练使用web控件定位技巧,提升测试工作效率!
197 1
|
4月前
|
机器学习/深度学习 TensorFlow API
【Python/人工智能】TensorFlow 框架基本原理及使用
【Python/人工智能】TensorFlow 框架基本原理及使用
75 0
|
4月前
|
设计模式 人工智能 测试技术
软件测试/人工智能|如何使用ChatGPT编写符合PO模式的数据驱动测试框架
软件测试/人工智能|如何使用ChatGPT编写符合PO模式的数据驱动测试框架
55 0
|
6月前
|
消息中间件 人工智能 运维
No.11 滴滴、华为、蓝色光标、人工智能研究院、电视家面经整理(中2-微服务篇)
No.11 滴滴、华为、蓝色光标、人工智能研究院、电视家面经整理(中2-微服务篇)
|
6月前
|
存储 人工智能 Go
No.9 滴滴、华为、蓝色光标、人工智能研究院、电视家面经整理(上-golang基础篇)
No.9 滴滴、华为、蓝色光标、人工智能研究院、电视家面经整理(上-golang基础篇)
|
1月前
|
人工智能 安全 网络安全
欧盟《人工智能法案》对通用AI模型的监管要求
【2月更文挑战第24天】欧盟《人工智能法案》对通用AI模型的监管要求
83 2
欧盟《人工智能法案》对通用AI模型的监管要求
|
1月前
|
人工智能 安全 数据挖掘
Pandas AI:Pandas与人工智能的结合,让你不再拘泥于如何使用pandas方法及处理语法
Pandas AI:Pandas与人工智能的结合,让你不再拘泥于如何使用pandas方法及处理语法
|
30天前
|
机器学习/深度学习 人工智能 运维
【人工智能技术专题】「入门到精通系列教程」打好AI基础带你进军人工智能领域的全流程技术体系(机器学习知识导论)(二)
【人工智能技术专题】「入门到精通系列教程」打好AI基础带你进军人工智能领域的全流程技术体系(机器学习知识导论)
60 1