分享

再开一个新组件项目,这次和多线程相关!

 小傅哥 2024-05-13 发布于北京

作者:小傅哥
博客:https://

沉淀、分享、成长,让自己和他人都能有所收获!😜

大家好,我是技术UP主小傅哥。

时至今日,小傅哥已经在职场工作了10年+了,最近的一次职场合同也签了终身合同。工作这么多年,一直都很顺利,既没有受到卷影响,也没有受到每年都喊的”寒冬“影响。因为我学会了如何走到腰部以上!

走到腰部以上有什么秘诀?

说白了,咱们这么多人的地方,哪个行业都挺卷的。不拿出点本事走到腰部以上,自然就是感受到寒冬、不好过。而我看过的大部分伙伴,在职场中只是完成业务开发,那么1年、2年、3年,真到要晋升、跳槽、述职、答辩的时候,会发现自己哪哪都讲不出东西。

而这就是我的「法宝」,从一开始工作,就不只是完成业务诉求,还不断地创新和做各类的组件,在一次次锻炼中让自己具备承接任何事项的架构和开发能力。

就像我们工作中所需的JSON序列化组件监控组件熔断组件缓存扩展组件ES-ORM组件慢查询监控组件IDEA Plugin创建数据压缩组件等等,一开始根本不是有专门的团队做的,而是有一个喜欢创新的人自己独立完成的,在扩展到各个部门使用。那晋升怎么会少的了这个人,又怎么会让他感受寒冬。

这样的技术类组件小傅哥已经做了很多,今天在给启动一个新的《动态线程池组件》美团到店2020年,就有一款这样的组件分享,今天小傅哥教你如何手把手开发。

文末获得5个业务项目 + 5个组件项目,1个源码学习,4套基础教程,帮助大家提升编程能力。

一、能学到啥

工作这么多年我发现,那些有晋升的,加薪多的,没有一个是不造轮子的!一直写业务的,踏实写业务的,就只能排队等着安排了。是因为做一些组件轮子,解决的是所有人的共性问题,这个价值非常大。并且在组件项目中你能掌握很多知识,如;

  • SpringBoot Starter 的设计和实现手段,以一个什么入口方式加载和启动组件。
  • 线程池核心信息的获取,核心线程数、最大线程数、活跃线程数、队列类型、队列任务数、队列剩余可用任务数,通过这些信息的学习和开发,也会更多的了解线程池。
  • 设计 Redis 版本的注册中心,通过 SDK 上报方式到 Redis 注册中心,做统一的管理,让各个接入动态线程池的组件都能统一管理。
  • 掌握 Redis 的发布订阅能力,通过推送指定的主题,让对应的应用上的 sdk 监听和处置线程池。
  • 定时任务 Scheduling 在组件中的启动和使用。组件项目与日常业务项目不同,不能全都是硬编码
  • 简单前端页面的设计和开发,管理动态线程池。以及开发测试工程验证线程池使用。

二、项目介绍

本次带着大家做的这款动态线程池组件项目,也是各个中大厂中都非常常见的组件能力。通过这样的学习,以中大厂的经验补充自身的技术积累,让自己的简历和职业生涯都有东西可讲。

我们知道,线程池(Thread Pool),是一种基于池化思想管理线程的工具,用于降低资源消耗、提高响应速度、提高线程的管理性。池化技术的引入,可以有效的减少线程频繁申请/销毁和调度所带来的额外开销。对于池化思想,我们还能看到;内存池、连接池、化粪池。

但在实际的工作中,线程池使用的场景非常多,但线程池的参数并不好一次就配置好,同时需要做监控处理,知道整个线程的消耗情况。根据IO密集型,CPU密集型不通过的任务差异,做压测验证调整。所以有一款动态线程池是非常重要的。

1. 查看线程池

2. 修改线程池

3. 线程池工程

有了这一套组件的学习,你可以搭配到任何一个你做的业务项目中使用。无论是在公司中,还是在面试写简历里。都能让你展示出非常不错的技术体现度。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多