我是3y,一年CRUD
教训用十年的markdown
程序员长年被誉为职业八股文选手
开源我的项目音讯推送平台austin仓库地址:
音讯推送平台推送下发【邮件】【短信】【微信服务号】【微信小程序】【企业微信】【钉钉】等音讯类型。
- https://gitee.com/zhongfucheng/austin/
- https://github.com/ZhongFuCheng3y/austin
明天来跟想聊下大家很关注的一个问题:「搞完Austin音讯推送平台要花多长时间?」
这个问题我被很多股东问过,大多数都是想要将Austin音讯推送平台写进简历上,想要晓得在秋招前能不能给整明确,整进去。
我在Austin的群也看过有个小伙间断好几天在群里问,想晓得搞完要多久,这个零碎难不难,适不适宜在校的。
说白了,就是想要在心里有个底。这种问题很失常,我在正式工作前也想晓得要达到实习/工作须要什么技能。
不过,我给不了具体的工夫,这对我来说挺难的。因为每个人的学习工夫、所把握的根底是不同的。像我在大学的时候,我早上8点去图书馆,早晨9点从图书馆回宿舍,我也不晓得你是不是跟我一样的。
还有就是可能你就刚刚整完SpringBoot
,还没有做过任何我的项目,对很多技术都还没了解好。这样即使我文档很全了,但对于这部分同学来说,门槛还是绝对较高。
而如果你曾经有过Redis/Kafka
这种根底了,只是Flink
/xxl-job
这种中间件没怎么用过,可能晓得它们是干啥的,但不晓得原理。那在这种条件下,上手我的项目的门槛又绝对较低点。
也有在滴滴的、腾讯的工作几年了,把README
文档刷一遍,就能间接去看代码的整个流程了。尽管会对细节有很多疏漏,但毕竟架构的见识和工作教训摆在那,上手会快很多。
它适不适宜在校生?必定是适宜的。它不像商城零碎要熟悉业务细节,有各种的商品信息。它不像广告零碎要理解各种的专业名词才能看懂业务,广告零碎有各种专业名词CPT
/CPS
/CPC
/CPM
/ROI
/CVR
...
Austin音讯推送平台外围性能是很好了解的,就是推送各种渠道的音讯。而推送音讯为什么能是一个平台,只是咱们围绕着外围性能的根底上加多了很多根底建设,它的存在不再是一个小性能,所以它就是一个音讯推送平台。
每个公司简直都会有发送音讯的需要,也简直都会有相似的封装。Austin音讯推送平台的架构和解决方案是通用的,跟别的公司相比只在于这个推送零碎它的规模以及所提供的平台能力差异性。
「搞完Austin音讯推送平台要花多长时间?」
以我为例吧,我过后接手音讯推送平台到相熟它大略花了两个多月工夫,一方面我过后刚实习,技术的确也就那样,在生产环境没用过JSON
,没用过MQ
,没用过Redis
。另一方面,文档的确没有像我当初的那么齐全,生产环境下的代码通过了几代共事的迭代,代码格调差别也挺大的。
不过这两个多月不意味着我对这个零碎就一目了然了,我只是把握了整个推送音讯的流程,很多发送渠道的细节还是不懂的。
比方以前的小程序音讯推送须要有下发凭证(formId
)能力对音讯下发,这是我起初对小程序音讯迭代的时候才晓得的。比方对于push告诉栏音讯它的链路非常长,咱们做了一整套打点体系,但因为迭代和交接的问题,这个链路也是前面才缓缓摸索进去哪些是要害的地位...比方对于短信计费原来是要把发送凭证+手机号能力产生惟一的key,不然统计就会乱掉了...
话又说回来,如果把音讯推送平台写在简历下来面试。以我的教训,面试官并不在意某个渠道的音讯下发细节(除非他也是搞音讯推送的),更多的关注是零碎的架构和整体的流程,就没遇到过须要针对某个音讯渠道做过多解释的。
通过我的迭代,当初Austin音讯推送强依赖MySQL
/Redis
和Kafka
。对于MySQL
和Redis
来说,差不多是每个我的项目的标配了,而Kafka
后续我可能会思考形象进去由你们本人适配对应的MQ实现,MQ在这个场景下还是有必要的。
在面试前更多的是筹备MySQL
/Redis
和MQ
这几块技术栈,实践上中间件在公司都有专门的人负责,但这几个的确咱们在日常开发中用得十分多,倡议多去看看原理和源码。
像分布式配置核心、分布式定时工作、分布式计算引擎、分布式日志框架、监控告警框架这种你们要是对哪个相熟的,就写上本人相熟的框架。如果不相熟的,面试的时候简略提一嘴流程就好了(倡议去看看这些框架的设计思维)。
最初不负责下个论断吧:
1、如果你已经做过些小的我的项目,理解MySQL
/Redis
和MQ
的应用,大略三周到1个月+工夫能对我的项目有所理解
2、如果你没做过小我的项目,只是刚学完SpringBoot
,起码2个月+工夫能对我的项目有所理解
3、如果你曾经理解过各种的中间件(分布式配置核心、分布式计算引擎),在工作中也并不齐全是后盾的CRUD。置信我,你那时候就不会问要多久能力搞完这个音讯推送平台。
很多时候咱们做一件事之前都是充斥着未知,但如果未知的老本不高的话,倡议先口头起来!始终犹豫不口头,相当于什么都没做。
举荐我的项目
如果想学Java我的项目的,我还是强烈推荐我的开源我的项目音讯推送平台Austin,能够用作毕业设计,能够用作校招,能够看看生产环境是怎么推送音讯的。
开源我的项目音讯推送平台austin仓库地址:
音讯推送平台推送下发【邮件】【短信】【微信服务号】【微信小程序】【企业微信】【钉钉】等音讯类型。
- https://gitee.com/zhongfucheng/austin/
- https://github.com/ZhongFuCheng3y/austin