![个人头像照片](https://ucc.alicdn.com/avatar/avatar3.jpg)
暂无个人介绍
推荐阅读: 面试机会不等人,资料看精不看多!史上最全Java技术资料合集! 2019年中总结,400道一线大厂高频精选面试题合集(JVM+Spring+RabbitMQ+Mybatis+Redis+分布式+微服务) 整理完今年的阿里、腾讯、网易等公司的面试后,我有一个重大发现 .
介绍 分布式计算简单来说,是把一个大计算任务拆分成多个小计算任务分布到若干台机器上去计算,然后再进行结果汇总。 目的在于分析计算海量的数据,从雷达监测的海量历史信号中分析异常信号(外星文明),淘宝双十一实时计算各地区的消费习惯等。
常见面试题 基本问题 介绍下 Java 内存区域(运行时数据区) Java 对象的创建过程(五步,建议能默写出来并且要知道每一步虚拟机做了什么) 对象的访问定位的两种方式(句柄和直接指针两种方式) 拓展问题 String类和常量池 8种基本类型的包装类和常量池 一、概述 对于 Java 程序员来说,在虚拟机自动内存管理机制下,不再需要像C/C++程序开发程序员这样为内一个 new 操作去写对应的 delete/free 操作,不容易出现内存泄漏和内存溢出问题。
在 IM 这种讲究高并发、高消息吞吐的互联网场景下,MQ 消息中间件是个很重要的基础设施,它在 IM 系统的服务端架构中担当消息中转、消息削峰、消息交换异步化等角色。
前言 本文我们通过一篇真实的一线面经,带大家去体验一下 BAT 等互联网公司的面试现场氛围!面试者是笔者以前的下属,多年的好朋友。这是他去年早些时候出去面试,拿到 BAT 等多家一线互联网公司技术专家 Offer 的面试经历。
redis是键值对的数据库,常用的五种数据类型为字符串类型(string),散列类型(hash),列表类型(list),集合类型(set),有序集合类型(zset) Redis用作缓存,主要两个用途:高性能,高并发,因为内存天然支持高并发 应用场景 分布式锁(string) setnx key value,当key不存在时,将 key 的值设为 value ,返回1。
就在9号这天,阿里分布式事务框架GTS开源了一个免费社区版Fescar,看到了这个消息内心非常的激动!在微服务系统中,分布式事务一直是痛点,也是难点。社区里也有一些开源的分布式解决方案的框架,比如ByteTCC、LCN,但是这些框架没有一个权威的组织在维护,或多或少大家都有点不敢用。
当提起这三个词的时候,是不是很多人都认为分布式=高并发=多线程? 当面试官问到高并发系统可以采用哪些手段来解决,或者被问到分布式系统如何解决一致性的问题,是不是一脸懵逼? 确实,在一开始接触的时候,不少人都会将三者混淆,误以为所谓的分布式高并发的系统就是能同时供海量用户访问,而采用多线程手段不就是可以提供系统的并发能力吗?实际上,他们三个总是相伴而生,但侧重点又有不同。
我们刚开始学习 Spring Boot 的时候肯定都会看到这么一句话: Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。
工作五年是个分水岭,大部分程序员从初级工程师成长为中高级工程师,薪资较刚毕业时翻几番。 同一个宿舍毕业的人有不同的发展轨道,有人年薪百万,有人仍在基层搬砖。
MySQL中的日志包括:错误日志、二进制日志、通用查询日志、慢查询日志等等。这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志。 1)通用查询日志:记录建立的客户端连接和执行的语句。
学习 Spring Boot 必须得了解它的核心模块,和 Spring 框架一样,Spring Boot 也是一个庞大的项目,也是由许多核心子模块组成的。
我使用Java 8编码已经有些年头,既用于新的应用程序,也用来迁移现有的应用,感觉是时候写一些我发现的非常有用的“最佳实践”。 我个人并不喜欢“最佳实践”这个说法,因为它意味着“一刀切”的解决方案,而编码不可能是这样的工作方式——我们需要亲自去发现什么样的解决方案才是有效的。
作为“生在红旗下,长在春风里”的“四有新人”,笔者从毕业至今,与各路 HR、HRD 斗智斗勇,再加上自己的不懈努力,历尽千辛万苦终于将毕业时的 1500 每月的薪资提高了二十几倍。
做技术的有一种资历,叫做通过了阿里的面试。 这些阿里Java相关问题,都是之前通过不断优秀人才的铺垫总结的,先自己弄懂了再去阿里面试,不然就是去丢脸,被虐。
在阿里巴巴内部,有很多自研工具供开发者使用,其中有一款工具,是几乎每个Java开发都使用过的工具,那就是Arthas,这是一款Java诊断工具,是一款牛逼带闪电的工具。
在这个IT系统动辄就是上亿流量的时代,Java作为大数据时代应用最广泛的语言,诞生了一批又一批的新技术,包括HBase、Hadoop、MQ、Netty、SpringCloud等等 。
1 昨天跟一位许久未联系的前同事电话交流了一下业务和技术问题,顺带聊到了组里多位同事近况,有人顺利晋升,有人第二次晋升无望转岗,有人准备第三次冲刺,还有人多次晋升无果彻底佛系。
有段时间没跟各位老铁分享一些编程资源福利了,看了下自己的百度网盘,就剩下这个我认为是比较好的Java架构师学习资料了 。相信我,这套资料,绝对可以对你进阶高级工程师有帮助! Java架构技术进阶路线图 ...
引言 说在前面的话: 本文适合人群:急等着换工作的人 我承认刷面试题很有用的,纵观几年来的JAVA面试题,你会发现每家都差不多。比如,你仔细观察,你会发现,HashMap的出现几率未免也太高了吧!连考察的知识点都一样,什么hash碰撞啊,并发问题啊!再比如JVM,无外乎考内存结构,GC算法等!因此,如果是为了面试,完全是有套路可以准备的!记住,基础再好,也架不住面试官天马行空的问,所以刷面试题还是很有必要的! 本文不适合人群:专攻JAVA某方面技术的人 因为这类人专攻JAVA某块技术,知识容易出现死角。
导读: 开源展示了人类共同协作,成果分享的魅力,每一次技术发展都是站在巨人的肩膀上,技术诸多创新和发展往往就是基于开源发展起来的,没有任何一家网络公司可以不使用开源技术,仅靠自身技术而发展起来。
写了这么久的代码,你是否曾经有过这样的迷茫和困惑:技术发展日新月异,奋力追赶的我们,究竟是技术的主人还是技术的奴隶? 技术人真的挺辛苦,除了在办公室高强度、高压力搬砖外,还要时刻关注最新的市场信息、技术动态、行业信息等等。
小史是一个应届生,虽然学的是电子专业,但是自己业余时间看了很多互联网与编程方面的书,一心想进BAT互联网公司。 话说两个多月前,小史通过了A厂的一面,两个多月后的今天,小史终于等到了A厂的二面。
人人都会犯错,但一些错误是如此的荒谬,我想不通怎么会有人犯这种错误。更没想到的是,这种事竟发生在了我们身上。当然,这种东西只有事后才能发现真相。
Spring 官方最终还是按捺不住推出了自己的网关组件:Spring Cloud Gateway ,相比之前我们使用的 Zuul(1.
一、什么是高并发 高并发(High Concurrency)是互联网分布式系统架构设计中必须考虑的因素之一,它通常是指,通过设计保证系统能够同时并行处理很多请求。
好多人对阿里巴巴的薪资体系结构及级别设置不太清楚,想去面试也不知道面试什么级别的岗位,那么,年薪 40 万在阿里内部又是什么水平呢? 先来看看阿里巴巴的级别设置: 再来看看阿里巴巴的对应薪资年薪: 40W 年薪 P6 级别就能拿到,阿里巴巴薪资结构一般是 16 薪,所以就是税前2.5w,年底的奖金 0-6 个月薪资,90%人可拿到 3 个月,关于股票,这得要工作满 2 年才能拿,第一次拿50%,4年能全部拿完。
最近面试了阿里、京东、美团、滴滴等大型互联网公司,最终收到了美团offer,这次面试过后,我把面试过的公司的面试题做了一个整理。
工作三年多,就个人方面而言,很多的工作都是面试造核弹,工作拧螺丝。但是不要因为自己是个拧螺丝的就不学哪些难啃的技术。当项目出问题的时候,就是考验技术沉淀的时候。
使用 Java 来调度定时任务时,我们经常会使用 Timer 类搞定。Timer 简单易用,其源码阅读起来也非常清晰,本节我们来仔细分析一下 Timer 类,来看看 JDK 源码的编写者是如何实现一个稳定可靠的简单调度器。
程序员干到30岁,好不容易从码奴混到了白领,却再也干不动了,还时时面临失业的危险。30岁,是一个程序员伤不起的年龄。明天,何去何从? 一.30岁现象 在官场上,曾经有一个59岁现象,就是官员们会在59岁时,会使劲捞上一把。
前言 很多人以为技术人员可以做一直做下去,但是最近我发现这个观点不完全正确,因为能一直做下去的技术人员非常稀少,因为不同的年龄段,公司对技术人员的要求会不一样,如最近传言华为计划裁掉40岁以上的程序员,首先我认为肯定不会裁掉所有40岁以上的技术人员,如CTO或高级技术专家不会被开,因为他们达到了40岁技术人员应该达到的能力,而那些没有达到该年龄段能力的技术人员会被淘汰。
一名阿里员工因为加班顿生怨言:在阿里巴巴干着太累了,找到60万的工作我就离职,并且直言压力很大:心累,开发还得干产品的活,一天8个会,各种拉你,这边还得解决客户的问题,还得干PM的活推动各方开发,每到周日晚上就想辞职,有没有一样的? 看样子这名阿里员工已经不堪忍受这种工作状态了,其称自己目前的职级是P7,年收入差不多在70万左右,如果能找到60万的工作,虽然降薪了,但会毫不犹豫离职。
在上周,密集面试了若干位Java后端的候选人,工作经验在3到5年间。我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架,我相信其它公司招初级开发时,应该也照着这个标准来面的。
2018年2月9日,Apache 基金会的邮件列表上发起了讨论是否接纳阿里的 Dubbo 项目进入 Apache 孵化器的投票。
在文章(Java 11 正式发布,这 8 个逆天新特性教你写出更牛逼的代码)中,我有介绍到 Java 11 的八个新特性,其中关于 String 加强部分,我觉得有点意思,这里单独再拉出来讲。
目录: 一、问题起源 二、Eureka Server设计精妙的注册表存储结构 三、Eureka Server端优秀的多级缓存机制 四、总结 一、问题起源 Spring Cloud架构体系中,Eureka是一个至关重要的组件,它扮演着微服务注册中心的角色,所有的服务注册与服务发现,都是依赖Eureka的。
每一个 Java 的高级程序员在体验过多线程程序开发之后,都需要问自己一个问题,Java 内置的锁是如何实现的?最常用的最简单的锁要数 ReentrantLock,使用它加锁时如果没有立即加成功,就会阻塞当前的线程等待其它...
回想自己做开发的这八年多,我获得了很多,技术能力、培训、出国、大公司的,还记得刚刚出来第一年那段时间,太多东西不懂的,我都是一切听从老大的安排,敲敲代码,看看数据库,测试自己和别人的代码;这样干了一年 第二年的时候我就在...
每个程序员、或者说每个工作者都应该有自己的职业规划,如果你不是富二代,不是官二代,也没有职业规划,希望你可以思考一下自己的将来。
虽时至年底,大多数小伙伴都知道,2018年是互联网行业最不平凡的一年。各类平台的倒闭、破产、清算,尤其是6、7月分全国大范围P2P集中爆雷跑路,再加上贸易战等,居多因素,裁员的、失业的大有人在,所以,虽近年底,找工作的伙伴应该还不在少数,所以,今天,给大家分享一些面试技巧文章。
缓存是系统性能提升优先法宝,在互联网应用系统中,屡试不爽。网上有很多资料介绍缓存理论及使用策略,本文就不再涉及了,今天简单将缓存做个归类,重点分享以前在实际业务中碰到场景以及如何使用。
身在职场,经常会暗自打听同事工资,尤其是得知身边新入职同事的工资居然比自己高,还高出一大截时,心里自然很不平衡,一心想要离职。
每个程序员、或者说每个工作者都应该有自己的职业规划,如果你不是富二代,不是官二代,也没有职业规划,希望你可以思考一下自己的将来。
HashMap 和 Hashtable 是 Java 开发程序员必须要掌握的,也是在各种 Java 面试场合中必须会问到的。
SQL 语句执行insert,这谁都会,执行之后,返回结果是影响行数。但是在我们应用开发场景中,有些表的主键采用自增生成。这个时候,你怎么能把这个自增的主键值拿到呢? 你说这还不简单,马上再执行一下select,就都查出来啦。
身边的师弟师妹经常问到: 非计算机专业出身,你是在2年内如何逆袭成BAT年薪40W的资深开发工程师的。其实很简单——努力! 我16年毕业于普通的二本学校,非计算机专业出身,只因为对软件开发感兴趣,所以找工作的时候就一直投IT行业的职位。
如果你的目标仅仅是提高自己,那么很容易实现,但是如果你的目标是成为一个高薪的Java架构师,那么这就不简单了。 工作越久,经验值越高,越能为企业创造价值。
最近在整理数据结构方面的知识, 系统化看了下Java中常用数据结构, 突发奇想用动画来绘制数据流转过程。 主要基于jdk8, 可能会有些特性与jdk7之前不相同, 例如LinkedList LinkedHashMap中的双向列表不再是回环的。
前不久刚从阿里面试回来,为了这场面试可以说准备了一个半月,做的准备就是刷题和看视频看书充实自己的技术,话说是真难啊,不过还算顺利拿到了offer,有很多面试题我已经记不起来了,这些是当天回家整理好的,下面我来跟大家一起分享一下。