标签 后端开发 下的文章

(所有项目的详细介绍,都可以在我公众号搜到相应的介绍文章)

纯AI底层原理项目

文章介绍链接:
https://mp.weixin.qq.com/s/cATjUcO2uoi8Knim6ZKb5w

通过此项目,一共可以衍生出三个子项目,含金量非常之高。大家可以看看简历书写,是否感兴趣

完整项目简历


子项目---MCP server部分

子项目---整体mcp开发

子项目---a2a开发

操作系统项目

在应届生校招面试中,对基础知识的拷打,系统知识部分占据了极其重要的一环。(校招面试基础知识,一般就是拷打语言、操作系统、计算机网络、还有自己写的额外学的东西)

那这个时候,如果操作系统学习的好,学的深入,远超同龄人,那面试基本已经成功三分之一了。

那怎么说明操作系统算学习的好呢,无非就是深入底层,深入内核。 学习内核源码,尝试改编。

针对这,星球里目前有两个项目:

协程框架

一个是协程框架项目(底层语言到寄存器,操作系统hook机制,内核模块编写)

同时有详细的学习路线、学习资料、学习代码、简历书写,以及面经

如下图:

Linux性能监控项目

(和星球同学一起整理的分享给大家)

目前大家都在强调自研,自研操作系统。尤其新能源,智能座舱都在自研操作系统。

那怎么自研的,从0到1,肯定是首先要借鉴下目前好的操作系统(安卓),以及对底层的模块熟悉,会编写内核模块。

并且既然是监控项目了,肯定要对底层的一些指标进行监控,监控内核。了解要学习的中间件

以及对一些性能怎么进行测试等等。通过此项目,将会让你对操作系统的掌握,更上一层楼

同时有详细的学习路线、学习资料、学习代码、简历书写,以及面经

如下图:

计算机网络项目

作为另一个面试中被拷打的重点。大多数人对于网络的学习都是停留在传输层、应用层上。你学,他学,大家都学了,那怎么突出你掌握的深度,实现对其他人的降维打击呢。

那就往深的学,往底层的学。是不是可以学学底层协议呢,学学底层内核网络协议栈呢。

通过这个学习,你会了解内核中对协议的一些实现、以及用户态怎么与内核网络协议栈进行交互,以及怎么监控内核网络协议栈。对网络部分实现对同龄人甚至面试官的降维打击。

并且此项目也融合了AI的东西,引起了RAG技术,进行了多种RAG的实现方式。与AI结合,符合潮流

同时有详细的学习路线、学习资料、学习代码、简历书写,以及面经

如下图:


项目介绍文章:

项目介绍视频

https://www.bilibili.com/video/BV1jbx2zgE7h/?spm_id_from=333....

后端项目(AI智能云存储)

很多学生学cpp,但是又要找后端岗位、服务端开发的工作。

这个时候就需要你有crud经验,作为一个cpp选手(cpp主要就是搞底层、 嵌入式的)。证明自己有后端经验,那最好的证明就是证明自己有个后端的项目

并且很多人学cpp,也是因为时间来不及,想速成。c++最大的优势就是可以学习较少的东西,就可以做出一份很不错的简历出来,投入到找工作行列中。(用少量的时间就可以达到找工作的要求)

但是简历项目必不可少,这个时候有个简单同时也有含金量的项目至关重要。

那就可以做个后端项目,比较简单。也有含金量,之前全程辅导23/24/25届的学生,单纯用这一个项目,并且用的还是基础版本(目前进行了一次迭代,新增了使用docker、k8s一键部署,以及也增加了AI的东西),就可以找到满意的工作。

同时有详细的学习路线、学习资料、学习代码、简历书写,以及面经

如下图:

游戏项目

(和星球同学一起整理的分享给大家)

很多人学cpp可能是为了想找游戏相关的工作,但是苦于没有合适的项目,这里 给大家介绍两个项目。

一个是框架类的项目

一个是落地的项目

分布式ECS游戏后端框架

实现了一个游戏开发框架,一个黑盒子,底层框架,供游戏开发者使用。复用了很多功能

具体内容可以看下面的图片:

游戏姿势识别项目

