自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(116)
  • 收藏
  • 关注

转载 2019Java依然免费,你应该知道的事实,不要被误导—技术领导必读

2019年关于Java是否免费,一直存在误解,国内新闻断章取义,搞错概念,误导开发者。 作为企业的技术领导应该弄清楚关键的概念,避免被误导。国内一直谣传Java2019年1月1号收费,今天都2号了,使用Java的企业运转一切正常。各种新闻标题耸人听闻,但是如果你也被吓到,那不妨看看本文调节一下心情。相信许多java开发者也会被这种新闻或者文章困扰,老外也遇到过,自2001年担任美国加州圣地亚哥...

2019-01-17 19:41:21 1455

原创 Java并发编程,深入理解ReentrantLock

ReentrantLock简介ReentrantLock重入锁,是实现Lock接口的一个类,也是在实际编程中使用频率很高的一个锁, 支持重入性,表示能够对共享资源能够重复加锁,即当前线程获取该锁再次获取不会被阻塞。 ReentrantLock还支持公平锁和非公平锁两种方式。 那么,要想完完全全的弄懂ReentrantLock的话, 主要也就是ReentrantLock同步语义的学习:...

2019-05-28 14:11:49 175

原创 前百度面试官整理的——Java后端面试题(一)

List 和 Set 的区别List , Set 都是继承自 Collection 接口 List 特点:元素有放入顺序,元素可重复 ,Set 特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉,(元素虽然无放入顺序,但是元素在set中的位 置是有该元素的 HashCode 决定的,其位置其实是固定的,加入Set 的 Object 必须定义 equals ()方法 ,另外lis...

2019-05-27 21:26:34 289

原创 【求解惑】由一个Bug来看Java内存模型和垃圾回收

前两天,项目中发现一个Bug。我们使用的RocketMQ,在服务启动后会创建MQ的消费者实例,来订阅topic。测试过程中,发现服务启动一段时间后,与RocketMQ的连接就会断掉,从而找不到订阅关系,监听不到数据。一、Bug的产生经过回溯代码,发现订阅的逻辑是这样的。将ConsumerStarter类注册到Spring,并通过PostConstruct注解触发初始化...

2019-05-27 16:40:19 230

原创 JAVA虚拟机

垃圾回收主要是回收堆内存。在垃圾回收期(GC)回收之前,需要确定哪些对象可以回收,有以下几种方法:引用计数算法原理:给对象添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,计数器值就减1;任何时刻计数器都为0的对象就是不可能再被使用的。这种算法效率高。不过很难解决对象之间的相互循环引用的问题。根搜索算法(默认)原理:通过一系列的名为“GC Roots”的对象作为起始...

2019-05-27 15:17:04 132

原创 Java编程学习-Java虚拟机(JVM)以及跨平台原理

相信大家已经了解到Java具有跨平台的特性,可以“一次编译,到处运行”,在Windows下编写的程序,无需任何修改就可以在Linux下运行,这是C和C++很难做到的。那么,跨平台是怎样实现的呢?这就要谈及Java虚拟机(Java Virtual Machine,简称 JVM)。JVM也是一个软件,不同的平台有不同的版本。我们编写的Java源码,编译后会生成一种 .class 文件,称...

2019-05-25 19:27:16 375

原创 新手转行学java难吗?新手学java需要注意的6个方面!

新手转行在成都学java到底难不难,对于这个问题,我们专门做过一个调查,超过1000名已经在职的java从业者,其中有80%的程序员觉得学java不难,20%的程序员觉得前期有点难,其中对于50%自学的新手认为java很难学,遇到问题没人解答,又或者是答案太多,根本不知道哪个回答是正确的。所以,我们得出结论,能系统学习的,有老师指导的java课程学起来相对容易,而没有人指导,仅仅靠看视频学习...

2019-05-24 20:01:11 258

原创 如何制定 Java 性能调优标准?

想让你的程序更快更稳,但是系统经常出各种 bug,无从下手?Java 性能调优全攻略来啦!我有一个朋友,有一次他跟我说,他们公司的系统从来没有经过性能调优,功能测试完成后就上线了,线上也没有出现过什么性能问题呀,那为什么很多系统都要去做性能调优呢?当时我就回答了他一句,如果你们公司做的是 12306 网站,不做系统性能优化就上线,试试看会是什么情况。如果是你,你会怎么回答呢?今天...

2019-05-24 14:18:29 127

原创 分布式系统中一致性哈希

问题场景近年来B2C、O2O等商业概念的提出和移动端的发展,使得分布式系统流行了起来。分布式系统相对于单系统,解决了流量大、系统高可用和高容错等问题。功能强大也意味着实现起来需要更多技术的支持。例如系统访问层的负载均衡,缓存层的多实例主从复制备份,数据层的分库分表等。我们以负载均衡为例,常见的负载均衡方法有很多,但是它们的优缺点也都很明显:随机访问策略。 系统随机访问,缺点:可能造成服...

2019-05-23 20:53:27 495

原创 分布式商业萌芽,银行迎来发展新机遇

01 分布式商业萌芽,银行迎来发展新机遇金融界:近几年区块链的热度经历了过山车般的转折。目前追逐区块链的资本也开始冷静下来,于此同时,各大商业银行对区块链的研究应用也越来越多。您认为这种背景下的区块链发展中,银行将扮演怎样的角色,区块链金融的前景如何?马智涛:Open Innovation(开放创新)是近几年科技创新行业主流的理念之一,开放者成为技术社区背后的创新者。Open C...

2019-05-23 16:08:18 325

原创 十年Java开发经验分享:Java初学者,如何学习Java?

咱们先解决认识问题1、学JAVA的过程及特点我们研究一下那些985学校的学生,他们是怎么学会JAVA的,有知友马上会说,我去!是的,985很多学生志向高远,学JAVA只是他们一个小小的任务,但对我们大家来说,学JAVA是一个重要的任务,是解决体面工作、找到更好前途的重要任务,我们研究他们是如何学会JAVA,是研究规律性的东东,或者真的对大家有帮助。一般这些985学校的老师都会有项...

2019-05-23 13:56:52 369

原创 Spring Boot 面试,一个问题就被干趴下了!

最近LZ面试了不少人,其中不乏说对 Spring Boot 非常熟悉的,然后当我问到一些 Spring Boot 核心功能和原理的时候,没人能说得上来,或者说不到点上,可以说一个问题就问趴下了!这是我的问题:我看你上面写了熟悉 Spring Boot,那你能讲下为什么我们要用 Spring Boot 吗?下面我列几个最常见的三个回答:A:Spring Boot 最主要是不用 ...

2019-05-22 20:46:51 179

原创 一文透析 Spring Boot、微服务架构和大数据治理三者之间的故事

微服务架构微服务的诞生并非偶然,它是在互联网高速发展,技术日新月异的变化以及传统架构无法适应快速变化等多重因素的推动下诞生的产物。互联网时代的产品通常有两类特点:需求变化快和用户群体庞大,在这种情况下,如何从系统架构的角度出发,构建灵活、易扩展的系统,快速应对需求的变化;同时,随着用户的增加,如何保证系统的可伸缩性、高可用性,成为系统架构面临的挑战。如果还按照以前传统开发模式,开...

2019-05-22 17:02:53 129

原创 经过这5大阶段,你离Java程序员就不远了!

打开招聘网站不难发现Java的需求量非常大,这也是为什么Java历经数十年依然可以长期占据编程排行榜前三位置的原因。Java这么火自然吸引了很多人加入,那么怎么样才能快速掌握Java核心技术,成为一名Java开发程序员呢?在这里,小编为大家分享几点学习经验。1、想进阶一定要看书现在学习Java编程比以前要简单很多了。虽然大家都在说Java编程学起来很容易,入门很简单,但这并不代表...

2019-05-22 14:58:05 120

原创 Java、Python、C++、PHP、JavaScript这5大编程语言,我究竟该选哪个?

很多朋友在后台给我留言,问:现在这么多编程语言,Python、Java、PHP、C++、JavaScript等,究竟哪种最流行?我想这应该也是你的困扰吧!其实他们各有优势,但是对于选择困难的程序员而言,这真的是个世纪难题,毕竟每个人的精力有限,不可能把所有的流行语言全学了……在我帮你解决这个问题之前,让我们先来看看这五种语言分别是用来干什么的?这也许会帮你更快的作出决定!1....

2019-05-21 20:23:58 837 1

原创 冷汗:开源软件也受美国出口管制!

今天在朋友圈看到一个朋友转发的文字,说 Apache 许可证分发的软件也受美国出口管制。吓得我赶快去看了看 Apache 基金会的官网(幸好还没被墙)。这不看不知道,一看吓一跳。Apache 基金会官网上有一段话(见原文链接)是这么说的:The Apache Software Foundation (ASF) is a 501©3 nonprofit charity based in the ...

2019-05-21 16:47:47 365

原创 一位面试了阿里,滴滴,网易,蚂蚁金服,最终有幸去了网易的Java程序员【面试题分享】

前言15年毕业到现在也近三年了,最近面试了阿里集团(菜鸟网络,蚂蚁金服),网易,滴滴,点我达,最终收到点我达,网易offer,蚂蚁金服二面挂掉,菜鸟网络一个月了还在流程中...最终有幸去了网易。但是要特别感谢点我达的领导及HR,真的非常非常好,很感谢他们一直的关照和指导。面试整体事项简历要准备好,联系方式一定要正确清晰醒目,项目经历按照时间倒序阐述,注意描述自己在项目...

2019-05-21 13:54:19 292

原创 python强势崛起,Java是否会在未来几年没落,你怎么看?

玩过三种编程语言,C语言,C++,JAVA用的最多,现在人工智能的普及把Python语言推向了一个高潮,但在实际工作中用的没有想象的那么多,认识一个做Python的朋友,有将近两年的工作经验,在西安找工作费了九牛二虎之力才找了一份不是很满意的工作,没办法不能一直空耗着,只好找个工作先干着,技术类的岗位不能手生了,而且在找工作的过程中发现企业还是要JAVA的人才多。当然也不是懂点JAV...

2019-05-20 21:04:46 194

原创 Java读取文件方法汇总

这篇文章主要为大家详细介绍了Java读取文件方法,按字节读取文件内容、按字符读取文件内容、随机读取文件内容等,具有一定的参考价值,感兴趣的小伙伴们可以参考一下本文实例为大家分享了Java读取文件的方法,供大家参考,具体内容如下1、按字节读取文件内容2、按字符读取文件内容3、按行读取文件内容4、随机读取文件内容public class ReadFromFile { ...

2019-05-20 16:09:27 789

原创 阿里Java面试题剖析:关于系统拆分,为什么要进行系统拆分?

面试原题为什么要进行系统拆分?如何进行系统拆分?拆分后不用 dubbo 可以吗?面试官心理分析从这个问题开始就进行分布式系统环节了,现在出去面试分布式都成标配了,没有哪个公司不问问你分布式的事儿。你要是不会分布式的东西,简直这简历没法看,没人会让你去面试。其实为啥会这样呢?这就是因为整个大行业技术发展的原因。早些年,印象中在 2010 年初的时候,整个 IT 行业,很...

2019-05-20 13:51:32 372

原创 7年Java后端被淘汰,一路北漂辛酸史。。。

今天分享一位同行的经历:本人Java开发6年半不到7年的样子。英语专业,临毕业跟着隔壁专业去培训了四个月 Java 。跟他们一起来了北京找工作,一找就是 5 个多月,面试 100 多家公司。最终还是隔壁专业的同学介绍到他们公司才就业了。入职后同学就是我的领导,技术相对一般,我们做 Java 游戏后端的,时间很快,一眨眼,我就跟着混了四年,每天就看些博客,书籍,业务上也会做功能,但自觉做的比...

2019-05-19 19:28:46 285 2

原创 Java程序员五年职业生涯——阿里大牛给你的职业建议

Java程序员五年职业生涯——阿里大牛给你的职业建议每个程序员、或者说每个工作者都应该有自己的职业规划,如果你不是富二代,不是官二代,也没有职业规划,希望你可以思考一下自己的将来。今天我给大家分享的是一篇来自阿里大牛对五年工作经验程序员的职业建议,希望对你们有启发。第一阶段:Java程序员五年职业生涯——阿里大牛给你的职业建议Java程序员五年职业生涯——阿里大牛...

2019-05-19 15:52:36 291

原创 java后台面试题整理(包含)

1.Arrays.sort实现原理和Collection实现原理Collection.sort()底层会调用Arrays.sort(),Arrays.sort()底层实现是TimeSort,TimeSort的算法就是先找到已经排好序数据的子序列,然后对剩余部分数据进行排序,然后在合并起来。2.foreach和while的区别(编译之后)while会读一行输入,把它存入某个变量并执行循环体,然...

2019-05-19 14:01:27 107

原创 Java程序员年薪30W是一个什么样的技术支撑(北上广除外)

金三银四面试已经结束了,最近跟朋友在一起聚会的时候提了一个问题,说Java程序员月薪如何达到30K,技术水平需要达到什么程度?有人回答说这只能是大企业或者互联网企业工程师才能拿到。也许是的,小公司或者非互联网企业拿到30K的不太可能是码农了,应该已经转管理。还有区域问题,这个是不在我的考虑范围内的,因为除了北上广深杭,其他地方也很难得到。首先:30K对应的层级分别是什么?30...

2019-05-17 17:26:13 389

原创 BAT经典面试题,深入理解Java内存模型JMM

Java 内存模型Java 内存模型(JMM)是一种抽象的概念,并不真实存在,它描述了一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段、静态字段和构成数组对象的元素)的访问方式。试图屏蔽各种硬件和操作系统的内存访问差异,以实现让 Java 程序在各种平台下都能达到一致的内存访问效果。注意JMM与JVM内存区域划分的区别:JMM描述的是一组规则,围绕原子性、有序性和可见性展...

2019-05-17 15:50:25 217

原创 回顾我两个月面试阿里,携程,小红书,美团,网易等等(Java岗)

还没有offer的同学不要气馁,该来的迟早会来。楼主从3月有想法跳槽开始准备校招,一开始也是惨不忍睹,后来慢慢进入状态最近的面试基本都能走到终面,所以好好坚持,最后一定会有好结果的楼主投递的都是上海的开发岗位,接下来以时间线回顾一下参加过的面试,携程java后台开发,参加的第一场内推面试,运气不好遇到的面试官来技术运营中心,面了两轮都没什么技术含量可能面试官本身也不太懂技术一轮自我介绍...

2019-05-17 13:58:04 4166 6

原创 Java进阶面试题:如何设计一个高并发系统?

面试原题如何设计一个高并发系统?面试官心理分析说实话,如果面试官问你这个题目,那么你必须要使出全身吃奶劲了。为啥?因为你没看到现在很多公司招聘的 JD 里都是说啥,有高并发就经验者优先。如果你确实有真才实学,在互联网公司里干过高并发系统,那你确实拿 offer 基本如探囊取物,没啥问题。面试官也绝对不会这样来问你,否则他就是蠢。假设你在某知名电商公司干过高并发系统,用...

2019-05-16 20:50:00 133

原创 读技术书籍一定要读最经典的

最近很多人问我读什么书,鉴于之前有空的时候也会读过一些书,特此整理一些分享给大家,如果有你读的很不错的书也欢迎留言推荐补充。下面主要是还是针对 Java 工程师学习方向的相关书籍,我大致把进阶的书籍分为 Java 基础、数据库、网络、框架、架构、方法论和职场。1, Java 基础Java 基础主要还是围绕基础语法、多线程、JVM 和性能。「基础」的书籍呢还是经典的《Java 编程思想》了,...

2019-05-16 19:37:10 108

原创 作为程序员,情商低怎么破?

作为程序员,整天与代码打交道,与人沟通交流的时间严重不足。因此程序员也被认为是智商高,情商低的群体,这也是一直困扰着我的一个问题,甚至在某些段时间内还产生过自卑心理。那么面对如此境况该如何破呢?如果你已经被这个问题困扰,想必已经通过搜索引擎获得上百种方法了吧。如果实践成功,那么真的恭喜你;如果未成功,之前文章中推荐过《好好说话》这一类的书籍,倒是可以多看看。另外,建议读读心理学和幽默相关的书籍。...

2019-05-16 15:22:11 189

原创 程序员笔记|常见的Spring异常分析及处理

一、前言相信我们每个人在SpringMVC开发中,都遇到这样的问题:当我们的代码正常运行时,返回的数据是我们预期格式,比如json或xml形式,但是一旦出现了异常(比如:NPE或者数组越界等等),返回的内容确实服务端的异常堆栈信息,从而导致返回的数据不能使客户端正常解析; 很显然,这些并不是我们希望的结果。我们知道,一个较为常见的系统,会涉及控制层,服务(业务)层、缓存层、存储层以及接口调...

2019-05-16 13:52:23 190

原创 一张图了解Spring Cloud微服务架构

Spring Cloud作为当下主流的微服务框架,可以让我们更简单快捷地实现微服务架构。Spring Cloud并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。Spring Cloud中各个组件在微服务架构中扮演...

2019-05-15 20:09:36 118

原创 微服务技术选型之路

本文以笔者个人经历讲述关于微服务方面的技术选型和相关知识点。微服务模式的项目从初建到上线部署应用,每一个环节都会涉及到相当多的技术细节(上线后的性能调优更需要)。本文着重介绍一套微服务搭建流程中面临的一些技术选型,战略性的技术方案及相关技术的简要介绍,不做每一项技术的深入说明。微服务简介微服务是指开发一个单个小型的但有业务功能的服务,每个服务都有自己的处理和轻量通讯机制,可以部署在单...

2019-05-15 17:53:44 224

原创 微服务的那些事

如何发布和引用服务服务提供者如何发布一个服务,服务消费者如何引用这个服务。具体来说,就是这个服务的接口名是什么?调用这个服务需要传递哪些参数?接口的返回值是什么类型?以及一些其他接口描述信息最常见的服务发布和引用的方式有三种:RESTful API (一般对外)XML配置 (对内)IDL文件(跨语言,Thrift, gRPC)如何注册和发现服务在微服务架构下,主要有...

2019-05-15 17:30:37 85

原创 区块链和人工智能:完美匹配

区块链和人工智能是目前最热门的两种技术趋势。尽管这两种技术有着高度不同的开发方和应用,但研究人员一直在讨论和探索它们的结合。普华永道预测,到2030年,人工智能将为世界经济增加15.7万亿美元,因此全球GDP将增长14%。根据Gartner的预测,区块链技术带来的商业价值将在同年增加到3.1万亿美元。根据定义,区块链是一个分布式的、分散的、不可变的分类账,用于存储加密数据。另一方面,...

2019-05-15 15:20:15 549

原创 机器学习能革了数据库索引的命吗?

关系数据库帝国已经独孤求败几十年了!自从1970年E.F.Codd 的《大型共享数据库的关系模型》论文横空出世,为关系型数据库奠定了坚实的理论基础,一众关系数据库System R,DB2 ,Oracle,MySQL,Postgres相继诞生,一举推翻了层次和网状数据库的统治。在过去的几十年中, 对象数据库, NoSQL等相继挑战,但是依然无法撼动它的地位。当然关系数据库也不是停滞不...

2019-05-15 13:52:36 123

原创 Java开发必须掌握的21个核心技术

这次介绍的主要内容是和J2SE相关的部分1. JVM相关(重点)对于刚刚接触Java的人来说,JVM相关的知识不一定需要理解很深,对此里面的概念有一些简单的了解即可。不过对于一个有着3年以上Java经验的资深开发者来说,不会JVM几乎是不可接受的。JVM作为java运行的基础,很难相信对于JVM一点都不了解的人可以把java语言吃得很透。我在面试有超过3年Java经验的...

2019-05-14 21:35:53 697

原创 [jaeger] 四、微服务之调用链(Feign+SpringCloud)

终于到了我们的重点,微服务了。与使用OkHttp3来实现的客户端类似,Feign接口本来也就是一个Http调用,依然可以使用Http头传值的方式,将 Trace 往下传。本文更多的是关于 SpringCloud 的一些知识,你需要了解一些基本的 Spring 相关的知识。更多系列,请关注公众号小姐姐味道,本文相关代码的github地址,见:https://github.com/sayhia...

2019-05-14 16:43:40 599

原创 《Spring Cloud》学习(一) 服务治理!

原文: http://www.cnblogs.com/crazycheng/p/10826283.html前言:之前网上学习过Spring Cloud,对于工作上需要是足够了,总归对于一些方面一知半解,最近难得有些闲暇时间,有幸读了崔永超先生的《Spring Cloud 微服务实战》,一方面记录下自己的学习历程和读后感,一方面分享下自己对Spring Cloud微服务的一些见解,写下此文。注意...

2019-05-14 15:12:00 85

原创 看看这些大龄程序员都做了些什么

原文:http://zhuanlan.51cto.com/art/201905/596337.htm?utm_source=tuicool&utm_medium=referral最近的朋友圈不断被996、 裁员、大龄程序员的出路等话题刷屏,我在想国外的大龄程序员情况如何呢?对于普通的程序员,我也没有一手的资料,但是对于一些牛人,我在wikipedia上搜索了一些他们的发明和创造:Gu...

2019-05-14 14:03:50 138

原创 深入浅出 Java 中 JVM 内存管理

Java岗位面试,JVM是对程序员基本功考察,通常会问你对JVM了解吗?可以分几部分回答这个问题,首先JVM内存划分 | JVM垃圾回收的含义 | 有哪些GC算法 以及年轻代和老年代各自特点等等。JVM内存划分:① 方法区 (线程共享) 常量 静态变量 JIT(即时编译器)编译后代码也在方法区存放② 堆内存(线程共享) 垃圾回收的主要场地③ 程序计数器 当前线程执行...

2019-05-13 20:23:18 96

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除