全国免费咨询:

13245491521

VR图标白色 VR图标黑色
X

中高端软件定制开发服务商

与我们取得联系

13245491521     13245491521

2023-09-28_校招:外卖和商城项目不吃香了,我选 12306!

您的位置:首页 >> 新闻 >> 行业资讯

校招:外卖和商城项目不吃香了,我选 12306! 点击关注公众号,回复”福利”即可参与文末抽奖ps:文中有很多超链接,由于公众号后台问题跳转不了,大家可以点击文末的阅读原文,进入作者原链接进行跳转。 官网地址:magestack.cn 12306 铁路购票服务是与大家生活和出行相关的关键系统,包括会员、购票、订单、支付和网关等服务。 这个项目旨在让学习者可以快速掌握分布式系统设计的技巧,尤其适合对高并发、分布式感兴趣的同学学习。如果想深入理解和应用分布式系统的设计原则,这个项目将会是一个很好的学习资源。 项目中包含了缓存、消息队列、分库分表、设计模式等代码,通过这些代码可以全面了解分布式系统的核心知识点。 在系统设计中,采用 JDK17 + SpringBoot3&SpringCloud 微服务架构,构建高并发、大数据量下仍然能提供高效可靠的 12306 购票服务。 为了方便大家学习,该系统提供了两种版本: SpringBoot 聚合服务版本:适合测试和部署,可以直接启动 aggregation-service 聚合服务和网关服务。SpringCloud 微服务版本:适合学习微服务设计,可以分别启动支付、订单、用户、购票和网关服务。根据自己的学习和使用需求,选择合适的版本启动即可。微服务版本侧重学习设计,聚合服务版本侧重测试和部署。请根据场景需要,选择正确的版本进行学习和使用。 学生为什么选 12306?我的读者中有很多学生群体,他们反馈说实习和秋招的竞争变得非常激烈。大家的项目内容基本雷同,大多都是通过观看B站上的视频来学习并完成的。 这种情况导致学历一般的学生很难获得面试邀请。我之所以说学历一般的同学,是因为我也见过一些学历较好的同学只写了一些外卖和商城项目,但由于学历加持,他们能比较轻松拿到大厂的面试邀请。 如何判断一份学生的简历含金量怎么样?通常由以下项进行排序: ?学校 获奖经历 实习和工作经验 项目 证书 专业技能 ...... ?在全体学生中,学校和学历以及获奖经历的比例相对较小。毕竟,出色的学校和重要的竞赛机会有限。对于更多的同学来说,他们只能在其他方面努力以展现自己的优势。 综合来看,项目经验是许多同学可以展现自己的重要领域。拥有出色的项目经验在简历上具有非常重要的意义。对于学历一般的同学而言,拥有优秀的项目经验可能会带来更多的面试邀请;而对于学历较好的同学而言,拥有出色的项目经验可能会使他们获得更好的公司机会。 为了实现这一目标,我决定选择一个能够在简历中成为亮点,引起面试官兴趣,并且大家熟知的项目——12306铁路购票系统。 项目质量怎么样?我理解大家对选择一个合适的项目以投入时间和精力的担忧。选对项目既可以锻炼技能,又可以产出价值是非常重要的。 以用户服务系统为例,低并发和低数据量的系统相对简单,但高并发和海量数据的系统则需要考虑很多额外因素。 当用户在 12306 网站注册新账号或添加乘车人时,系统需验证用户提交信息的真实性和准确性。如何有效预防用户提交虚假信息,保障系统购票的安全?12306 的大规模用户和乘车人数据如何选择分库分表?选择哪个字段作为分片键?如何在老业务上平滑上线分库分表?出现问题如何快速回滚?系统支持会员使用用户名、手机号以及邮箱等多种方式进行登录。由于登录时无法确定用户的分片键,造成的“读请求扩散”问题如何解决?在高并发的会员注册场景下,绝对会出现缓存穿透问题。网上鼓吹的对不存在 Key 进行缓存值设为 Null,以及布隆过滤器等都存在漏洞,如何解决?存在较多的敏感信息,比如会员或者乘车人的姓名、手机号、邮箱、证件号码以及住址,如何防止数据库被攻击时造成的敏感信息泄露?再以购票服务为例,当用户购买两个乘车人的高铁一等座票且没有选座时,座位的分配逻辑如下: 首先检查当前列车的一等座余票是否足够。如果余票不足,直接向客户端返回购票请求失败的响应。获取所有车厢中有两个座位余票的车厢,并对这些车厢进行遍历,按照下述流程执行。首先检查所有车厢中是否存在一等座车票的相邻座位。如果所有车厢中都没有相邻座位,进入下一步逻辑。接着检查是否有车厢中包含两个不相邻的一等座座位?因为同车厢两座位相邻座位没有的话,就退而找同车厢不相邻座位。如果以上逻辑都无法满足,那么最后选择分配不同车厢的不相邻座位。这种情况下,由于已经确认一等座的余票充足,因此一定能够成功完成购票。通过以上步骤,购票系统能够在高铁一等座票余票充足的情况下,合理地分配座位,确保乘车人出行时有良好的座位体验。同时,如果余票不足,系统会优先满足乘车人顺利购票的需求。 项目文档入门准备 为什么 12306 更适合学生后端技术架构选型项目接口文档前端控制台手册如何从零到一学习 12306什么是 12306快速开始 项目依赖中间件环境搭建快速启动(后端)快速启动(前端)12306 用户体系建设概要......核心技术文档 如何生成全局唯一分布式 ID如何使用 Builder 模式创建线程池责任链模式重构复杂业务场景死磕设计模式之抽象责任链模式策略模式在项目设计中用得最多如何使用线程池不容易出故障......手摸手从零到一实现 手摸手之梳理核心业务手摸手之梳理数据库表结构涉及......面试系列 如何把 12306 写到简历上小红书内容推荐部门一面......项目基础架构1. 项目工程目录介绍├── checkstyle || -- # 代码格式检查组件│ ├── 12306_checkstyle.xml || -- # 代码格式检查组件规则配置│ └── 12306_checkstyle_suppression.xml || -- # 忽略代码格式检查组件规则配置├── console-vue || -- # 12306 前端控制台项目│ ├── README.md│ ├── babel.config.js│ ├── jsconfig.json│ ├── node_modules│ ├── package.json│ ├── public│ ├── src│ ├── vue.config.js│ └── yarn.lock├── dependencies || -- # 12306 后端项目全局依赖版本控制│ └── pom.xml├── format || -- # 12306 后端项目格式化组件│ ├── 12306_spotless_formatter.xml || -- # 12306 后端项目格式化组件规则配置│ └── license-header || -- # 12306 后端项目开源协议头格式化├── frameworks || -- # 12306 基础架构组件库│ ├── base || -- # 12306 顶层抽象基础组件│ ├── bizs || -- # 12306 业务相关基础组件,比如用户上下文等│ ├── cache || -- # 12306 缓存基础组件│ ├── common || -- # 12306 公共工具包组件│ ├── convention || -- # 12306 项目规约组件│ ├── database || -- # 12306 数据库持久层组件│ ├── designpattern || -- # 12306 设计模式抽象基础组件│ ├── distributedid || -- # 12306 分布式 ID 基础组件│ ├── idempotent || -- # 12306 幂等基础组件,包括 HTTP 及不同消息队列实现│ ├── log || -- # 12306 日志打印基础组件库│ └── web || -- # 12306 Web 相关基础组件库│ ├── pom.xml├── resources || -- # 12306 项目数据库初始化及其它│ ├── data || -- # 12306 数据库数据初始化│ └── db || -- # 12306 数据库初始化├── services || -- # 12306 后端项目集合│ ├── aggregation-service || -- # 12306 SpringBoot 聚合模式服务│ ├── gateway-service || -- # 12306 网关服务│ ├── order-service || -- # 12306 订单服务│ ├── pay-service || -- # 12306 支付服务│ ├── ticket-service || -- # 12306 购票服务│ └── user-service || -- # 12306 用户服务│ ├── pom.xml└── tests || -- # 12306 单元测试集合│ ├── general || -- # 12306 通用单元测试└── pom.xml├── LICENSE├── mvnw├── mvnw.cmd├── pom.xml├── README.md2. 后端架构依赖 技术名称版本官网1Spring Boot基础框架3.0.7https://spring.io/projects/spring-boot2MyBatis-Plus持久层框架3.5.3.1https://baomidou.com3HikariCP数据库连接池5.0.1https://github.com/brettwooldridge/HikariCP4Redis分布式缓存数据库Latesthttps://redis.io5RocketMQ消息队列2.2.3https://rocketmq.apache.org6ShardingSphere数据库生态系统5.3.2https://shardingsphere.apache.org7SpringCloud Alibaba分布式框架2022.0.0.0-RC2https://github.com/alibaba/spring-cloud-alibaba8SpringCloud Gateway网关框架2022.0.3https://spring.io/projects/spring-cloud-gateway9FastJson2JSON 序列化工具2.0.36https://github.com/alibaba/fastjson210CanalBinLog 订阅组件1.1.6https://github.com/alibaba/canal11HuTool小而全的工具集项目5.8.2https://hutool.cn12Swagger3项目 API 文档框架3.xhttp://swagger.io13Knife4jSwagger 增强框架3.xhttps://doc.xiaominfo.com14Maven项目构建管理3.9.1http://maven.apache.org15RedissonRedis Java 客户端3.21.3https://redisson.org16Sentinel流控防护框架1.8.6https://github.com/alibaba/Sentinel17Hippo4j动态线程池框架1.5.0https://hippo4j.cn18XXL-Job分布式定时任务框架2.4.0http://www.xuxueli.com/xxl-job19SkyWalking分布式链路追踪框架9.5.0https://skywalking.apache.org20JetCacheJava 缓存框架2.7.3https://github.com/alibaba/jetcache21TTL增强版 ThreadLocal2.14.3https://github.com/alibaba/transmittable-thread-local如何使用12306 前端控制台演示环境:http://12306.magestack.cn 前端系统实现了与官网极为接近的业务逻辑和 UI 展示。 在学习过程中,通过类似官网的前端系统直接调试后端服务,可以避免纯通过接口测试的繁琐。这种真实场景的模拟,使得学习过程更加流畅高效。 目前前端系统还在开发中,部分业务及细节处还在调整,完成后统一给出控制台操作手册,请耐心等待。 1. 车票查询功能 2. 提交订单页,选择乘车人下单 3. 高铁在线选座页面常见问题答疑Q:面向人群是学生,但是里面这么多的代码设计方案,学生能看明白么? A:文档中准备了两部分资料,一部分是讲解技术实现细节,通过该部分可以很好掌握核心技术;另一部分是讲如何从零到一实现系统;通过两种文档结合,可以很好吸收 12306 系统中的设计。 Q:如何把 12306 项目写到我的简历上? A:马哥在文档库最后给大家提供了 12306 写到简历上的亮点、难点以及解决方案。其次,通过 12306 去面试的小伙伴的面试题也会进行汇总,免费供大家学习使用。 Q:工作几年的有必要看 12306 这个系统么? A:我觉得有必要,已经工作的同学虽然没办法把这个项目应用到简历上,但是系统中好的设计却是可以代入到自己的项目中,提高自己项目的亮点以及难点。 项目文档共计 100+ 核心技术文档!帮助你深入了解以及快手上手 12306 系统。 项目中的文档包括三部分,快速开始、核心技术文档以及从零到一开发。可根据自己的兴趣选择深入了解核心技术或从零到一复刻系统。 点击小卡片,参与粉丝专属福利!! 如果文章对你有帮助的话欢迎「关注+点赞+收藏」 阅读原文

上一篇:2025-09-27_规范对齐时代:GPT-5 断层领先,让安全与行为边界更明晰 下一篇:2023-11-20_双11十五年,为什么抖音逆势成为品牌“新首选阵地”?

TAG标签:

10
网站开发网络凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设网站改版域名注册主机空间手机网站建设网站备案等方面的需求...
请立即点击咨询我们或拨打咨询热线:13245491521 13245491521 ,我们会详细为你一一解答你心中的疑难。
项目经理在线

相关阅读 更多>>

猜您喜欢更多>>

我们已经准备好了,你呢?
2022我们与您携手共赢,为您的企业营销保驾护航!

不达标就退款

高性价比建站

免费网站代备案

1对1原创设计服务

7×24小时售后支持

 

全国免费咨询:

13245491521

业务咨询:13245491521 / 13245491521

节假值班:13245491521()

联系地址:

Copyright © 2019-2025      ICP备案:沪ICP备19027192号-6 法律顾问:律师XXX支持

在线
客服

技术在线服务时间:9:00-20:00

在网站开发,您对接的直接是技术员,而非客服传话!

电话
咨询

13245491521
7*24小时客服热线

13245491521
项目经理手机

微信
咨询

加微信获取报价