从游戏开发应用、中间框架层、底层硬件封装、sdk调用,一条龙自主实现。

主打对整体的一个流通,可通各个层级岗位,万金油

如下图:

一站式编程平台项目

此项目主要用于为大家编程学习,提供编程练习环境。带大家从小白一步一步蜕变成编程大牛,而不是一个只会背的八股选手


qt项目

正在研发中,争取年前上线

其他收集的开源免费的基础项目

免费开源给大家,不要被一些人忽悠,拿着这些开源项目说自研,忽悠大家,忽悠钱就算了。还忽哟大家把线程池、内存池当作项目,耽误大家前程。




等等其他项目在开发中

知识星球介绍(公认的cpp c++学习地)

星球名字:奔跑中的cpp / c++

专注cpp/c++相关求职领域的辅导

加入星球福利,后续如果有其他活动、服务,不收费,不收费,可以合理赚钱就收取下星球费用,但是不割韭菜,保持初心

感兴趣的微信扫下面的码,然后下载知识星球app登录即可

(1)高质量的项目合集






同时如果项目,遇到任何困惑也会第一时间进行解答的

(2)高质量精确性八股资料


(3)详细的学习路线

(4)活跃的学习氛围,星球打卡不只是一个形式,而是每天观看,针对同学们的学习情况提出合理化的建议,同时也有高质量的星球微信内部群


(5)星球提问简历修改,提供意见的同时,还会给安排一对一腾讯会议辅导

(6)星球同学offer情况,以及对应学习情况,给大家提供参考

(7)全网最全cpp相关面经整理

(8)编程实战能力提升平台(大家都可以使用的,免费的)

访问网址 cppagancoding.top

星球同学的评价

(9)每周也会进行直播答疑,同时有时也会给星球内部同学开一些知识、路线分享会。

具体可以看B站放的视频,up名字:cpp辅导的阿甘

(10)奖励金激励,会根据大家打卡学习/ 面经打卡整理情况,每个月每个季度发放奖励金。有的人陆陆续续已经获得了数千月的奖励金,是加入星球费用的数十倍了

等等,可能还有一些其他服务,目前没想起来的,以及后续也会增加的服务

本文由mdnice多平台发布

本文由TinyPro中后台系统贡献者周泽龙原创。

在长达三个月的开发下,终于TinyPro的Springboot后端版本终于要问世了,在本期内容中我将带大家一步步去搭建整个后端的流程,也将带大家去探索对于最新版本的更改应该如何实现,以及如何使用本项目进行一个二次的开发和探索。
首先我们先要对于TinyPro项目进行一个整体的拉取,去到TinyPro的官方进行拉取,当我们获取到项目以后就可以进行开始今天的项目构建了。

接下来的流程就是对于前端i项目的搭建以及后端的springboot项目的搭建,最后再去介绍咱们新版本里面的一些特性和组件

1.前端部分的搭建

首先要确保咱们安装了Node.js、NPM、TinyCLI接下来就要正式初始化项目了首先我们进行初始化

(1)在命令行输入tiny init pro对项目进行一个初始化具体的流程可以看我的视频介绍

1.jpg
(2)接下来就让我们进入到我们的项目里面,tinyvue的前端代码里面我们首先进行一个项目的依赖的下载大家可以使用npm install进行项目依赖的下载。

(3)当我们项目依赖下载完成后就可以进入到一个启动流程了,使用npm start进行一个项目的启动启动后就会开启3031端口这样就可以看见项目的启动界面了!

2.png

到目前为止我们的前端项目就算正式启动成功了,接下来让我们一起开始启动后端项目

2.后端项目的搭建

首先我们需要确保自己的本地环境里面有jdk17,maven,mysql,redis以及一个自己喜欢的开发软件可以idea或者vscode

好了准备工作做好以后接下来就让我们进入后端的开发和后端二次开发的一个介绍并且我也将带着大家去了解springboot里面的一些设计和里面的一些函数的内容接下来开始吧

项目结构的介绍:
当进入到项目里面的时候我们最直观的可以看见项目的一个整体结构

