精华内容
下载资源
问答
  • 电商项目-简历描述篇
    千次阅读
    2022-04-11 19:38:23

    1.项目名称

    XXX新零售电商平台

    2.项目描述

    该项目是基于SpringBoot/SpringCloud为重庆澳欧惠品构建的一款本地B2C新零售电商平台,客户通过前台浏览和购买商品,管理员通过后台对平台、商品、用户进行管理。主要出售日常百货,地区特产项目使用分布式框架,涉及后台管理员服务、地址服务、物流服务、广告服务、商品服务、商品类别服务、品牌服务、订单服务 、购物车服务、首页频道服务、公告服务、留言服务、搜索服务、会员服务等。

    3.技术栈

    Springboot+SpringCloud+RabbitMQ+Redis+ElasticSearch+Xxl-sso+Lcn+Nginx+七牛云+Swagger2+Mysql+Maven+GitLab+Docker

    4.责任描述

    会员注册:客户端(移动端、PC端)调用会员服务注册接口进行会员注册,使用NatApp进行内网穿透,利用开源框架WxJava框架进行二次开发,会员先关注公众号,在公众号号接收验证码,并把验证码缓存Redis中,有效期3分钟,会员注册校验验证码是否一致,同时会员注册密码加盐加密MD5和BASE64散列存储。

    会员认证:使用XXL-SSO框架实现微服务平台单点登陆开发,搭建并二次开发XXL-SSO的中央认证服务器,改造认证服务器的认证界面,同时植入认证验证码功能,整合各个门户例如首页频道、搜索频道等SSO客户端。基于cookies实现,虽然 cookies本身不跨域,利用XXL-SSO框架实现跨域的进行SSO认证。

    广告管理:运营商广告类别管理、广告管理,使用七牛云进行广告图片分布式存储。首页频道服务广告的数据使用Redis进行缓存预热,开发并设计广告缓存系统设计,使用延迟双删、以及RabbitMQ缓存清除重试保证Redis缓存一致性。

    订单管理:开发并设计下单流程,使用Redission实现分布式锁防止库存超卖,使用开源框LCN进行事务的一致性操作,保证商品服务减库存,订单服务新增订单。使用雪花算法进行在高并发分布式全局订单ID的生成.

    更多相关内容
  • 一方面因为这几天工作忙,占了写作的时间。另一方面是在准备这篇文章各种素材,今年是最难求职年,我希望通过这篇文章能帮...1. 简历篇如果把自己看成一个产品,那么简历就是说明书。写简历看似简单,想写好实则不容...

    点击上方码农沉思录,选择“设为星标”

    优质文章,及时送达

    读者大大们好,好几天没更新了。一方面因为这几天工作忙,占了写作的时间。另一方面是在准备这篇文章各种素材,今年是最难求职年,我希望通过这篇文章能帮大家提高求职成功率。

    这篇文章分为简历篇、面试篇、谈薪酬篇,包括了找工作过程中各个环节的技巧和防坑指南。

    1. 简历篇

    如果把自己看成一个产品,那么简历就是说明书。

    写简历看似简单,想写好实则不容易。一份好的简历能帮你在一堆简历中脱颖而出。

    以前写过一篇写简历技巧的文章,为了方便新读者,这次是把那篇文章的精华浓缩了一下,又补充了点新内容。看过之前文章的老读者可以快速浏览这部分。

    1.1 个人照片

    关于简历里放不放照片的争论,从来就没停过。虽然程序员不是靠脸吃饭,但我还倾向于放照片。

    通常我在看简历的时候,如果看到一个小伙子的照片很精神,我可能就会想:他写的代码八成会很整洁吧。

    没错,照片是别人对你的第一印象,正常人都喜欢美的东西,一张让人看着舒服、甚至是眼前一亮的照片,能增加别人对你的好感。

    所以我个人建议,只要你长得对得起观众,就可以在简历里放照片,可以适当美颜一下,但是别搞成了“照骗”。

    1.2 基本信息

    个人基本信息,就是姓名、学历、邮箱、电话等,这部分正常写就好了,我只提醒大家别漏了以下几个面试官眼中的加分项。

    • 一般人只在个人信息里写学历,不写毕业院校。如果你的学校名气大,你可以在这部分写上毕业院校。
    • 如果你有一个和岗位相关的的博客、Github、公众号,别犹豫,也写在这里,能显得你爱学习、爱总结分享。
    • 再说一个技巧,拿公众号举个例子,如果你比较高产,在写了公众号名称之后,加一句说明,例如:50 篇原创技术文章。别小看这句说明,能锦上添花。

    1.3 自我评价

    自我评价一定要花时间认真写!

    这是对你自己的一个全方位的说明,既是重新认识自己,又可以让对方知道你的长处、目标、价值观。而且你也不白写,以后面试过程中的自我介绍也能用得上。

    我看到大部分的自我评价基本是这样“为人吃苦耐劳,责任心强,工作踏实努力,学习能力强,有团队合作精神……balabalabala”。

    哎,我真怀疑这是在网上搜了搜,然后把这些词又组合了一遍。看这种文字真是提不起兴趣,没啥说服力,谁都会这么写。你就不能多来点例子、数字?

    看几个正面句子:

    • 7 年 Java 开发经验,5 年互联网行业经验,自认达到高级工程师的水平,希望以后能成长为架构师。(有目标、规划)
    • 敏建开发的忠实粉丝,单元测试驱动开发的实践者,会主动重构代码,有代码洁癖。(有良好的编码习惯)
    • 爱看技术书籍,一年看 10 本书左右,最近在看《领域驱动设计》、《企业应用架构模式》;爱学习,今年已经在极客时间上完成 5 门付费课程。(爱看书、学习)
    • 2 年团队管理经验,团队规模 15 人,团队气氛和谐,成员离职率远低于公司平均水平。曾被评选为公司优秀团队。(团队带的还不错)

    1.4 技能水平

    曾经一次面试,对方简历写的“精通Spring、Redis……”,大概列了长长的十几项精通。结果面试一问,发现太水了,你这是重新定义了精通吧。

    熟悉、掌握、精通这类词,没有统一的标准,别乱写,别让人觉得你是吹牛。

    如果是新人,自己心里没底,建议可以这么写:

    掌握技能:
    开发语言:xxx、xxx、xxx
    后端框架:xxx、xxx、xxx
    数据库:xxx、xxx、xxx

    老程序员,你觉得可以写精通就写,如果你会的技能有一大堆,别忘了要突出重点。啥是重点?一、岗位明确要求的、匹配度高的技能。二、有亮点的技能,例如:AAA 框架 3 年使用经验;读过 BBB 源码;发表 5 篇 CCC 相关文章。

    1.5 项目经历

    项目经历是面试过程中重点问的,大家写的时候注意以下几点:

    • 项目经历在这里是两个词,项目和经历,一般人只写项目,忽略了经历。经历是你做了什么、你怎么做的、做完后的结果。例如:项目中的哪些部分是你做的?你是不是核心人员?自己干,还是带团队?做完你有什么成长?项目交付之后怎么样?
    • 如果你做过的项目很多,要控制项目数量,否则噼里啪啦写好几页项目,面试官会看不到重点。太早的、太小的项目就别写了,挑规模大的写,挑你参与多写,挑和岗位更匹配的写。
    • 项目名称不要写辨识度低的英文缩写,你写个 ERP 还都能看懂,如果你写个 SCF 看起来好像很洋气,但是鬼知道这是啥意思。

    1.6 简历模板

    简历模板简约大方就行了。

    我看过那么多简历里,有些简历太花哨了,有的还配了夸张的封面,这种简历刚打开就想赶紧关上。

    求职者初衷是想让自己的简历更好看,和其他简历与众不同,但是有时候炫过了头,就变成 zuo 了。尤其是新人,容易在这方面发力过猛。

    如果想找不到工作,就用下图这种试试。

    c65140b99d6a1cbfe0973fed0fdf1cd1.png

    1.7 其他

    以上几部分最重要,要多花心思,其他部分正常写就好了。简历别弄虚作假,一旦被揭穿,损失太大。

    简历的页数,我的观点:1 页略单薄,2 页刚刚好,尽量别超过 3 页。

    再额外说一下新人怎么写简历。新人,尤其是毕业生,觉得自己会的太少,没有内容可写。这种情况,需要你多收集一些目标岗位的任职要求,根据这些信息补强自己,再放到简历中去。例如,你发现岗位里要求 git、maven,如果你不会,就花时间赶紧突击一下。另外,可以在简历里多写写在校期间的获奖、实践活动,突出自己爱学习、上进这些优点,让面试官觉得你是一个潜力股也是可以加分的。

    总结一下,简历里要多摆事实,少说空话,展示自己的长处。想写好简历,要有点用户思维,HR 和 面试官就是用户,站在用户的角度考虑问题,想办法让你的简历打动用户。

    2. 面试篇

    本来面试篇是打算写技术面试题的,后来琢磨了一下,不同水平、岗位的程序员对面试题的要求不一样,众口难调。于是,决定写一些面试过程的基本常识,常见的问题怎么回答,还有一些你可能不知道的坑。

    写到一半我就后悔了,越普适的越不好写。写太细了,大家看着啰嗦;写太粗了,又怕说不清楚,好难!

    2.1 最基本应该做到

    基本常识里最基本的就是守时,面试这么重要的事情你都迟到,面试官怎么相信你能管理好时间?

    另外就是注意基本礼貌,作为面试官我遇到过不少这种现象:我走进面试房间的时候,求职者坐在椅子上一动不动,连屁股都不抬一下。你是不是应该起身打个招呼?

    还有,求职者多带几份打印好的简历,有备无患。特别是有时候一轮面试里,你会面对多个面试官,万一人多简历少,你带的简历就派上用场了。

    以上这些是我面试中经常碰到的现象,所以提醒大家注意一下。至于衣着啥的,就不说了,绝大部分人都知道。

    2.2 自我介绍

    一般面试都有这个环节,好好准备,提前练习,别回答的时候支支吾吾,或者啰嗦半天说不出重点。

    介绍的时候时间控制在 3 分钟以内,吐字清晰,至于内容可以参考简历里的自我评价,至少包括以下几部分:

    • 我是谁——我叫 xxx,目前就职于京西公司,岗位是 Java 高级工程师。
    • 我的技能——我从事 Java 开发已经 6 年了,有 3 年电商行业的开发经验,参与了京西公司海外电商项目,在项目中我主要负责 aa、bb 功能。
    • 我最合适——之前听 HR 介绍,贵公司也要做海外电商,我觉得我的经验能用得上。而且我也希望能完整经历海外电商从零到一的过程,这对我来说也是一个挑战、一个成长的机会。
    • 其他优点——我平时喜欢看技术书籍,最近在看《xxx》。

    面试前几分钟的好印象非常重要,好好准备你的自我介绍吧。

    2.3 别不懂装懂

    面试中遇到没听过的名词、问题,别不懂装懂,你以为面试官傻吗,根本糊弄不过去,还不如诚实点说不懂。

    如果你不甘心说不懂怎么办?

    有一次我面试一个新人,我问你用过 git 吗,他想了想说没用过,然后让我给他介绍一下,介绍完之后,他说之前一直用 svn,说了说 svn 的操作。到此为止,我觉得他这个问题回答的还 ok。但是,这还没结束,他又问我 git 比 svn 好在哪。我简单说完之后,他说 git 听起来不错,之后会主动去尝试一下。

    你看,一个难题就这么被化解了。我对他的回答很满意,后面的面试过程也很顺利,最终录取了他。

    下面给大家说说经常被问到的问题。

    2.4 为什么从 xx 公司离职

    离职原因这个问题,几乎 100% 会被问到。

    被问了之后,不要抱怨前公司、前领导,不管你经历了啥,不管你有多少委屈都不要吐槽,面试官没法给你评理,只会担心将来你是不是也会这么说他,惹不起惹不起。

    也不要说因为薪资低,对方会怀疑你的稳定性和对公司的忠诚度。

    被裁员这个原因,最好也别说,大面积裁员还好解释,否则为什么裁你不裁别人?

    合理的答案,例如:想去更大的公司发展;公司方向调整,和个人的发展方向不符;公司把研发部门迁到其他城市。

    2.5 能接受加班吗

    遇到这个问题,有些人毫不犹豫说“能”,好像这么回答会证明自己能吃苦、不怕累。如果问“能以公司为家吗”,估计也会有人说“能”。我表示服气!

    你应该先问一下公司加班的时长和频率,如果工作需要的合理加班,当然可以接受。如果公司以加班为荣,为了加班而加班,你为啥要接受?

    当然,我承认,现在互联网公司普遍加班。如果这家公司你非常想去,这家也有加班文化,看在钱、或者镀金的份上,从就从了吧。

    2.6 你的缺点是什么

    首先说明这是一个坑问题,这个问题我是不会问的。

    回答的时候,不用把优点包装成缺点,例如“我的缺点是追求极致,经常用业余时间把工作力争做到最好”,太假了,你这抖机灵以为面试官是白痴吗。

    更不要说不利面试通过的缺点,例如你说“我比较闷,不擅长和人沟通”,嗯,我看出来了,你确实不擅长沟通。

    我告诉你怎么回答:

    • 说对方知道的缺点——如果你是个工作 5 年的工程师,可以这么说“自己的开发经验还可以,但是产品思维还不够,有待加强”。这样回答不会被扣分。
    • 说正在克服的缺点——例如“我刚毕业一年,技术还比较弱,但是我正在网上学技术课程”。

    2.7 你有职业规划吗

    这个问题我经常问,但是大部分人都回答不好。

    我问这个问题就俩目的:

    一、你想成长为什么样的人?是成为一个架构师,或者是一个技术管理者,又或者是一个行业专家……如果这个目标不清晰,你是在为了什么而努力呢。如果你觉得将来太久远,现在想不明白,好,没问题,三年之后的目标总可以吧。

    二、万一有缘我们成了同事,作为你的上级,我清楚你的目标之后,我乐意在工作上给你提供点机会帮你实现目标。你能成长,我也开心啊。

    不为了面试,为了自己,也建议大家认真想想这个问题,想的时候要结合自己的兴趣和特长。

    2.8 你有什么想问的吗

    首先恭喜你,如果被问到这个问题,你这轮面试基本有戏了。

    “没有想问的了”,这种回答,差评!

    面试是双向选择,除了公司选择你,你也要选择公司。之前别人把你都了解透了,你还不借这个机会赶紧问问公司的情况,省的你将来入职之后再后悔。

    怎么问也是有讲究的:

    • 薪酬福利不要问太细——毕竟你还没得到这份工作,你说你打听饭补多少钱合适吗?“一年十几薪”这类可以问,大钱得关注一下。
    • 能在网上查到的不要问——兄弟,你来面试之前,不做准备工作吗?
    • 对方回答不了的不要问——曾经一个面试者,问我公司的战略是啥,我竟无言以对,都是我的错,我职位太低。
    • 可以问问工作内容、有没有培训等等这种是你看重的问题,同时也显得你对这份工作有兴趣。
    • 我目前听说过的一个 nb 的问题,是这么问的“你们为什么喜欢在这工作?”,真是个好问题,你细品一下。

    接着说说面试中的你要防备的坑,看起来是让你面试,实际上心怀鬼胎。

    2.9 面试是骗你帮他们解决问题

    说一个网上的段子:

    某公司的数据库忽然坏了,公司没人能搞得定,老板很着急,把 HR 叫到办公室说:你赶紧发布一个 DBA 职位,年薪 100 万。面试的时候就问他们怎么恢复我们的数据库,另外,切记,不管他能不能答出来,都把他拒了!

    虽然是个段子,但是现实中真有类似的事。面试过程中就问一个问题,问的特别细,除了问你的解决思路,恨不得直接让你现场操作了。

    还有的面试直接让你做一个东西,你花了好几天做出来了,然后让你把代码也交出来,然后就没有然后了。

    2.10 面试是为了从你口中套取机密

    这个和上面那个套路差不多。

    我当时做游戏的时候,经历过一次。面试刚开始还算正常,后面高潮就来了,问我日活用户数、收入流水、怎么买量的、买量成本、用户特征……

    这种关键信息肯定不能说啊,我感觉不对劲,后来找个借口就溜了。

    2.11 培训机构以招聘的名义变相招生

    看一个网友的经历:

    52aab5796795cd521fd1b5450ac9a294.png

    这种坑的普遍套路是:
    1、发布大量招聘需求,且招聘的范围很广。
    2、无论是本科、专科还是高中文凭,只要投递简历,均会通知参加面试。
    3、面试时,会有一些人伪装成部门经理对你的技术进行打压,并指出你的众多不足。
    4、洗脑让你参加“岗前培训”,并保证培训完立即上岗,培训花费从工资里扣。
    5、签订“岗位培训合同”(实际上是报名协议,往往带有贷款协议!)。
    6、在你一脸懵逼的情况下,报上了名,背上了债。

    毕业生、想转行当程序员的,一定要小心这个。

    3. 薪酬篇

    如果把自己看成一个产品,那么薪酬就是价格。

    实话实说,我非常不擅于谈薪酬,之前很多谈薪酬的经历都是血泪史。为了写这部分内容,我请教周围好几位做 HR 的朋友。

    3.1 最基本的

    照例先说一些最基本的常识。

    首先别太早打听薪酬,面试结果还八字没一撇的时候,你就问薪酬,会引起对方反感。正确的时机,应该是在面试基本成功的时候。

    其次,不要虚报当前收入。你为了多要点薪水,结果脑子一热,多报了当前收入,后面让你提供银行流水、前公司薪资证明的时候,你就傻眼了。谎言圆不上,你可能就铤而走险,伪造银行流水、薪资证明。还是那句话,造假成本太高,一旦被识破。。。。。。出来混,迟早要还的。

    很早之前我特别不理解 HR 讨价还价的行为,为千八百块的至于么,都是公司的钱。后来明白了,减少人力成本是 HR 的重要职责,也是她们的绩效。

    3.2 提前了解行情

    想薪酬谈的好,准备工作不能少。

    谈薪酬之前,要先了解一下行业中和你职位相似的薪资水平。前几天网上热传一张图:大厂新入职员工职级对照表。这张图来自于民间,虽然不是很准确,但是还算靠谱。

    a3fdd16f38e16636b6598200c730a27b.png

    谈薪酬之前,最好能了解一下公司的奖金、分红、福利等等,了解的越多,对之后的谈薪越有帮助。

    很多人薪酬谈不好,都是吃了信息不对等的亏。

    3.3 我要多少合适

    HR 问期望收入的时候,大多数人都很纠结:要高了,怕对方觉得你狮子大开口;要少了,自己又不甘心。

    报期望收入的之前,你需要先知道:

    • 很多公司有规定,没有特殊情况,加薪幅度一般不超过 30%。
    • 不要根据月工资去谈薪酬,把奖金、分红啥的都算上,根据年收入去谈。
    • 把期望收入上浮一点,再报给 HR,给双方留一个谈判空间。

    综合以上几点:假如你现在年收入 20 万,结合之前了解的行情,你期望收入是 25 万,这样你可以报给 HR 最低期望 27 万。经过一番讨价还价,最终在 25 万双方达成一致,即达到了你的心里预期,也满足了 HR 压价的成就感。完美!

    3.4 该坚持就坚持

    面对压价,很多人坚持不住。如果你感觉自己面试表现好,相信自己值这个价钱,就算错过这家公司也不后悔,那么该坚持就坚持。毕竟跳槽是最好的涨薪机会,错过了就错过了。

    如果你现在的工作是 965,新工作是 996,工作时长一下多了 80%,这么一算跳槽之后,时薪还低了。面对压价不坚持一下,你对得起自己吗?

    再一方面 HR 除了压价,也有招聘指标,招到一个理想的员工不容易。

    3.5 月薪是不是分基本工资和绩效

    很多公司的月薪分为基本工资和绩效工资两部分,比如 8000 是基本工资,2000 是绩效,看起来月薪是 1 万。但是每个月每个人都有一个绩效系数,真正的月薪是 8000 + 2000 * 系数,如果系数是低于 1 ,月薪就到不了 1 万。

    你们在谈薪酬的时候,要问清楚月薪是怎么组成的,如果包括了绩效,你要注意了:

    • 基本工资谈多点,绩效谈少点。别等到入职才发现月薪里面,一半基本工资,一半绩效。
    • 是不是这家公司有压绩效的习惯,是不是很多人的绩效系数都低于 1。

    3.6 写到合同里

    HR 压价时候有一个惯用手段,说“我们这里一年 18 薪”。这句话的意思就是:月薪虽然不能给你那么多,但是一年发 18 个月工资,年收入能满足你的预期。

    这时候你就问她,18 薪能不能写到合同里?如果不能写到合同里,这么说没意义,公司发多发少就看公司的良心和盈利情况了。

    股票、期权、奖金等等都是一样,不管对方怎么口头承诺,一定要求写到合同里。不要不好意思提这种要求,没有合同保证的承诺都是嘴上跑火车。

    3.7 谈好之后,不要再涨价

    有一个求职者谈好薪酬之后过了一天,又说工资希望能再涨 2000,理由是打听了一下公司同事的工资,觉得自己的工资偏低。

    首先,私下打听工资,这就是职场大忌。再说了,打听的消息够多够准吗?工资偏低这个判断准确吗?

    其次,谈好之后又涨价,这不是得寸进尺吗。结果工资没涨成,这份工作也没了。

    这种因小失大、得不偿失的事千万别干。

    水平有限,薪酬部分暂时先写这么多了,祝你们以后薪酬越来越高。如果认为写的不好,你告诉我,我去找那些 HR 朋友算账。

    4. 吐槽面试官

    我是面试官,也是求职者,接下来我要站在求职者的立场,吐槽一下面试官和公司。

    • 面试官不守时。求职者按时到了,结果等面试官等好久,真是“等待一小时,面试一刻钟”。
    • 面试官过于强势。有的面试官问问题,穷追猛打,非要把对方问到答不出来,借机打压对方。碾压别人的快感那么爽吗?
    • 面试官不尊重人。面试是双向选择,互相尊重。面试官不要太傲慢,不要打听求职者隐私。别忘了,面试官也代表了公司的形象,你这么做合适吗?
    • 多轮面试,重复问答。恨不得 3 轮面试,问的问题都差不多,更惨的是 3 轮面试要去 3 趟公司,你试试啥感觉。能不能把面试时间集中一下,把面试官集中一下。
    • 面试造火箭,工作拧螺丝。招人按照架构师的标准来,入职后写增删改查、if else。
    • 如果过了,就早点通知。求职者面试完都想早点知道结果,不通过不通知也就算了,通过了还拖好久才通知。提高点效率,早通知早让别人踏实。另外,拖太久,等你通知人选的时候,没准人家已经入职其他公司了。

    到这里,这篇文章就快结束了。祝大家以后都能找到好工作,要到好薪水。

    最后,劝大家除了看文章,还有多面试,多积累经验,找工作的时候不要眼光太高只盯着大厂,看不上小公司。不是只有那些大厂才是好公司,也不是所有的小公司都很 low。我就知道一些闷声赚钱的小公司福利待遇都很好,还有的小公司是大厂大佬出来创业的公司,如果你能加入这两种小公司,你真是赚到了。

    最最后,这篇文章写的很辛苦,有的知识我也不拿不准,网上查、找人问,花了很多精力,连续两天写到凌晨 4 点多。不过写完之后,自己收获很大,自认为质量还不赖。如果你们觉得看完有收获,帮忙点个转发、在看。

    eabc4b8a48a31a0e48e00cfea3b87301.png

    文章不错的话记得点个在看哟,在看越多的话可以给大家带来更多福利

    展开全文
  • java项目简历

    2015-11-15 18:45:43
    java项目面试需要的一些项目,里面包含各种案例,很实用.doc
  • Java项目经验汇总,简历项目素材。Java项目经验汇总,简历项目素材。
  • java电商项目描述面试,看完跪了

    千次阅读 2021-07-21 19:19:56
    Spring全套教学资料 Spring是Java程序员的《葵花宝典》,其中提供的各种大招,能简化我们的开发,大大提升开发效率!目前99%的公司使用了Spring,大家可以去各大招聘网站看一下,Spring算是必备技能,所以一定要掌握...

    为了更好的梳理相关知识,咱们先看纯手绘知识体系图

    1.1 Kafka知识体系大纲

    image

    由于我手绘这些知识体系大纲是用的xmind软件,无法上传,所以都以截图的形式展示,细节处不清楚(毕竟图片形式有限)

    1.2 RabbitMQ知识体系大纲

    image

    1.3 RocketMQ知识体系大纲

    image

    看完知识大纲,该刷面试了

    2.1 刷刷Kafka面试

    1. Kafka的用途有哪些?使用场景如何?
    2. Kafka中的ISR、AR又代表什么?ISR的伸缩又指什么
    3. Kafka中的HW、LEO、LSO、LW等分别代表什么?
    4. Kafka中是怎么体现消息顺序性的?
    5. Kafka中的分区器、序列化器、拦截器是否了解?它们之间的处理顺序是什么?
    6. Kafka生产者客户端的整体结构是什么样子的?
    7. Kafka生产者客户端中使用了几个线程来处理?分别是什么?
    8. Kafka的旧版Scala的消费者客户端的设计有什么缺陷?
    9. “消费组中的消费者个数如果超过topic的分区,那么就会有消费者消费不到数据”这句话是否正确?如果正确,那么有没有什么hack的手段?
    10. 有哪些情形会造成重复消费?
    11. 哪些情景下会造成消息漏消费?
    12. KafkaConsumer是非线程安全的,那么怎么样实现多线程消费?
    13. 简述消费者与消费组之间的关系
    14. 当你使用kafka-topics.sh创建(删除)了一个topic之后,Kafka背后会执行什么逻辑?
    15. topic的分区数可不可以增加?如果可以怎么增加?如果不可以,那又是为什么?
    16. topic的分区数可不可以减少?如果可以怎么减少?如果不可以,那又是为什么?
    17. 创建topic时如何选择合适的分区数?
    18. Kafka目前有哪些内部topic,它们都有什么特征?各自的作用又是什么?
    19. 优先副本是什么?它有什么特殊的作用?
    20. Kafka有哪几处地方有分区分配的概念?简述大致的过程及原理
    21. 简述Kafka的日志目录结构
    22. Kafka中有哪些索引文件?
    23. 如果我指定了一个offset,Kafka怎么查找到对应的消息?
    24. 如果我指定了一个timestamp,Kafka怎么查找到对应的消息?
    25. 聊一聊你对Kafka的Log Retention的理解
    26. 聊一聊你对Kafka的Log Compaction的理解
    27. 聊一聊你对Kafka底层存储的理解
    28. 聊一聊Kafka的延时操作的原理
    29. 聊一聊Kafka控制器的作用
    30. Kafka的旧版Scala的消费者客户端的设计有什么缺陷?
    31. 消费再均衡的原理是什么?(提示:消费者协调器和消费组协调器)
    32. Kafka中的幂等是怎么实现的?
    33. Kafka中的事务是怎么实现的?
    34. 失效副本是指什么?有哪些应对措施?
    35. 多副本下,各个副本中的HW和LEO的演变过程
    36. Kafka在可靠性方面做了哪些改进?(HW, LeaderEpoch)
    37. 为什么Kafka不支持读写分离?
    38. Kafka中的延迟队列怎么实现
    39. Kafka中怎么实现死信队列和重试队列?
    40. Kafka中怎么做消息审计?
    41. Kafka中怎么做消息轨迹?
    42. 怎么计算Lag?(注意read_uncommitted和read_committed状态下的不同)
    43. Kafka有哪些指标需要着重关注?
    44. Kafka的哪些设计让它有如此高的性能?

    2.2 刷刷ActiveMQ面试

    1.什么是 ActiveMQ?
    2. ActiveMQ 服务器宕机怎么办?
    3. 丢消息怎么办?
    4. 持久化消息非常慢
    5. 消息的不均匀消费
    6. 死信队列
    7. ActiveMQ 中的消息重发时间间隔和重发次数吗?

    2.3 刷刷RabbitMQ面试

    1. RabbitMQ 中的 broker 是指什么?cluster 又是指什么?
    2. 什么是元数据?元数据分为哪些类型?包括哪些内容?与 cluster 相关的元数据有哪些?元数据是如何保存的?元数据在 cluster 中是如何分布的?
    3. RAM node 和 disk node 的区别?
    4. RabbitMQ 上的一个 queue 中存放的 message 是否有数量限制?
    5. RabbitMQ 概念里的 channel、exchange 和 queue 这些东东是逻辑概念,还是对应着进程实体?这些东东分别起什么作用?
    6. vhost 是什么?起什么作用?
    7. 在单 node 系统和多 node 构成的 cluster 系统中声明 queue、exchange ,以及进行 binding 会有什么不同?
    8. 客户端连接到 cluster 中的任意 node 上是否都能正常工作?
    9. 若 cluster 中拥有某个 queue 的 owner node 失效了,且该 queue 被声明具有durable 属性,是否能够成功从其他 node 上重新声明该 queue ?
    10. cluster 中 node 的失效会对 consumer 产生什么影响?若是在 cluster 中创建了mirrored queue ,这时 node 失效会对 consumer 产生什么影响?
    11. 能够在地理上分开的不同数据中心使用 RabbitMQ cluster 么?
    12. 为什么 heavy RPC 的使用场景下不建议采用 disk node ?
    13. 向不存在的 exchange 发 publish 消息会发生什么?向不存在的 queue 执行consume 动作会发生什么?
    14. routing_key 和 binding_key 的最大长度是多少?
    15. RabbitMQ 允许发送的 message 最大可达多大?
    16. 什么情况下 producer 不主动创建 queue 是安全的?
    17. “dead letter”queue 的用途?
    18. 为什么说保证 message 被可靠持久化的条件是 queue 和 exchange 具有durable 属性,同时 message 具有 persistent 属性才行?
    19. 什么情况下会出现 blackholed 问题?
    20. 如何防止出现 blackholed 问题?
    21. Consumer Cancellation Notification 机制用于什么场景?
    22. Basic.Reject 的用法是什么?
    23. 为什么不应该对所有的 message 都使用持久化机制?
    24. RabbitMQ 中的 cluster、mirrored queue,以及 warrens 机制分别用于解决什么问题?存在哪些问题?

    全部刷题的答案已经整理好,如下题所示的PDF文件了,篇幅原因就不再一一的截图了,需要看答案的可以在文末领取

    image

    看完体系大纲+面试刷题,有知识漏洞那就继续往下看学习笔记

    3.1 Kafka源码解析与实战

    第1章 Kafka简介
    1.1 Kafka诞生的背景
    1.2 Kafka在LinkedIn内部的应用
    1.3 Kafka的主要设计目标
    1.4 为什么使用消息系统
    第2章 Kafka的架构
    2.1 Kafka的基本组成
    2.2 Kafka的拓扑结构
    2.3 Kafka内部的通信协议
    第3章 Broker概述
    3.1 Broker的启动
    3.2 Broker内部的模块组成
    第4章 Broker的基本模块
    4.1 SocketServer
    4.2 KafkaRequestHandlerPool
    4.3 KafkaApis
    4.4 KafkaHealthcheck
    第5章 Broker的控制管理模块
    5.1 KafkaController的选举策略
    5.2 KafkaController的初始化
    5.3 Topic的分区状态转换机制
    5.4 Topic分区的领导者副本选举策略
    5.5 Topic分区的副本状态转换机制
    5.6 KafkaController内部的监听器
    5.7 Kafka集群的负载均衡流程
    5.8 Kafka集群的Topic删除流程
    5.9 KafkaController的通信模块
    第6章 Topic的管理工具
    6.1 kafka-topics.sh
    6.2 kafka-reassign-partitions.sh
    6.3 kafka-preferred-replica-election.sh
    第7章 生产者
    7.1 设计原则
    7.2 示例代码
    7.3 模块组成
    7.4 发送模式
    第8章 消费者
    8.1 简单消费者
    8.2 高级消费者
    第9章 Kafka的典型应用
    9.1 Kafka和Storm的集成
    9.2 Kafka和ELK的集成
    9.3 Kafka和Hadoop的集成
    9.4 Kafka和Spark的集成
    第10章 Kafka的综合实例
    10.1 安防大数据的主要应用
    10.2 Kafka在安防整体解决方案中的角色
    10.3 典型业务

    image

    image

    3.2 手写RocketMQ笔记

    第一节:RocketMQ介绍
    1.1 核心概念
    1.2 RocketMQ的设计理念和目标
    第二节:RocketMq中消息的发送
    2.1 单向(OneWay)发送
    2.2 可靠同步发送
    2.3 可靠异步发送
    2.4 RocketMQ中消息发送的权衡
    第三节:RocketMQ消息消费
    3.1 集群消费和广播消费
    3.2 消费方式
    第四节:深入消息发送
    4.1 消息生产者流程
    4.2 批量消息发送
    4.3 消息重试机制
    第五节:深入消息模式
    5.1 拉模式 5.2 推模式
    第六节:顺序消息
    6.1 全局顺序消息
    6.2 部分顺序消息
    第七节:延时消息
    7.1 概念介绍
    7.2 适用场景
    7.3 使用方式
    第八节:死信队列
    8.1 概念介绍
    8.2 适用场景
    第九节:消费幂等
    9.1 什么是消息幂等
    9.2 需要处理的场景
    9.3 处理方法
    第十节:消息过滤
    10.1 概念介绍
    10.2 表达式过滤
    10.3 类过滤
    第十一节:RocketMQ存储概要设计
    11.1 消息存储结构
    11.2 内存映射
    11.3 文件刷盘机制
    11.4 过期文件删除
    第十二节:RocketMQ中的事务消息
    12.1 事务消息实现思想
    12.2 两阶段提交
    12.3 事务状态回查机制
    12.3 代码实现
    第十三节:RocketMQ主从同步(HA)机制
    13.1 RocketMQ集群部署模式
    13.2 主从复制原理
    13.3 读写分离机制
    13.4 与Spring集成
    13.5 与SpringBoot集成
    第十四节:限时订单实战
    14.1 什么是限时订单
    14.2 如何实现限时订单
    14.3 用RocketMQ实现限时订单
    第十五节:RocketMQ源码分析
    15.1 RocketMQ整体架构
    15.2 NameServer
    15.3 RocketMQ 服务启动
    15.4 源码分析之消息的来龙去脉

    image

    image

    3.3 RabbitMQ实战学习指南

    第1章 RabbitMQ简介
    1.1 什么是消息中间件
    1.2 消息中间件的作用
    1.3 RabbitMQ的起源
    1.4 RabbitMQ的安装及简单使用
    第2章 RabbitMQ入门
    2.1 相关概念介绍
    2.2 AMQP协议介绍
    第3章 客户端开发向导
    3.1 连接RabbitMQ
    3.2 使用交换器和队列
    3.3 发送消息
    3.4 消费消息
    3.5 消费端的确认与拒绝
    3.6 关闭连接
    第4章 RabbitMQ进阶
    4.1 消息何去何从
    4.2 过期时间(TTL)
    4.3 死信队列
    4.4 延迟队列
    4.5 优先级队列
    4.6 RPC实现
    4.7 持久化
    4.8 生产者确认
    4.9 消费端要点介绍
    4.10 消息传输保障
    第5章 RabbitMQ管理
    5.1 多租户与权限
    5.2 用户管理
    5.3 Web端管理
    5.4 应用与集群管理
    5.5 服务端状态
    5.6 HTTPAPI接口管理
    第6章 RabbitMQ配置
    6.1 环境变量
    6.2 配置文件
    6.3 参数及策略
    第7章 RabbitMQ运维
    7.1 集群搭建
    7.2 查看服务日志
    7.3 单节点故障恢复
    7.4 集群迁移
    7.5 集群监控
    第8章 跨越集群的界限
    8.1 Federation
    8.2 Shovel
    第9章 RabbitMQ高阶
    9.1 存储机制
    9.2 内存及磁盘告警
    9.3 流控
    9.4 镜像队列
    第10章 网络分区
    10.1 网络分区的意义
    10.2 网络分区的判定
    10.3 网络分区的模拟
    10.4 网络分区的影响
    10.5 手动处理网络分区
    10.6 自动处理网络分区
    10.7 案例:多分区情形
    第11章 RabbitMQ扩展
    11.1 消息追踪
    11.2 负载均衡

    image

    image

    Spring全套教学资料

    Spring是Java程序员的《葵花宝典》,其中提供的各种大招,能简化我们的开发,大大提升开发效率!目前99%的公司使用了Spring,大家可以去各大招聘网站看一下,Spring算是必备技能,所以一定要掌握。

    资料领取方式:点击这里前往蓝色传送门

    目录:

    部分内容:

    Spring源码

    • 第一部分 Spring 概述
    • 第二部分 核心思想
    • 第三部分 手写实现 IoC 和 AOP(自定义Spring框架)
    • 第四部分 Spring IOC 高级应用
      基础特性
      高级特性
    • 第五部分 Spring IOC源码深度剖析
      设计优雅
      设计模式
      注意:原则、方法和技巧
    • 第六部分 Spring AOP 应用
      声明事务控制
    • 第七部分 Spring AOP源码深度剖析
      必要的笔记、必要的图、通俗易懂的语言化解知识难点

    脚手框架:SpringBoot技术

    它的目标是简化Spring应用和服务的创建、开发与部署,简化了配置文件,使用嵌入式web服务器,含有诸多开箱即用的微服务功能,可以和spring cloud联合部署。

    Spring Boot的核心思想是约定大于配置,应用只需要很少的配置即可,简化了应用开发模式。

    • SpringBoot入门
    • 配置文件
    • 日志
    • Web开发
    • Docker
    • SpringBoot与数据访问
    • 启动配置原理
    • 自定义starter

    微服务架构:Spring Cloud Alibaba

    同 Spring Cloud 一样,Spring Cloud Alibaba 也是一套微服务解决方案,包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

    • 微服务架构介绍
    • Spring Cloud Alibaba介绍
    • 微服务环境搭建
    • 服务治理
    • 服务容错
    • 服务网关
    • 链路追踪
    • ZipKin集成及数据持久化
    • 消息驱动
    • 短信服务
    • Nacos Confifig—服务配置
    • Seata—分布式事务
    • Dubbo—rpc通信

    Spring MVC

    目录:

    部分内容:

    Confifig—服务配置

    • Seata—分布式事务
    • Dubbo—rpc通信

    [外链图片转存中…(img-VImyTsMO-1626866382878)]

    [外链图片转存中…(img-o8vppI21-1626866382879)]

    Spring MVC

    目录:

    [外链图片转存中…(img-sNNtzQSy-1626866382880)]

    [外链图片转存中…(img-L6LmUM3V-1626866382881)]

    [外链图片转存中…(img-Kn7iwRmt-1626866382881)]

    部分内容:

    [外链图片转存中…(img-70jRm1gZ-1626866382882)]

    [外链图片转存中…(img-ouqDIkBf-1626866382883)]

    展开全文
  • jdk中的实现:java.util.concurrent包中的原子类就是通过CAS来实现了乐观锁。 算法涉及到的三个操作数: 需要读写的内存值V 进行比较的值A 要写入的新值的B CAS存在的问题 1.ABA问题 线程1准备用CAS将变量的值由A...

    线程是否要锁住同步资源

    • 锁住 悲观锁
    • 不锁住 乐观锁

    锁住同步资源失败 线程是否要阻塞

    • 阻塞
    • 不阻塞自旋锁,适应性自旋锁

    多个线程竞争同步资源的流程细节有没有区别

    • 不锁住资源,多个线程只有一个能修改资源成功,其它线程会重试无锁
    • 同一个线程执行同步资源时自动获取资源偏向锁
    • 多个线程竞争同步资源时,没有获取资源的线程自旋等待锁释放 轻量级锁
    • 多个线程竞争同步资源时,没有获取资源的线程阻塞等待唤醒 重量级锁

    4.多个线程竞争锁时是否要排队

    • 排队公平锁
    • 先尝试插队,插队失败在排队非公平锁

    一个线程的多个流程能不能获取同一把锁

    • 能 可重入锁
    • 不能非可重入锁

    多个线程能不能共享一把锁

    • 能 共享
    • 不能排他锁

    悲观锁与乐观锁

    悲观锁与乐观锁时一种广义的概念,体现的是看待线程同步的不同角度。

    悲观锁

    悲观锁认为自己在使用数据的时候一定有别的线程来修改数据,在获取数据的时候会先加锁,确保数据不会被别的线程修改。 锁实现:synchronized 接口Lock的实现类 适用场景:写操作多,先加锁可以保证写操作时数据正确。

    乐观锁

    乐观锁认为自己在使用数据时不会有别的线程修改数据,所以不会添加锁,只是在更新数据的时候去判断之前有没有别的线程更新了这个数据。 锁实现:CAS算法,例如AtomicInteger类的原子自增时通过CAS自旋实现。 适用场景:读操作较多,不加锁的特点能够使其读操作的性能大幅度提升。 乐观锁的执行流程: 线程A获取到数据以后直接操作,操作完数据以后准备更新同步资源,更新之前会先判断内存中同步资源是否被更新: 1.如果没有被更新,更新内存中同步资源的值。 2.如果同步资源被其他线程更新,根据实现方法执行不同的操做(报错or重试)。

    CAS算法

    全名:Compare And Swap(比较并交换) 无锁算法:基于硬件原语实现,在不使用锁(没有线程被阻塞)的情况下实现多线程之间的变量同步。 jdk中的实现:java.util.concurrent包中的原子类就是通过CAS来实现了乐观锁。 算法涉及到的三个操作数:

    需要读写的内存值V
    进行比较的值A
    要写入的新值的B
    
    
    

    CAS存在的问题

    1.ABA问题 线程1准备用CAS将变量的值由A替换为B,在此之前,线程2将变量的值由A替换为C,又由C替换为A,然后线程1执行CAS时发现变量的值仍然为A,所以CAS成功。但实际上这时的现场已经和最初不同了,尽管CAS成功,但可能存在潜藏的问题。 举例:一个小偷,把别人家的钱偷了之后又还了回来,还是原来的钱吗,你老婆出轨之后又回来,还是原来的老婆吗?ABA问题也一样,如果不好好解决就会带来大量的问题。最常见的就是资金问题,也就是别人如果挪用了你的钱,在你发现之前又还了回来。但是别人却已经触犯了法律。 但是jdk已经解决了这个问题。 想追下源码来着,但是一追发现直接到c了。

    2.循环时间长开销大 3.只能保证一个共享变量的原子操作

    最后总结

    ActiveMQ+Kafka+RabbitMQ学习笔记PDF

    image.png

    • RabbitMQ实战指南

    image.png

    • 手写RocketMQ笔记

    image.png

    • 手写“Kafka笔记”

    image

    关于分布式,限流+缓存+缓存,这三大技术(包含:ZooKeeper+Nginx+MongoDB+memcached+Redis+ActiveMQ+Kafka+RabbitMQ)等等。这些相关的面试也好,还有手写以及学习的笔记PDF,都是啃透分布式技术必不可少的宝藏。以上的每一个专题每一个小分类都有相关的介绍,并且小编也已经将其整理成PDF啦

    tMQ)等等。这些相关的面试也好,还有手写以及学习的笔记PDF,都是啃透分布式技术必不可少的宝藏。以上的每一个专题每一个小分类都有相关的介绍,并且小编也已经将其整理成PDF啦

    资料领取方式:戳这里免费领取

    展开全文
  • java项目经验50套加优秀简历j+java最全面试题+java分布式学习资料+大数据学习资料+安卓学习资料欢迎下载参考,你一定用得上。
  • java电商面试介绍

    万次阅读 多人点赞 2016-10-28 19:27:29
    在青岛做了两年开发,大大小小参与过三个项目的开发,一个是某公司内部的人员管理系统,一个是物流项目,最近做的是一个电商项目。前两个项目采用的是ssh框架搭建的,最近的项目采用的是ssm框架搭建的。在实际开发中...
  • 电商项目总结

    2021-12-05 19:22:49
    电商项目总结 个人总结 ✧ 电商项目总结 1、项目环境搭建 2、项目后台思路 3、商品列表总结 4、门户页面后端实现 5、商品搜索ES 6、订单结算模块总结 7、商品支付模块 8、单点登录思路 9、使用的技术栈 1、项目...
  • 1、学会各类开发软件安装、...项目实战课程:代码视频讲解版如下java项目实战之电商系统全套(前台和后台)(java毕业设计ssm框架项目)https://edu.csdn.net/course/detail/25771java项目之oa办公管理系统(java毕业设计)...
  • 课程目录第1章:环境搭建本章:的标题1、项目介绍00:45:042、Oracle的基本概念和关系00:26:393、数据库环境搭建00:17:364、maven的配置00:10:395、maven和eclipse的整合00:11:376、maven架构分析00:34:407、项目工程...
  • 3 、解决项目开发过程中遇到的技术和业务难题任职要求1 、3-5 年以上互联网项目 Java 或 PHP 开发经验,本科及以上学历,计算机相关专业;2 、熟练掌握 Java 或者 PHP,有扎实的编程功底,具备良好的编码规范,熟...
  • 为什么阿里巴巴的持久层抛弃hibernate,采用MyBatis框架? 原因大概有以下4点: 尤其是需要处理大量数据或者大并发情况的网站服务,这也阿里选择MyBatis的原因。 MyBatis整体架构 不多讲,先看目录图 ...
  • Spring更是避免了重复造轮子的工作并跟随着互联网行业的发展做出不断的更新,很多研发人员把spring看作心目中最好的Java项目,没有之一。 **可以毫不夸张的说,Spring重新定义了Java,**所以这是重点也是难点,工作...
  • 基础知识这块是跟你简历上提到的技术栈相关的,每个人不一定相同,但 Redis 和 Kafka 都是没有被错过的。这一块就是考察你掌握是深度了,不一定全都要了解到底层,每家要求不一样。 3.1 Java 1)基础 int float ...
  • java全开源的电商saas项目
  • Spring更是避免了重复造轮子的工作并跟随着互联网行业的发展做出不断的更新,很多研发人员把spring看作心目中最好的Java项目,没有之一。 **可以毫不夸张的说,Spring重新定义了Java,**所以这是重点也是难点,工作...
  • 正思考着项目功能模块,阿里面试官打来了电话,开始了阿里一面。 阿里面试官自我介绍,介绍了5分钟左右,部门的情况,主要的业务 提问开始 会哪些操作系统 Linux会一点 说一下操作指令,怎么看cpu,看进程,看...
  • Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC(一种远程调用) 分布式服务框架(SOA),致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案。 二、为什么要用Dubbo? 因为是阿里开源项目,国内很...
  • 后面编写简历时,注意完整模块,千万不要写成商品管理里面就只有商品的CRUD,除了课上讲解内容以外,还需要根据我们讲解完整电商功能进行写简历。 功能实现以及源码: 1 基于MyBatis-Plus的总体环境搭建及后台商品...
  • 对自己做的项目实现机制不能只是了解,一定要知道实现的机制,所以平常要下功夫深入了解项目的技术栈,例如Spring、消息队列、数据库、缓存要做到原理级别的了解,临时抱佛脚小编觉得用处不大,还是在日常开发中要多...
  • Spring更是避免了重复造轮子的工作并跟随着互联网行业的发展做出不断的更新,很多研发人员把spring看作心目中最好的Java项目,没有之一。 **可以毫不夸张的说,Spring重新定义了Java,**所以这是重点也是难点,工作...
  • 电商项目面试项目介绍

    万次阅读 2018-03-09 17:57:39
    http://blog.csdn.net/xue_mind/article/details/52959107http://blog.csdn.net/c5153000/article/details/6210783
  • Java电商平台项目-商品管理模块

    千次阅读 2020-05-05 12:13:04
    上级目录:电商平台设计 切入点 功能介绍,学习目标,数据表设计,接口设计 功能介绍 前台功能 产品搜索 动态排序列表 商品详情 后台功能 商品列表,商品搜索,商品上传,富文本上传,商品详情,商品上下架 增加商品...
  • 本课程是一套系统学习的课程,涵盖了HTML、CSS、JavaScript、Jquery、Servlet、Jsp、代理、反射、手写自定义框架、mysql数据库、JDBC、Mybatis框架等知识点,学习完上述知识点之后,老师将带领大家完成电商项目实战...
  • 本课程主要讲解 1、微信支付介绍  2、支付相关API讲解  3、微信二维码生成  4、支付订单查询  5、支付订单关闭  6、将支付功能整合至电商项目中;
  • 简历是吸引面试官的第一步,找工作就从包装简历开始
  •   不少的同学在正式找工作前肯定都接触过了Java著名的SSM框架,当然SpringBoot和SpringCloud相信很多人也都了解过,前一段时间我抽空完完整整的完成了一个基于这些主流技术的“项目”,并且体验了一把将项目部署到...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,214
精华内容 2,085
关键字:

java电商项目简历

java 订阅