自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 从3000元月薪码农到首席架构师的经历

编者按:本文是杨武明在高可用架构群新年聚会暨架构开源研讨会上的演讲。转载请注明来自高可用架构公众号「ArchNotes」。杨武明,熊猫 TV 首席架构师,曾担任奇虎 360 PC 网游技术架构负责人,前新浪微博平台资深后端开发、技术专家。对大型互联网架构有丰富的实践经验,擅长后端基础服务与组件开发,尤其高性能、高并发、大数据业务场景。“在微博平台,有

2016-09-14 11:34:04 2226

转载 身为码农,为12306说两句公道话

作者:作者:西西河 - 代码狗(写于 2014年1月)链接:http://www.cchere.com/topic/3965719本文可能观点有争议,仅供参考我曾在淘宝写过一段时间代码,2012年在一家百强民企做电商副总,当时在极为艰苦的条件下带队开发了一个B2C网站,走支付宝和银联支付通道,年营业额千万级(当然实在太少了,我只是说这个网站投入了实际的运

2016-09-14 11:26:41 804

转载 类和对象运行时在内存里是怎么样的?各种变量、方法在运行时是怎么交互的?

在回答这个问题之前先了解一下Java的一些基础知识。我们知道Java程序运行在虚拟机环境里,那我们先看一下虚拟机的大致内存结构。如下图所示,虚线框为整个虚拟机内存区域,其中有颜色的区域为Java程序所占的内存区域。图中可见Java程序所占的内存区域可划分成5个部分:程序计数器、虚拟机栈(线程栈)、本地方法栈、堆(heap)和方法区(内含常量池)。其中方法区和堆由所有线程共享。

2016-06-28 10:49:18 1672

转载 这应该是迄今为止最全的一份Java就业指导书

想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,面试者在面试之前到底需要准备哪些东西呢?本文陈列的这些内容既可以作为个人简历中的内容,也可以作为面试的时候跟面试官聊的东西,你可以把这些内容写到你的简历中,当然更需要的是你在面试的时候向面试官展示这些专业技能。相信此文对正在寻觅Java程序员(Java工程师)职位的freshman以及希望成为中高级Java开发者的junior都会有所帮

2016-06-28 10:44:46 886

转载 JVM内存回收对象及引用分析

自动垃圾回收是Java相较于C++的一个重要的特点,想了解JVM的垃圾回收机制,首先我们要知道垃圾回收是回收什么地方的垃圾,我在我的上一篇博客《JVM内存区域划分》里面有写到JVM里面的内存是怎么分布的,这里的回收主要是指对上文中提到的Java堆和方法区的内存的回收。什么样的对象可以被回收知道了回收哪里的内存之后,我们还需要知道什么样的对象是可以被回收,或者说是需要被回收的,这些对

2016-06-28 10:43:38 585

转载 Java编程性能优化一些事儿

1. 尽量在合适的场合使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:第一,控制资源的使用,通过线程同步来控制资源的并发访问;第二,控制实例的产生,以达到节约资源的目的;第三,控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信。2. 尽量避免

2016-06-28 10:42:41 1234

转载 为什么看起来不是很复杂的网站,淘宝、腾讯却需要大量顶尖高手来开发?

来源:知乎链接:http://www.zhihu.com/question/20303645为什么很多看起来不是很复杂的网站,比如 Facebook 需要大量顶尖高手来开发?子柳:就拿淘宝来说说,当作给新人一些科普。▼先说你看到的页面上,最重要的几个:【搜索商品】这个功能,如果你有几千条商品,完全可以用se

2016-06-28 10:40:59 2109

转载 Java知识图谱收集整理

平时看到不错的图谱的时候会习惯性的保存收集,今天一看电脑,发现还有蛮多的,所以先把Java知识图谱分享出来,如果能帮助到Java学习者,那是最好不过的了。 1、Java学习路径1 Java研发工程师.png我想很多人看到这个路径可能会问我在哪里可以学习,所以就先附上这条路径的学习地址吧,这也是这张图片的来源,愿意学习的可以去看看:Java研发工程

2016-06-28 10:40:00 523

转载 假如时光能够倒流, 我会这么学习Java

回头看看, 我进入Java 领域已经快15个年头了, 虽然学的也一般, 但是分享下我的心得,估计也能帮大家少走点弯路。 入门我在2001年之前是C/C++阵营, 有C和面向对象的基础, 后来转到Java ,发现没有指针的Java真是好简单, 另外Java 的类库好用的让人哭啊。后来我就看《Thinking in Java》 ,《 

2016-06-28 10:38:03 598

转载 互联网行业的HR怎么看待30岁以上的基础岗位求职者