3.png
(1)先介绍一下项目的一个配置文件,对于所有的springboot项目上来第一件事就算看配置文件application.properties文件这个文件里面包含了所有项目需要的配置比如:mysql,redis,Springjpa,mybatis-plus(项目里面没有使用,但是基本的配置都配置好了,也就兼容了喜欢使用mybatis-plus的同学)大家可以更具自己的数据库信息和redis进行配置,需要自己填写好数据库的用户名,端口和驱动地址,还有redis的配置信息比如主机地址和端口号

到这里的同学,那就恭喜大家数据服务的配置我们就是做好了,接下来就是对项目的依赖的下载,这块主要涉及到maven的使用,如果还,没有下载maven的同学记得赶快去下载

(2)接下来开始项目依赖的初始化过程,在项目启动的时候,我们需要先对项目的依赖包去官方的仓库里面下载(这块给大家一个提醒,如果下载过慢的同学记得去配置一下maven的国内镜像源进行下载和配置),敲入命令
mvn install进行一个项目依赖的下载。

如果到这里都执行成功,大家就可以正式的启动项目,正式启动项目之前我希望大家可以去查看自己jdk的配置是否是17,因为接下来的必须要使用jdk17了

(3)进入到TinyProApplication文件里面进行启动项目,在这之前需要确保启动了redis和mysql的服务,并且配置好了密码,然后启动项目以后我们就会看到一个提示:

4.png
这里就算证明项目的整体正式启动成功了,接下来就开始监听3000端口了。

项目启动成功以后就可以开始进行一个交互了,大家就可以进入到刚才启动的前端项目里面准备进行一个交互,账户和密码都是admin,这块是配置里面预先写好的,如果有人需要修改这个用户和角色名称,可以进到 DataInitializer文件里面找到user配置进行修改

3.二次开发的讲解

首选项目里面可以进行二次开发的地方就算,权限管理拒绝策略,以及用户的登录校验初始化配置

5.png

(1)首先就是项目的权限管理的问题大家可以看见代码里面首先需要权限校验的接口上面都会有一个

6.png
@PermissionAnnotation这个注解里面配置的就是当前接口需要用户所拥有的权限,然后这块里面底层的实现细节在aspect这个目录里面,然后里面就是对于apo的一个使用。如果大家需要给某一个接口增加新的权限大家就可以直接在接口的上面进行一个使用然后写入具体要限制的细节
比如可以写:

7.png
这块就是要求用户必须要有menu::query::list这个权限才能进入到这个接口里面进行查询操作如果大家想更进一步了解到权限管理的细节,可以去看aop的使用java里面的切面编程

(2)接下来可以看拒绝的策略,首先对于接口拒绝策略的具体控制在配置文件里面,大家可以看到

8.PNG
这块就是一个拒绝策略的开关,如果大家想开始拒绝策略就可以直接输入true这个然后就会开启拒绝策略进行项目模式,目前是默认在演示模式里面

这个里面主要分为一个演示模式和一个项目模式,在项目模式里面大家可以自由的进行控制但是在演示模式里面,有很多的功能都被禁止了,所以大家要是不能使用的话就需要先查看是否是因为在演示模式里面导致的

(3)接下来就是用户的登录校验,大家首先要明白的一个流程就是用户首先要登录,只有登录成功以后才会将token放到redis里面,然后用户登录的校验就会先去redis里面进行查询,如果查询的到就会通过校验,如果redis里面没有当前用户人的信息就会进行一个拒绝的返回,然后就会跳转到前端的登录界面里面进行一个登录。具体就是拿一个拦截器进行拦截然后对每一个请求都进行校验只有登录过的才能进行项目的操作
(4)项目的初始化整个项目的初始化都在DataInitializer.java这个文件里面,如果后续需要进行一个项目的初始化调整,比如更改初始化的顺序以及在初始化的过程中想再加载一些资源都可以在这个文件里面进行增加

9.png

在这个run方法里面进行添加,这样项目在启动的时候就会先去加载项目里面的内容然后生成一个data文件夹的,这就标志着项目以及初始化过了,不需要再进行初始化,接下来每次的项目初始化都会先去看项目里面是否有data的目录如果存在就不走初始化的逻辑了

