计算机科学与技术IT公司实习报告_第1页
计算机科学与技术IT公司实习报告_第2页
计算机科学与技术IT公司实习报告_第3页
计算机科学与技术IT公司实习报告_第4页
计算机科学与技术IT公司实习报告_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机科学与技术IT公司实习报告一、摘要

2023年7月1日至2023年8月31日,我在一家领先的IT公司担任软件开发实习生,主要参与电商平台后端系统的优化工作。通过8周实践,我主导重构了商品推荐算法模块,将系统响应时间从平均2.5秒缩短至1.2秒,日均处理请求量提升30%,并优化数据库查询效率使缓存命中率从45%提升至68%。期间运用了SpringBoot框架进行微服务开发,通过JMeter进行压力测试,累计编写并调试代码5000余行,采用Docker容器化部署技术将系统上线时间从3天压缩至1天。提炼出基于日志分析的性能瓶颈定位方法论,以及自动化测试脚本框架,可直接应用于同类项目开发中。

二、实习内容及过程

1.实习目的

我去那家公司实习,主要是想看看真实的软件开发流程,特别是后端怎么搞的,顺便把在学校学的SpringBoot啥的用起来,看看能不能遇到点数据库优化或者分布式系统这些实际场景。

2.实习单位简介

那家公司是做电商平台的,技术栈用得挺全,Java后端居多,还有Python搞运维,前端是React,数据库用MySQL和Redis。我去的部门主要是做C端业务,系统压力挺大,所以性能这块儿挺受重视。

3.实习内容与过程

我跟着一个学长做商品推荐系统的优化,那模块之前响应慢,有时候用户点东西等得真烦。7月10号开始接手,先看代码,发现几个问题:一是查询数据库的时候没好好用缓存,二是推荐算法逻辑有些冗余。

7月15号左右,我开始动手改。用Redis做缓存,把一些热点数据的查询封装成接口,还用到了分页查询优化,把原来的全表扫描改成索引扫描。为了测试效果,我写了几个JMeter脚本,白天跑压测,晚上分析日志,发现慢查询少了70%,响应时间从2.5秒直接干到1.2秒。

后来又搞了点自动化测试,用Selenium模拟用户操作,写了十几条脚本,每次代码提交后都能自动跑一遍,省了不少事。期间还遇到个麻烦,部署环境老出问题,容器一直重启,问了运维才知道是镜像层数太大了。后来我把Dockerfile精简了,层数从20多减到5层,部署快了将近一半时间。

4.实习成果与收获

最后那段时间,日均处理请求量从5万QPS涨到6.5万,缓存命中率从45%提到68%,系统稳定性也好了不少。我总结了个小方法论,就是性能问题先看日志,用Prometheus+Grafana画监控图,再定位慢SQL,最后用缓存或者索引解决。这东西挺实用的,之后写项目可以直接套用。

除了技术,我还体会到整个开发流程是怎么走的:需求评审设计开发测试上线,每个环节都得仔细。比如开发完要自己写单元测试,测试那边提的bug得快速响应,这些在学校真没经历过。

5.问题与建议

实习期间也发现点问题。比如公司管理有点乱,需求变更老临时来,有时候开会到晚上十点,加班是常态,但也没啥补偿。另外培训机制也不太行,新人就是给个项目跑,没人手把手教架构设计这些高阶东西。

我建议他们搞个新人成长计划,比如每周固定时间讲讲分布式、高并发这些,或者搞个内部技术分享会。而且需求变更得有个流程,不能老板一句话就改,不然开发测都懵圈。岗位匹配度上,我本来想做后端,但最后搞了点前端活儿,虽然也学了点,但真不是我最想干的。要是能按兴趣分点任务就好了。

三、总结与体会

1.实习价值闭环

这8周,从7月1号到8月31号,感觉像是把学校里那些零散的知识点串联起来了。之前学SpringBoot,只是跟着教程敲代码,去了之后才知道怎么在团队里用,怎么写出来能跑得快、扛得住压。比如我参与的推荐系统优化,把响应时间从2.5秒压到1.2秒,处理量从5万QPS提到6.5万,这些数字不是瞎写的,是JMeter跑出来的,也是监控图上实实在在的进步。这让我明白,学校学的理论基础是骨架,实习里的那些实践才是肉,缺一不可。

我还学会了怎么跟团队协作,比如写代码要考虑别人怎么读,需求不清楚要主动问,而不是憋着。搞懂了GitFlow这些,知道了分支管理不是玩概念,而是真会影响项目进度。这些细节,在学校做项目真没体会到。

2.职业规划联结

这段经历让我更清楚自己想干嘛。之前有点迷茫,现在觉得后端是块宝地,特别是分布式、高并发这些,感觉特别有意思。公司那套监控体系,用Prometheus+Grafana,挺专业的,我回去打算学学Kubernetes,看看能不能把容器编排搞懂。实习最后那会儿,老大跟我说下次有Java后端的机会可以找我,虽然不知道真假,但心里踏实多了。我打算下学期考个AWS认证,顺便把计算机网络那些知识点再过一遍,感觉这些才是核心竞争力。

我发现做技术真的得持续学习,行业变化太快了,学校里学的可能几个月就过时了。比如这次实习,他们用的Redis6新特性我都没用过,还是问同事才知道。所以打算以后每个月看一篇顶会论文,保持点敏感度。

3.行业趋势展望

感觉现在做电商、做互联网,对性能要求真的高,分布式、微服务是标配。但我也看到点问题,比如他们有些老系统还是传统单体架构,维护起来特别累。我猜未来几年,Serverless、云原生肯定更火,不然那些老系统没法升级。这次实习我用了Docker,但只做了简单部署,没接触到更复杂的编排,感觉这块儿是短板。

另外AI这块儿也卷,商品推荐、客服这些都用上了,但感觉算法这块儿挺深的,我这次只是改了改参数,离真正懂还差得远。我打算下学期深入学学机器学习,至少能把那些常用模型用熟。行业里感觉Java、Go还在用,但Python在运维、数据分析这块儿越来越重要,得多练练。

4.心态转变

最明显的变化是心态,以前写代码总觉得对就成,现在会想怎么写得更优雅、更高效。比如这次改Redis缓存,我以前觉得用就行,现在知道得考虑过期策略、Key设计这些细节。还有抗压能力,之前做毕设被老师骂两句就心态爆炸,现在被老大催代码,还能冷静改,虽然还是有点慌,但好多了。责任感也增强了,以前写代码随便点,现在知道可能千万人要用,得对得起用户时间。这种变化挺真实的,不是说说而已。

以后做项目,肯定会想起这次实习的教训:别怕麻烦别人,但别做伸手党;需求不清楚赶紧问,别憋着;写代码前多想想边界条件,别上线后出bug。这些小习惯,可能是以后立足的资本。

四、致谢

1.

感谢那家公司给我这次实习机会,让我见识了真实的软件开发流程。

2.

感谢我的实习导师,带我熟悉项目,解答我

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论