java架构
文章平均质量分 75
Java码农那些事
V:YDT939
展开
-
11月最新面试总结!网易、快手、滴滴、美团等押题命中率高达90%以上!
一想到要去面试,你是否会感到莫名的紧张、压力很大、焦躁,本能的想要逃避?是的,绝大多数的人都会有类似的感受,大家害怕陌生的环境,害怕被陌生人盘问,害怕自己表现不佳被拒绝,然而,不管我们是应聘普通职位,还是应聘经理、总监这样的中高级职位,在拿到正式 offer 之前无一例外都要经历一轮又一轮的面试,如何才能避免一些这样的问题呢?关键还是得看心态。心态总的来说可以分几点来详说:自信。在面试的过程中,自信是最好的武器。同样的一件事情,由自信的人口中说出来就比不自信的人口中说出来更具说服力。别人不是你,不可原创 2020-11-23 13:46:31 · 531 阅读 · 0 评论 -
并发编程都不会?年轻人还想进BATJ?我劝你耗子尾汁!
前言:在目前,并发编程是Java程序员最重要的技能之一,却不是最难掌握的一种技能。现在几乎100%的公司不但面试都必须问到并发编程,而且在日常工作和开发当中更是需要并发编程的使用,尤其是在互联网公司,对于并发编程的要求更高,并发编程能力已经成为职场敲门砖。那么如何才能更好的学好并发编程呢?我们先来看一张对标阿里p7的思维导图:只有结合JDK的源码来认识Java并发框架、线程池的实现原理,才能做到知其所以然,还要对原理的剖析不仅仅局限于Java层面,而是深入到JVM,甚至CPU层面来进行.原创 2020-11-23 13:19:52 · 373 阅读 · 0 评论 -
找工作被HR“骗了”阴差阳错入职美团!
前因后果先讲述一下自己这次被无良HR欺骗坑惨的经历吧,面试的是一家上海某电商公司,给的薪资是不错。面试的时候,找我要了工资流水,然后给了我口头offer,就让我回去等了邮件了。回去之后就觉得offer没啥问题,稳稳当当了,就没再去面其他的公司,打起了游戏。结果等了两个礼拜也没等来邮件,问HR告诉我在走流程,我问是不是不要我,HR说要,让我继续等。再过了几天我再去问,HR就怎么都不回我了,这个时候我才反应过来“坏了”。好在后来我马上开始面试其他的公司,阴差阳错拿到了美团的offer,这也算是因祸得福了原创 2020-11-23 12:50:16 · 581 阅读 · 0 评论 -
Java开发五面阿里菜鸟驿站架构师,第三面来了一个P10级师兄吊打我,紧张到双腿都打哆嗦!
一面问:自我介绍问:说一下你的项目中遇到的难题和怎么解决的我:(其实我的项目也没什么特别高级的东西,就说了下项目里遇到的bug的解决以及一些功能的实现,其实都是很简单的东西。个人觉得不一定要用多么高级的技术,就算是解决一个小bug或实现一个小功能,把遇到bug时的现象以及怎么去思考并一步步排除仔细说清除,以及自己为什么这么设计,对这么设计的一些理解,面试官应该还是认可的……)(讲项目的时候,语速比较快,有点舌头打结,后来听内推人说面试官给我评语是紧张,其实我也没怎么紧张……)问:XX 这原创 2020-11-21 21:27:23 · 575 阅读 · 1 评论 -
待业半年本想放弃Java,抱着试试的心态面试某C轮金融科技公司居然过了!
个人背景:开发4年,坐标杭州金九银十已经过去了,写这篇文章的目的就是与大家谈谈面试方面的经验,心得,就个人方面而言,我之前做过的很多的工作都是面试造核弹,工作拧螺丝。但是不要因为自己是个拧螺丝的就不学哪些难啃的技术。当项目出问题的时候,就是考验技术沉淀的时候。我也迷茫过好长一段时间,学了忘,学了没用,到底应该怎么成长才能成为一个别人眼中的大神,大牛。关于面试,关于技术的,我只能说有些路只能靠自己去走,没人可以帮到自己,哪怕偶尔帮一到两次,但是技术的路这么长,总归需要自己独自成长的。我们遇到每一次原创 2020-11-21 20:55:39 · 569 阅读 · 0 评论 -
呜呜呜~~~阿里,字节都不要我!这也太难了吧,卧薪尝胆33天才艰难拿到美团offer
1.笔试常见的问题?面试常见的问题上面给的面试题链接基本都有。我只提几点:写SQL:写SQL很常考察group by、内连接和外连接。 手写代码:手写代码一般考单例、排序、线程、消费者生产者。我建议排序算法除了冒泡排序,最好还能手写一种其他的排序代码。试想:如果一般面试者都写的冒泡排序,而你写的是快速排序/堆排序,肯定能给面试官留下不错的印象。2.面试流程?让你自我介绍 问Java基础知识 问项目 情景问题,例如:你的一个功能上了生产环境后,服务器压力骤增,该怎么排查。 你有什么想问原创 2020-11-21 19:59:25 · 229 阅读 · 0 评论 -
面试官说我“不讲武德?”普通本科生靠刷题字节四面成功!
刚刚电话进来一个年轻人,体重九十多公斤,年轻人啪一下,很快啊,啪!左一个算法题,右一个项目,我大意了,没有答上来,传统面试点到为止,我说小伙子你不讲武德,他说他乱问的,他可不是乱问啊,有备而来。我劝年轻人,耗子喂汁,社招问题还是那些校招问题,社招要讲以和为贵,谢谢朋友们。一面1、介绍一下自己, 为什么选择出来看看机会2、聊项目, 警报怎么做的, 统一接入监控项怎么做的3、聊项目, 配置中心项目, 问实时配置推送怎么做4、讨论为什么选择所有的组件依赖放在配置中心中控制5、我现在.原创 2020-11-21 17:35:55 · 304 阅读 · 0 评论 -
2020最全最强2340页面试题:MQ+redis+spring+jvm+微服务
题库第2版包括 Java 集合、JVM、多线程、并发编程、设计模式、Spring全家桶、Java、MyBatis、ZooKeeper、Dubbo、Elasticsearch、Memcached、MongoDB、Redis、MySQL、RabbitMQ、Kafka、Linux、Netty、Tomcat、Python、HTML、CSS、Vue、React、JavaScript、Android 大数据、阿里巴巴等大厂面试题等、等技术栈!话不多说直接上图部分内容预览大数...原创 2020-10-26 20:07:27 · 218 阅读 · 0 评论 -
整理了七个开源项目:练手/毕设/私活都不愁了!
项目一:cloud-platform学习重点:服务鉴权中心 用户间鉴权 服务之间鉴权 springcloud组件大回顾图文笔记:项目二:Guns学习重点:map+warpper模式 Api数据传输安全 数据范围限定 多数据源、jwt图文笔记:项目三:bootshiro学习重点:restful接口设计 前后端分离 数据传输动态密钥加密 jwt过期自动刷新图文讲解:项目四:vueblog学习重点:如何搭建...原创 2020-10-26 19:33:35 · 1295 阅读 · 0 评论 -
Spring全家桶大合集:130多份COP AOP事务原理、IOC源码笔记及思维导图
写在前面由于Spring家族的东西很多,一次性写完也不太现实。所以这一次先更新Spring【最核心】的知识点:AOP和IOC无论是入门还是面试,理解AOP和IOC都是非常重要的。在面试的时候,我没怎么被问过MyBatis/Hibernate/Struts2这样的框架,而Spring就经常被问到。本次PDF共有【142】页,涉及到的内容有:IOC和AOP的全面讲解 Spring事务详解和相关问题 Spring IOC/AOP相关面试题Spring AOP/IOC源码笔记这.原创 2020-10-26 18:56:37 · 416 阅读 · 0 评论 -
阿里巴巴HR面+技术6面,已拿P6+offer,复盘十月份阿里面经总结!
前言这次去阿里面试的是我老东家的好朋友,我们之前都是一个项目组的,一起吃饭,一起洗脚,一起。。。他们公司最近也裁员了,不过他是裁员前去的阿里,不知道谁捞到他简历了,莫名就走了流程,他莫名的就面了7轮过了。他想着行情这么不好,要不就去了,去了之后,他们公司就裁员了。。。总之今年大环境真的很差,大家都时刻做好准备,我朋友简历上是写了精通dubbo的源码,所以你们会发现,面试中dubbo的问题很多,他面经写得算是比较简单,但是真实问的过程肯定会扣肯定细节。正文面试总共花费20天左右,包含4转载 2020-10-26 18:18:38 · 1321 阅读 · 1 评论 -
凭借这份pdf可以成功拿下了蚂蚁金服、小米,字节跳动等大厂的offer!
关于程序员,除了做项目来提高自身的技术之外,还有一种提升自己的专业技能就是:多!看!书!小编整理出一篇Java进阶架构师之路的核心知识,同时也是面试时面试官必问的知识点,篇章也是包括了很多知识点,其中包括了有基础知识、Java集合、JVM、多线程并发、spring原理、微服务、Netty 与RPC 、Kafka、日记、设计模式、Java算法、数据库、Zookeeper、分布式缓存、数据结构等等由于pdf文档里的细节内容实在过多所以只编辑了部分知识点的章节粗略的介绍下,每个章节小节点里面都有更细.原创 2020-10-26 17:45:44 · 227 阅读 · 0 评论 -
在谷歌上班学到的一点东西
每周,谷歌员工都会在厕所的墙壁上粘贴一页来分享本周的测试小建议。有时这页纸会讨论依赖注入,并提供一个简单的示例展示如何用不同语言使用它;有时它可能会分享如何安装一个用于测量团队代码库测试覆盖率的软件。“Testing on the Toilet”起初是个奇怪又有趣的方式,来教给工程师在工作中会用到的一些新的东西,这也被突出为Google文化中的核心力量:向工程师组织有效的传播一系列最佳实践。这有从谷歌工程文化中获得的六个核心原则,你可能能够从中获益。把工程资源用于共享工具和抽象概念。在早期谷..原创 2020-09-30 20:21:17 · 133 阅读 · 0 评论 -
RabbitMQ学习资料+面试题
什么是RabbitMQRabbitMQ 即一个消息队列,主要是用来实现应用程序的异步和解耦,同时也能起到消息缓冲,消息分发的作用。RabbitMQ使用的是AMQP协议,它是一种二进制协议1.用户的请求,服务器收到之后,首先写入消息队列,加入消息队列长度超过最大值,则直接抛弃用户请求或跳转到错误页面.2.秒杀业务根据消息队列中的请求信息,再做后续处理.为什么要使用RabbitMQ?1.在分布式系统下具备异步,削峰,负载均衡等一系列高级功能;2.拥有持久化的机制,进...原创 2020-09-30 16:17:09 · 139 阅读 · 0 评论 -
你最想要的Spring面试题它就在这
SpringMVC执行流程及原理?用户发起请求到前端控制器(DispatcherServlet),该控制器会过滤出哪些请求可以访问Servlet、哪些不能访问。就是url-pattern的作用,并且会加载SpringMVC.xml配置文件。前端控制器会找到处理器映射器(HandlerMapping),通过HandlerMapping完成url到controller映射的组件,简单来说,就是将在SpringMVC.xml中配置的或者注解的url与对应的处理类找到并进行存储,用Map这样的方式来存储。..原创 2020-09-30 14:41:34 · 83 阅读 · 0 评论 -
Kafka相关面试题知识点总结
1、请说明什么是Apache Kafka?Apache Kafka是由Apache开发的一种发布订阅消息系统,它是一个分布式的、分区的和可复制的提交日志服务。2、说说Kafka的使用场景?①异步处理②应用解耦③流量削峰④日志处理⑤消息通讯等。3、使用Kafka有什么优点和缺点?优点:①支持跨数据中心的消息复制;②单机吞吐量:十万级,最大的优点,就是吞吐量高;③topic数量都吞吐量的影响:topic从几十个到几百个的时候,吞吐量会大幅度下降。所以在同等机器下,原创 2020-09-30 10:40:28 · 150 阅读 · 0 评论 -
阿里大牛看了都说赞的微服务架构实战PDF
过去几年,“微服务架构”这个术语出现了,它描述了一种将软件应用程序设计为可独立部署的服务套件的特定方式。49页PPT干货:微服务架构起源、简介及设计尽管这种架构风格没有确切的定义,但围绕业务能力,自动化部署,端点智能以及语言和数据的分散控制等方面存在着某些共同特征。“微服务” 是在拥挤的软件架构街道上又一个新名词。尽管我们的自然倾向是以轻蔑的眼光来传递这样的东西,但这些术语描述了一种我们发现越来越吸引人的软件系统风格。我们已经看到许多项目在过去几年中都采用了这种风格,迄今为止的结果...原创 2020-09-29 15:31:15 · 160 阅读 · 0 评论 -
MVC面试题!对各位有帮助的话点个赞吧
什么是springMVC?作用?springMVC是一种web层mvc框架,用于替代servlet(处理|响应请求,获取表单参数,表单校验等)。为什么要用springMVC?基本上,框架的作用就是用来简化编程的,相对于servlet来说,获取表单参数,响应请求等变得更简单了。说出spring mvc底层执行流程(工作原理)说说spring mvc中常用注解有哪些,分别什么作用?@Controller标识这个类是一个控制器@RequestMapping..原创 2020-09-29 14:32:33 · 86 阅读 · 0 评论 -
朋友面上大厂,告诉我面试官问他的SpringMVC面试题(附答案)
1、什么是Spring MVC ?简单介绍下你对springMVC的理解?Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。2、SpringMVC的流程?用户发送请求至前端控制器DispatcherServlet;DispatcherServlet收到请求后,调用HandlerMa..原创 2020-09-29 10:08:01 · 124 阅读 · 0 评论 -
高级架构师教你学编程
Step 1 : 建造时光机我在学习新技术时,会用到两个东西。第一个是 Git,第二个是 Redmine。Gitgit 是新手的时光机。我认为如果一般人学习任何编程语言,甚至写任何笔记,都应该上个 git 版本控制。起码看你上一次写了什么东西。其实 git 一开始也不用学太多指令,练习以下几个就够: git init (初始一个 Repo); git add [档案名称] (将某某档案加入版本控制); git commit -m “储存讯息” (将这次要加入版本控制..原创 2020-09-28 19:04:24 · 70 阅读 · 0 评论 -
JVM面试合集篇之调优操作合集及OOM解决方法
近几年深入学习JVM调优的人越来越多,因为互联网一线大厂的Java高级开发工程师JD中都明确要求了“JVM调优”的能力。所以掌握JVM调优是深入学习Java必不可少的一环,也是Java开发人员迈向更高水平的一个阶梯。那么到底什么是JVM调优呢?JVM调优主要是针对垃圾收集器的收集性能优化,令运行在虚拟机上的应用能够使用更少的内存以及延迟获取更大的吞吐量。毫不夸张地说,JVM是现代软件工程最成功的案例之一。因为它自带GC,又有无数可以微调的参数,且运行极其稳定可靠,..原创 2020-09-28 11:23:52 · 126 阅读 · 0 评论 -
想去字节跳动吗?那你进来就没错了
见过真正头铁的程序员吗?如题所示,真人真事,这位二本的兄弟在这短短几个月内海投了638份简历,全挑的大厂岗位投的,仅字节跳动就前前后后面试了九次,他说:没有撤退可言。九次面试经历也是奇了——网友们的评论真相了:“字节这么缺人?大家可以去投了”“看来字节跳动就是要定你了!”“哥们你这得累积多少大厂面试经验啊!快点传授一波!”“我的天哪,638份简历,9次字节面试,吾辈楷模。”真正的海量面经!问及面试考题,这位兄弟言辞中有些许惭愧:面试官已经给了一些提示,但无奈自己准备得...原创 2020-09-28 10:41:16 · 375 阅读 · 0 评论 -
腾讯面试4面最全面试题
一面介绍项目 java 线程池的实现原理,threadpoolexecutor关键参数解释 hashmap的原理,容量为什么是2的幂次 为什么要同时重写hashcode和equals ConcurrentHashMap如何实现线程安全? 介绍Java多线程的5大状态,以及状态图流转过程 介绍下Synchronized、Volatile、CAS、AQS,以及各自的使用场景 B+树和红黑树时间复杂度 如果频繁老年代回收怎么分析解决 JVM内存模型,新生代和老年的回收机制 mysql ..原创 2020-09-27 16:24:28 · 495 阅读 · 0 评论 -
最全高性能MySQL笔记(共86页)
一、MySQL架构与历史A.并发控制1.共享锁(shared lock,读锁):共享的,相互不阻塞的2.排他锁(exclusive lock,写锁):排他的,一个写锁会阻塞其他的写锁和读锁B.事务1.事务ACID* 原子性(atomicity)一个事务必须被视为一个不可分割的最小工作单元,整个事务中所有操作要么全部提交成功,要么全部失败回滚,对于一个事务来说,不可能只执行其中的一部分操作* 一致性(consistency)数据库总是从一个一致性的状态转换到另外一个一致性的状态*..原创 2020-09-27 15:20:47 · 100 阅读 · 0 评论 -
Java系列之Redis设计规范
一、键值设计1. key名设计(1)【建议】: 可读性和可管理性以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id(2)【建议】:简洁性保证语义的前提下,控制key的长度,当key较多时,内存占用也不容忽视,例如:(3)【强制】:不要包含特殊字符反例:包含空格、换行、单双引号以及其他转义字符2. value设计(1)【强制】:拒绝bigkey(防止网卡流量、慢查询)string类型控制在10KB以内,hash、list、se..原创 2020-09-27 14:46:43 · 170 阅读 · 0 评论 -
JAVA秘籍之Redis BigKey
一、什么是bigkey在Redis中,一个字符串最大512MB,一个二级数据结构(例如hash、list、set、zset)可以存储大约40亿个(2^32-1)个元素,但实际上中如果下面两种情况,我就会认为它是bigkey。字符串类型:它的big体现在单个value值很大,一般认为超过10KB就是bigkey。 非字符串类型:哈希、列表、集合、有序集合,它们的big体现在元素个数太多。二、危害bigkey可以说就是Redis的老鼠屎,具体表现在:1.内存空间不均匀这样会不利于集群对内原创 2020-09-27 10:20:51 · 196 阅读 · 0 评论 -
超全!再也不用为“微服务”苦恼的微服务架构笔记
近几年,微服务架构一跃成为 IT 领域炙手可热的话题。大量一线互联网公司因为庞大的业务体量和业务需求,纷纷投入了微服务架构的建设中,像阿里巴巴、百度、美团等大厂,很早就已经开始了微服务的实践和应用。其中微服务架构的概念,现在对于大家应该都不陌生,无论使用 Apache Dubbo、还是 Spring Cloud,都可以去尝试微服务,把复杂而庞大的业务系统拆分成一些更小粒度且独立部署的 Rest 服务。文章内容目录微服务架构介绍Spring Cloud总览Spring Clou的基础: S原创 2020-09-26 17:55:44 · 162 阅读 · 0 评论 -
大牛看鸿蒙源码:从进程/线程视角看内存
本章开始说内存,内存的管理是极其复杂的模块,涉及到非常多概念,光地址就有逻辑,线性,物理地址三个,网上文章很多,参差不齐,没有很好基础或实战经验的同学基本得懵掉,本篇最后也有这些概念介绍。系列篇打算用三篇来讲述鸿蒙内核的内存管理机制。由浅入深,层层递进。我们换个视角切入,将从进程和线程创建的视角看内存的运作机制。为何从进程和线程角度?两个原因:1.内存就是给他们使用的,只是分了内核空间和用户空间。用户空间的进程分配用到了虚拟内存,线程(task)需要分配栈空间 2.系列文章对进程和线程的管理和调度已经说原创 2020-09-26 15:18:26 · 1555 阅读 · 0 评论 -
2020年究极java面试手册,刷到就是赚到
Java 面试随着时间的改变而改变。在过去的日子里,当你知道 String 和 StringBuilder 的区别(String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象。因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象,然后将指针指向新的 String 对象,所以经常改变内容的字符串最好不要用 String ,因为每次生成对象都会对系统性能产生影响,特别当内存中无引用对象多了以后,JVM 的 GC 就会开始工作,原创 2020-09-26 14:42:14 · 76 阅读 · 0 评论 -
阿里P9架构师梳理的2020版Java指南等你查收
1.计算机基础:1.1数据结构基础:主要学习:1.向量,链表,栈,队列和堆,词典。熟悉2.树,二叉搜索树。熟悉3.图,有向图,无向图,基本概念4.二叉搜索A,B,C类熟练,9大排序熟悉。5.树的前中后,层次,之字,最短路。6.KMP等字符串算法。1.2操作系统:主要学习:1.进程,线程,进程线程区别。进程间通信2.进程调度算法理解3.存储,虚拟内存,分页分段,内存调度算法4.文件系统,链式,索引5.死锁:原因,避免,解除k6.Linux基本操作命令,会一门脚本编程:s原创 2020-09-26 10:58:07 · 215 阅读 · 0 评论 -
JAVA面试必备笔记:必须掌握的核心技能点
据说有小伙伴靠这份笔记顺利进入 BAT 哦,所以一定要好好学习这份资料!资料介绍,面试题超350题+这套面试题丰富全面,从 java常用命令到 java常用操作,再到jvm编程、主流服务、性能优化、自动化运维、面试技巧等几乎覆盖了所有 java 面试题,被同事称为 java界 面试活字典,跟java相关的面试题,都会能够得到找得到,部分有挑战的题会附带答案,所有文字可直接复制,非常便于我们学习,一共有350+题!资料也按目录进行编排,每一章下面都有更具体的内容,我截了几张图 ,大家有需要的话转发原创 2020-09-26 09:52:06 · 251 阅读 · 0 评论 -
这里有份最全的微服务,看完你就通关了
最近几年,微服务的概念非常火爆,由于它确实能解决传统单体应用所带来的种种问题(比如代码可维护性低、部署不灵活、不够稳定、不易扩展,等等),所以大家对“如何成功实施微服务架构”越来越感兴趣。在Java技术栈中,Spring Cloud独树-一帜, 提供了一整套微服务解决方案,它基于Spring Boot而构建,延续了Spring体系- -贯的“简单可依赖”,但是由于微服务本身涉及的技术或概念比较广,所以在正式“人坑”之前,最好能有一本实战性强的书籍作为参考。但是很遗憾,Spring Cloud太新了,国内几乎原创 2020-09-25 16:56:31 · 164 阅读 · 0 评论 -
大厂流出:JAVA面试必问面试题及答案
1、自我介绍、自己做的项目和技术领域2、项目中的监控:那个监控指标常见的有哪些?3、微服务涉及到的技术以及需要注意的问题有哪些?4、注册中心你了解了哪些?5、consul 的可靠性你了解吗?6、consul 的机制你有没有具体深入过?有没有和其他的注册中心对比过?7、项目用 Spring 比较多,有没有了解 Spring 的原理?AOP 和 IOC 的原理8、Spring Boot除了自动配置,相比传统的 Spring 有什么其他的区别?9、Spring Cloud 有了解多原创 2020-09-25 15:10:42 · 99 阅读 · 0 评论 -
阿里面试官:请叙述一下HTTP和HTTPS的区别
1.HTTP 和 HTTPS 有什么区别?HTTPS 和 HTTP 的关系协议 明文/安全HTTPS 它把 HTTP 下层的传输协议由 TCP/IP 换成了 SSL/TLS,由「“HTTP over TCP/IP”」变成了「“HTTP over SSL/TLS”」,让 HTTP 运行在了安全的 SSL/TLS 协议上,收发报文不再使用「Socket API」,而是调用专门的「安全接口」。HTTPS 是 为 HTTP 增加了「四大安全特性」;本身一个“非常简单”的协议,RFC 文档很小...原创 2020-09-25 14:21:40 · 157 阅读 · 0 评论 -
阿里大牛整理的这些JVM资料等你查收
首先你应该知道,运行一个 Java 应用程序,我们必须要先安装 JDK 或者 JRE 包。这是因为 Java 应用在编译后会变成字节码,然后通过字节码运行在 JVM 中,而 JVM 是 JRE 的核心组成部分。JVM 不仅承担了 Java 字节码的分析(JIT compiler)和执行(Runtime),同时也内置了自动内存分配管理机制。这个机制可以大大降低手动分配回收机制可能带来的内存泄露和内存溢出风险,使 Java 开发人员不需要关注每个对象的内存分配以及回收,从而更专注于业务本身。JVM 在对代码原创 2020-09-25 11:26:30 · 89 阅读 · 0 评论 -
这里有篇非常强悍的RabbitMQ总结,就等你来看了
rabbitMQ是基于AMQP协议的,通过使用通用协议就可以做到在不同语言之间传递。核心概念非常强悍的 RabbitMQ 总结,看完别再说你不会RabbitMQ交换机的类型,direct、topic、fanout、headers,durability(是否需要持久化true需要)auto delete当最后一个绑定Exchange上的队列被删除Exchange也删除。The default exchange is implicitly bound to every queue, with原创 2020-09-25 10:38:12 · 92 阅读 · 0 评论 -
啃完这400多页SPringCloud实战,谁还敢说你不会微服务?
什么是微服务架构简单地说,微服务是系统架构上的一种设计风格,它的主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API 进行通信协作。被拆分成的每-一个小型服务都围绕着系统中的某一项或一些耦合度较高的业务功能进行构建,并且每个服务都维护着自身的数据存储、业务开发、自动化测试案例以及独立部署机制。由于有了轻量级的通信协作基础,所以这些微服务可以使用不同的语言来编写。Spring Cloud简介Spring Cloud是一原创 2020-09-24 20:46:37 · 65 阅读 · 0 评论 -
别再说你不会RabbitMQ,这里有全网最全RabbitMQ总结!
自己总结的RabbitMQ的教程,有不恰当的地方欢迎小伙伴指出。我们先来看一下一条消息在RabbitMQ中的流转过程图示的主要流程如下整个流程主要就4个参与者message,exchange,queue,consumer,我们就来认识一下这4个参与者消息可以设置一些列属性接收消息,并根据路由键转发消息到所绑定的队列,常用的属性如下我们最常使用的就是type属性,下面就详细解释type属性发送到该交换机的消息都会路由到...原创 2020-09-24 15:32:43 · 166 阅读 · 0 评论 -
大厂汇总的15个顶级Java多线程面试题及答案
在任何Java面试当中多线程和并发方面的问题都是必不可少的一部分。如果你想获得任何股票投资银行的前台资讯职位,那么你应该准备很多关于多线程的问题。在投资银行业务中多线程和并发是一个非常受欢迎的话题,特别是电子交易发展方面相关的。他们会问面试者很多令人混淆的Java线程问题。面试官只是想确信面试者有足够的Java线程与并发方面的知识,因为候选人中有很多只浮于表面。1)现在有T1、T2、T3三个线程,你怎样保证T2在T1执行完后执行,T3在T2执行完后执行?这个线程问题通常会在第一轮或电话面试阶段被原创 2020-09-24 14:01:03 · 225 阅读 · 0 评论 -
总结:Tomcat和Jetty的高性能、高并发之道
高性能程序就是高效的利用CPU、内存、网络和磁盘等资源,在短时间内处理大量的请求。那如何衡量“短时间和大量”呢?其实就是两个关键指标:响应时间和每秒事务处理量(TPS)。那什么是资源的高效利用呢? 我觉得有两个原则:减少资源浪费。比如尽量避免线程阻塞,因为一阻塞就会发生线程上下文切换,就需要耗费CPU资源;再比如网络通信时数据从内核空间拷贝到Java堆内存,需要通过本地内存中转。 当某种资源成为瓶颈时,用另一种资源来换取。比如缓存和对象池技术就是用内存换CPU;数据压缩后再传输就是用CPU换网络。原创 2020-09-24 10:36:30 · 209 阅读 · 0 评论