问题:互联网行业的 HR 怎么看待三十岁以上的基础岗位求职者?互联网就是一个年轻人为主力军的行业,一批批的年轻人在这个战场上奋勇战斗。如果你是互联网行业的HR,你会选择30岁以上甚至于接近40岁的求职者吗?是会看中30岁以上求职者的经验和阅历,还是忧虑他们的精力和创意可能跟不上潮流呢?之前看到有大神说,如果一个人到了三十多岁还碌碌无为需要通过普通手段求职的话

2016-06-28 10:35:51 14420

转载 大型网站的架构演化,发展历程

今天开始读《大型网站技术架构:核心原理与案例分析》,觉得这本书将的全面而又通俗易懂,有兴趣的同学可以看一看。下面对大型网站的架构演化,发展历程做了整理,小伙伴们一起来学习一下。 传统企业应用面对的挑战:复杂,千变万化的业务逻辑。(功能性需求) 大型网站面对的挑战:处理超大量的用户访问和海量的数据处理。(非功能性需求)网站核心架构要素:性能,可用性,伸缩性,扩展性,安全性

2016-06-04 14:50:17 669

转载 Java内存模型深度解读

Java内存模型规范了Java虚拟机与计算机内存是如何协同工作的。Java虚拟机是一个完整的计算机的一个模型,因此这个模型自然也包含一个内存模型——又称为Java内存模型。如果你想设计表现良好的并发程序,理解Java内存模型是非常重要的。Java内存模型规定了如何和何时可以看到由其他线程修改过后的共享变量的值,以及在必须时如何同步的访问共享变量。原始的Java内存模型存在一些不足,

2016-06-04 14:48:46 412

转载 游戏编程十年总结

自敲第一行代码起,已经十年多了,今天既不是十年整的日子,也不是一个有特定意义的日子,本来像这种大总结的文章,当择良辰吉日,斋戒沐浴三日,方可动笔。一开始计划是写一篇五年总结的,但各种原因一拖再拖,于是就变成了十年总结。光阴似箭,时不我待,转眼已经在奔三的路上了,离大叔的称呼很近了,但离大神的称呼还很远,在此谨以此文总结反思这十年技术生涯的点滴,与诸君共勉。编程之前大概是读初一的时候

2016-06-04 14:47:25 4741 4

转载 以生活例子说明单线程与多线程

1. 程序设计的目标在我看来单从程序的角度来看,一个好的程序的目标应该是性能与用户体验的平衡。当然一个程序是否能够满足用户的需求暂且不谈,这是业务层面的问题,我们仅仅讨论程序本身。围绕两点来展开,性能与用户体验。性能:高性能的程序应该可以等同于CPU的利用率,CPU的利用率越高(一直在工作,没有闲下来的时候),程序的性能越高。体验:这里的体验不只是界面多么漂亮,功能多么顺手,这

2016-06-04 14:46:00 520

转载 JAVA回调机制(CallBack)详解

序言最近学习java,接触到了回调机制(CallBack)。初识时感觉比较混乱,而且在网上搜索到的相关的讲解,要么一言带过,要么说的比较单纯的像是给CallBack做了一个定义。当然了,我在理解了回调之后,再去看网上的各种讲解,确实没什么问题。但是,对于初学的我来说,缺了一个循序渐进的过程。此处,将我对回调机制的个人理解,按照由浅到深的顺序描述一下,如有不妥之处,望不吝赐教!开始之

2016-06-04 14:45:20 517

转载 我对“Hello World”30年的爱恨情仇

我最近在4月1日的那一周休了一个假,因此有时间来回顾我的职业生涯。令我震惊的是,我已经写了近30年的代码了!于是,我决定好好利用这段额外的休息时间来创作一篇怀旧的帖子,回顾在过去近30年时间中我工作过的编程语言。向我从“Hello, World”开始学习新语言的30年致敬。我学习的第一种编程语言是TI BASIC,BASIC专门为微软TI 99 / 4A microcomputer而编写的

2016-06-04 14:44:15 558

转载 七年阿里老人谈新人成长

作者加入阿里已近7年,常为新人解答疑问,在诸多答案中,他将最有价值的总结于此。作者说,解答或许不一定都对,但却是真心话。有些事自己也不一定实践得好,他也在学习中,但要先具备这种意识才行。先做事再做人新同学常有这些困惑,到底是做技术还是做业务?是每天加班加点写代码还是空点时间来看书学习?是先追求广度还是先钻研一门技术?是两耳不闻窗外事一心埋头做事还是和同事打成

2016-06-04 14:42:34 394

转载 Java虚拟机体系结构,你知道吗?

1 概述众所周知,Java支持平台无关性、安全性和网络移动性。而Java平台由Java虚拟机和Java核心类所构成,它为纯Java程序提供了统一的编程接口,而不管下层操作系统是什么。正是得益于Java虚拟机,它号称的“一次编译,到处运行”才能有所保障。1.1 Java程序执行流程Java程序的执行依赖于编译环境和运行环境。源码代码转变成可执行的机器代码,由下面的流程完成:

2016-06-04 14:40:46 755

转载 面试感悟:3年工作经验程序员应有的技能

前言因为和同事有约定再加上LZ自己也喜欢做完一件事之后进行总结,因此有了这篇文章。这篇文章大部分内容都是面向整个程序员群体的,当然因为LZ本身是做Java开发的,因此有一部分内容也是专门面向咱们Java程序员的。简单先说一下,LZ坐标杭州,13届本科毕业,算上年前在阿里巴巴B2B事业部的面试,一共有面试了有6家公司(因为LZ不想请假,因此只是每个晚上去其他公司面试,所以面试的公司比

2016-06-04 14:31:45 2471 1

转载 8张图理解Java

一图胜千言,下面图解均来自Program Creek 网站的Java教程,目前它们拥有最多的票选。如果图解没有阐明问题,那么你可以借助它的标题来一窥究竟。1、字符串不变性下面这张图展示了这段代码做了什么2、equals()方法、hashCode()方法的区别HashCode被设计用来提高性能。equals()方法与hashCode()方法的区别在于:

2016-06-04 14:30:23 395

转载 有效处理Java异常的三个原则,你知道吗?

Java中异常提供了一种识别及响应错误情况的一致性机制,有效地异常处理能使程序更加健壮、易于调试。异常之所以是一种强大的调试手段,在于其回答了以下三个问题:什么出了错?在哪出的错?为什么出错?在有效使用异常的情况下,异常类型回答了“什么”被抛出,异常堆栈跟踪回答了“在哪“抛出,异常信息回答了“为什么“会抛出,如果你的异常没有回答以上全部问题,

2016-06-04 14:29:04 2520

转载 哈希算法

转自:http://clevertanglei900126.wap.blog.163.com/w2/blogDetail.do?blogId=fks_095075081082083068081082085095085087080064081084084070093&p=1&hostID=clevertanglei900@126哈希(Hash)算法就是单向散列算法,它把某个较大的

2016-05-30 15:27:09 465

转载 Java网络编程

来自:http://www.cnblogs.com/springcsc/archive/2009/12/03/1616413.html网络编程         网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习。         在 学习网络编程以前,很多初学者可能觉得网络编程是比较复

2016-05-30 15:20:10 368

转载 10分钟掌握XML、JSON及其解析

来自:http://blog.jobbole.com/79252/引言NOKIA 有句著名的广告语:“科技以人为本”。任何技术都是为了满足人的生产生活需要而产生的。具体到小小的一个手机,里面蕴含的技术也是浩如烟海,是几千年来人类科技的结晶,单个人穷其一生也未必能掌握其一角。不过个人一直认为基本的技术和思想是放之四海而皆准的,许多技术未必需要我们从头到尾再研究一遍,我们要

2016-05-30 15:11:22 690

转载 堆栈程序内存分配详解

来自:http://m.blog.csdn.net/article/details?id=3524716堆和栈的区别一、预备知识—程序的内存分配    一个由c/C++编译的程序占用的内存分为以下几个部分    1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。    2、堆区(heap) — 一般由程序

2016-05-30 11:52:24 938

转载 Java栈和Java堆

原文地址:http://www.blogjava.net/nkjava/archive/2012/03/15/371971.htmlJVM栈解决程序的运行问题,即程序如何执行,或者说如何处理数据;JVM堆解决的是数据存储的问题,即数据怎么放、放在哪儿,另外JVM堆中存的是对象。JVM栈中存的是基本数据类型和JVM堆中对象的引用。JVM基础概念:JVM堆与JVM栈数据类型Java虚拟

2016-05-30 11:31:16 284

转载 Servlet 工作原理解析

来自:http://www.oschina.net/question/12_16372?fromerr=dttz6Dfm该文深入的介绍了 J2EE 中使用最广泛的 Servlet 技术运行原理,不管对于初学者还是高手来说都非常值得一看。从 Servlet 容器说起要介绍 Servlet 必须要先把 Servlet 容器说清楚,Servlet 与 Servlet 容器的关系有点像枪和

2016-05-30 10:57:05 314

转载 Java I/O流概念分析整理

来自:http://developer.51cto.com/art/201309/410902.htmJava中的流,可以从不同的角度进行分类。按照数:输入流和输出流。按照处理数据单位不同可以分为:字节流和字符流。按照实现功能不同可以分为:节点流和处理流。输出流: 输入流:因此输入和输出都是从程序的角度来说的。字节流:一次读入或读出是8位二进

2016-05-30 09:30:12 309

转载 如何向妻子解释OOD

前言  此文译自CodeProject上一文,该文章在Top Articles上排名第3,读了之后觉得非常好,就翻译出来,供不想读英文的同学参考学习。作者(Shubho)的妻子(Farhana)打算重新做一名软件工程师(她本来是,后来因为他们孩子出生放弃了),于是作者就试图根据自己在软件开发设计方面的经验帮助她学习面向对象设计(OOD)。自作者从事软件开发开始,作者常常注意到不管技术问

2016-05-30 09:13:24 290

转载 java集合类详解

来自:http://www.cnblogs.com/xwdreamer/archive/2012/05/30/2526822.html0.参考文献http://blog.csdn.net/liulin_good/article/details/62138151.java集合类图1.11.2  上述类图中,实线边框的是实现类,比如ArrayList,LinkedL

2016-05-30 08:39:03 297

转载 tomcat部署web应用的4种方法

来自:http://www.cnblogs.com/xiohao/p/3689832.html 在Tomcat中有四种部署Web应用的方式,简要的概括分别是:(1)利用Tomcat自动部署(2)利用控制台进行部署(3)增加自定义的Web部署文件(%Tomcat_Home%\conf\Catalina\localhost\AppName.xml)(4)手动修改%Tomca

2016-05-30 08:34:50 957

转载 你必须了解的Session的本质

来自:http://netsecurity.51cto.com/art/201402/428721.htm有一点我们必须承认,大多数web应用程序都离不开session的使用。这篇文章将会结合php以及http协议来分析如何建立一个安全的会话管理机制。我们先简单的了解一些http的知识,从而理解该协议的无状态特性。然后,学习一些关于cookie的基本操作。最后,我会一步步阐述如何使用一

2016-05-30 08:31:24 275

转载 什么是线程池

来自:http://www.cnblogs.com/Leo_wl/archive/2012/03/27/2418997.html概述  到目前为止我们使用多线程应用程序的目的是尽可能多地使用计算机处理器资源。所以,看起来我们仅需要为每个独立的任务分配一个不同的线程,并让处理器确定在任何时间它总会处理其中的某一个任务。额,对小系统来说这样做很好。但是当系统越来越复杂时,线程的数量

2016-05-30 08:24:14 515

转载 如何通俗的解释计算机是如何实现1+1=2计算的?

作者:hczhcz链接:http://www.zhihu.com/question/29707696/answer/45469968来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。首先,你在键盘上依次按下了1+1。键盘上的电路触点被接通。键盘主控芯片此时在不停地、依次地检测各个触点两端是否导通,于是它发现了按键。按照预先烧录的程序,

2016-04-18 13:56:25 10142 1

转载 深入理解 Java中的 流 (Stream)

转自:http://www.cnblogs.com/shitouer/archive/2012/12/19/2823641.html笔       管理随笔-80  评论-172  文章-0  trackbacks-0深入理解 Java中的 流 (Stream)个人小站,正在持续整理中,欢迎访问:http://shitouer.cn小

2016-04-18 13:51:45 333

转载 java中四种操作(dom、sax、jdom、dom4j)xml方式详解与比较

转自:Junn9527http://blog.chinaunix.net/uid-354915-id-3877243.html     1)DOM(JAXP Crimson解析器)     DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造

2016-04-18 13:42:06 407

转载 java中HashMap详解

转自:http://alex09.iteye.com/blog/539545HashMap 和 HashSet 是 Java Collection Framework 的两个重要成员,其中 HashMap 是 Map 接口的常用实现类,HashSet 是 Set 接口的常用实现类。虽然 HashMap 和 HashSet 实现的接口规范不同,但它们底层的 Hash 存储机制完全一样,甚至

2016-04-18 13:26:41 251

转载 深入理解java异常处理机制

(转自真实的归宿)转自http://blog.csdn.net/hguisu/article/details/61556361. 引子       try…catch…finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解。不过,我亲自体验的“教训”告诉我,这个东西可不是想象中的那么简单、听话。不信?那你看看下

2016-04-18 13:18:01 246

转载 Java 内存区域和GC机制

Java垃圾回收概况  Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Java开发者,一般不需要专门编写内存回收和垃圾清理代 码,对内存泄露和溢出的问题,也不需要像C程序员那样战战兢兢。这是因为在Java虚拟机中,存在自动内存管理和垃圾清扫机制。概括地说,该机制对 JVM(Java Virtual Machine)

2016-04-18 13:15:17 226

转载 Servlet 工作原理解析

从 Servlet 容器说起要介绍 Servlet 必须要先把 Servlet 容器说清楚,Servlet 与 Servlet 容器的关系有点像枪和子弹的关系,枪是为子弹而生,而子弹又让枪有了杀伤力。虽然它们是彼此依存的,但是又相互独立发展,这一切都是为了适应工业化生产的结果。从技术角度来说是为了解耦,通过标准化接口来相互协作。既然接口是连接 Servlet 与 Servlet 容器的关键

2016-04-18 13:06:46 285

空空如也

空空如也

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

TA关注的人

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