好了讲解完二次开发以后,接下来就要进入到docker的一个部署流程,在这个之前,大家可以更具的自己的情况去看是去买一个云服务器还是自己搭建一个虚拟机环境,然后进行配置,我在视频里面给搭建演示的就是在自己的虚拟机里面进行一个docker的部署和调用

4.docker的部署讲解

首先要了解在进行docker部署的时候,自己的容器文件里面的内容是否创建好了,以及对应的docker-compose.yml的一个配置

再检查完这些内容以后就要进入到我们的一个docker的部署流程环节,其实本质上也很简单就是进入到项目的文件夹目录里面,然后直接执行docker compose up -d这个命令以后,等待下载,但是下载的过程里面会有很多的问题比如下载过慢问题

(1)将项目的文件上传到服务器上面

10.png

然后进入当前目录大家可以看见,项目里面有两个文件一个是Dockerfile另一个是docker-compose.yml着两个文件是我们必须要的文件,进入进去看见

11.png

里面就是一些配置比如mysql的地址以及redis的地址,都是对应着我们即将启动的容器名称

(2)接下来就开始正式的启动docker-compose.yml文件,使用命令docker compose up -d启动成功以后就可以进行前端端口的配置映射到线上的docker地址,方便未来的开发
12.png

这个就是启动成功了,大家可以看映射的地址进行修改前端的配置了

5.本次参加开源之夏的感受和收获

在参加完这次的开源之夏以后,我最大的感受就是第一次有一个整齐的计划和老师还有别的学校的同学们可以一起开发一个软件,让我还没出社会的时候就已经拥有了独立开发的经验和经历。其次就是老师的辅导和社区的教导让我真的成长了很多,我特别感谢开源之夏和+OpenTiny社区对我的帮助,最后谢谢我的导师(真的很牛),他也很耐心的教我,特别感谢名字的话就不说了,不然以后有人烦他去了

谢谢大家我真的很珍惜这次机会,谢谢开源之夏,谢谢OpenTiny社区,谢谢导师,那我的这次开源之旅就结束,但是我相信只是暂时,我以后还会继续投身到开源里面,也希望可以帮助更多的人

关于OpenTiny

欢迎加入 OpenTiny 开源社区。添加微信小助手:opentiny-official 一起参与交流前端技术~

OpenTiny 官网:https://opentiny.design
OpenTiny 代码仓库:https://github.com/opentiny
TinyPro 源码:https://github.com/opentiny/tiny-pro
欢迎进入代码仓库 Star🌟TinyEngine、TinyVue、TinyNG、TinyCLI、TinyEditor~
如果你也想要共建,可以进入代码仓库,找到 good first issue标签,一起参与开源贡献~

[庆祝]hello 大家 打扰发一个内推贴:

目前公司招聘 后端/安卓/IOS 开发
公司介绍:Traveloka 是东南亚领先的科技公司,总部位于新加坡,提供旅行、生活服务等综合平台,业务遍布多个国家。

岗位要求:
5 年以上软件工程经验,专注后端开发领域,精通 Go, Java, Python 中的至少一门语言
能深入后端服务开发,确保高效性、可扩展性和可维护性
具备设计可扩展、可维护架构的经验
持续学习热情(涵盖技术、产品及相关领域)
对产品和任务具有强烈责任感和主人翁意识

岗位待遇:薪资可媲美大厂,base*16 薪,公积金顶额交,补充医保
其他福利:午餐餐补,旅游津贴和运动健身补贴

工作地点:深圳/上海

✅️ 没有年龄歧视
✅️ 双休 朝九晚六不打卡
✅️ work life balance 不加班 15 年假起步,12 天带薪病假
✅️ 具备阅读与书面英文能力,能进行基本沟通

简历可发至: [email protected]

后端开发日常少不了排查慢 SQL 。平时我都是用 mysqldumpslow 或 pt-query-digest 来分析日志,但命令行看着太不直观。 于是我写了一个可视化小工具,可以把慢日志结果直接展示成表格,并支持参数排序( Top 10 ):

c:访问次数

l:锁定时间

r:返回记录数

t:查询时间

al:平均锁定时间

ar:平均返回记录数

at:平均查询时间

在线体验地址: http://tool.linger.host/tools/mysql-analysis