自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (1)
  • 收藏
  • 关注

转载 java获取JVM对象实例的个数和占用空间大小

RuntimeMXBean bean = ManagementFactory.getRuntimeMXBean(); String name = bean.getName(); int index = name.indexOf('@'); String pid = name.substring(0, index);

2016-08-25 17:34:43 7390 1

转载 linux性能分析常用命令详解

在最开始的一分钟内,可以先利用手头的标准Linux工具大致了解性能状况。借助如下10条命令(有些命令需要安装sysstat包),了解系统资源使用状况和正在运行的进程。先检查错误(errors)和饱和度(saturation),再检查资源利用率(resource utilization)。饱和度指的是负载已经超过处理能力,像请求队列的长度,等待时间等

2016-08-02 12:03:47 1848

原创 nginx 配置多域名

先说下我的需求:我在一台机器上部署了两个环境test和uat,希望通过两个域名访问,在另外一台机器上部署了nginx,通过一个nginx实现访问一个服务器上两个域名网站,具体配置如下:另外配置还实现了动静分离。1、nginx.conf 配置#user nobody;#处理进程数量worker_processes 2; #pid logs/nginx

2016-08-02 11:54:51 911

原创 UBUNTU修改root初始化 密码

ubuntu安装到vmware时,不允许设置root用户,只能自定义用户名称和密码。但是安装程序需要使用root用户,下面介绍使用非root用户登录ubuntu虚拟机怎么修改root密码。       1、输入如下命令: sudo passwd root      系统提示:Enter new UNIX password:       输入用户密码,      系统提示再次

2016-06-14 13:10:26 579

转载 什么时候使用CountDownLatch

正如每个Java文档所描述的那样,CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行。在Java并发中,countdownlatch的概念是一个常见的面试题,所以一定要确保你很好的理解了它。在这篇文章中,我将会涉及到在Java并发编 程中跟CountDownLatch相关的以下几点:目录CountDownLatch是什么

2016-05-27 09:12:04 529

原创 程序员等级能力模型

技术人员管理需要,希望制定一套程序员的能力模型,然后进行评级与薪水范围制定,同事也能指导程序员提高响应的技能已达到响应级别的要求。本人简单总结了几点,希望牛人指点。1、初级具有扎实的基础知识,具备编写特定方法的能力,在中级和高级的帮助下可以完成任务。需要增加自身代码能力2、中级可以快速理解需求和设计,根据设计可以独立完成任务,需要增强需求理解能力,需要增强对

2016-05-26 09:16:12 2591

原创 多线程编程艺术(5)-ThreadLocal的使用

本文内容来源于《多线程编程艺术》一书,本人阅读过程的总结ThreadLocal,即线程变量,是一个以ThreadLocal对象为键、任意对象为值的存储结构。这个结构被附带在线程上,也就是说一个线程可以根据一个ThreadLocal对象查询到绑定在这个线程上的一个值。可以通过set(T)方法来设置一个值,在当前线程下再通过get()方法获取到原先设置的值。publ

2016-05-25 18:37:32 560

原创 多线程编程艺术(4)-线程间数据传输

本文内容来源于《多线程编程艺术》一书,本人阅读过程的总结管道输入/输出流和普通的文件输入/输出流或者网络输入/输出流不同之处在于,它主要用于线程之间的数据传输,而传输的媒介为内存。管道输入/输出流主要包括了如下4种具体实现:PipedOut-putStream、PipedInputStream、PipedReader和PipedWriter,前两种面向字节,而后两种面向字符。

2016-05-25 18:35:47 525

原创 多线程编程艺术(3)-多线程等待通知编程模型

本文内容来源于《多线程编程艺术》一书,本人阅读过程的总结关键知识点:1、调用wait()方法后,会释放对象的锁等待方遵循如下原则。1)获取对象的锁。2)如果条件不满足,那么调用对象的wait()方法,被通知后仍要检查条件。3)条件满足则执行对应的逻辑。对应的伪代码如下。 synchronized(对象) { while(

2016-05-25 17:55:35 269

原创 多线程编程艺术(2)-安全的终止线程

本文内容来源于《多线程编程艺术》一书,本人阅读过程的总结suspend()、resume()和stop()方法可以完成了线程的暂停、恢复和终止工作,而且非常“人性化”。但是这些API是过期的,也就是不建议使用的。不建议使用的原因主要有:以suspend()方法为例,在调用后,线程不会释放已经占有的资源(比如锁),而是占有着资源进入睡眠状态,这样容易引发死锁问题。同样,stop()方法在终结

2016-05-25 17:49:59 447

原创 流程引擎模型总结

最近面试总是被问起流程引擎的模型是什么样的?根据以往项目进行了简单的总结,还望大家指正。

2016-05-23 12:07:45 988 1

原创 读大型网站技术架构一书 总结(1)

大型网站的特点:1、高并发,大流量2、高可用3、海量数据4、用户广泛,网络情况复杂5、安全环境恶略6、需求快速变更,发布频繁7、渐进式发展系统可用性:可用性的含义:保证系统7*24小时不间断服务系统伸缩性:通过不断增加服务器来缓解不断上升的用户并发访问压力和不断增长的数据存储需求。衡量伸缩性的标准是是否可以用多台服务器构建集群,是否容易向集群中添加新

2016-05-23 10:59:07 502

原创 (读大型网站技术架构)-秒杀系统设计

秒杀系统设计的四个重点内容:1、秒杀系统独立部署。2、秒杀商品页面静态化,通过js文件控制按钮是否可用。3、租借秒杀活动网络带宽。4、动态生成随机下单页面URL,URL加入服务器生成的动态随机数如何控制购买按钮灰色,解决方法是使用JavaScrips脚本控制,在商品页面增加一个JavaScript的文件引用,通过随机版本号,让此文件不被CDN和浏览器、反向代理缓存

2016-05-23 10:57:15 496

转载 技术发展路线

2016-05-23 10:49:06 707

转载 关于初创公司的研发体系构建,这可能是最成功的案例了

Etsy是美国一个在线销售手工工艺品的网站,创始人是罗布·卡琳,一名80后画家、木匠兼摄影师,CEO为原雅虎高管查德·迪克森,2005年上线,品类包括服饰、珠宝、玩具、摄影作品、家居用品等,核心卖点是原创和手工,更注重商品背后的故事。目前平台上有150万活跃专家。架构审查下面要介绍的两项工程技术实践则属于高阶技巧,而且发生频率要远低于代码审查与部署。其一为架

2016-05-23 10:46:30 1321

转载 Memcached 集群的高可用(HA)架构

Memcache自身并没有实现集群功能,如果想用Memcahce实现集群需要借助第三方软件或者自己设计编程实现,这里将采用memagent代理实现,memagent又名magent,大家注意下,不要将这二者当成两种工具。至于memcache、magent的安装请参考文章 在Linux上安装Memcached服务 和  magent编译安装及常见错误       整体架构直接

2016-04-27 13:54:05 436

转载 关键业务系统的JVM启动参数推荐

在关键的业务系统里,除了继续追求技术人员最爱的高吞吐与低延时之外,系统的稳定性与出现问题时排查的便捷性也很重要。这是本文的一个原则,后面也会一次又一次的强调,所以与网上其他的文章略有不同,请调优高手和运维老大们多指引前言1,资料学习开源项目的启动脚本是个不错的主意,比如Cassandra家的, 附送一篇解释它的文章。JVM调优的"标准参数"的各种陷阱 R大的文章,在

2016-04-27 13:48:33 710

转载 变态的静态资源缓存与更新(超详细好文)

这是一个非常有趣的 非主流前端领域,这个领域要探索的是如何用工程手段解决前端开发和部署优化的综合问题,入行到现在一直在学习和实践中。在我的印象中,facebook是这个领域的鼻祖,有兴趣、有梯子的同学可以去看看facebook的页面源代码,体会一下什么叫工程化。接下来,我想从原理展开讲述,多图,较长,希望能有耐心看完。让我们返璞归真,从原始的前端开发讲起

2016-04-16 10:49:32 15586 4

转载 java web工程web.xml配置详解

在java工程中,web.xml用来初始化工程配置信息,比如说welcome页面,filter,listener,servlet,servlet-mapping,启动加载级别等等。   每一个xml文件都有定义他书写规范的schema文件,web.xml所对应的xml Schema文件中定义了多少种标签元素,web.xml中就可以出现它所定义的标签元素,也就具备哪些特定的功能。web.

2016-04-16 10:47:49 324

转载 CAP原理

分布式领域CAP理论,Consistency(一致性), 数据一致更新,所有数据变动都是同步的Availability(可用性), 好的响应性能Partition tolerance(分区容错性) 可靠性定理:任何分布式系统只可同时满足二点,没法三者兼顾。忠告:架构师不要将精力浪费在如何设计能满足三者的完美分布式系统,而是应该进行取舍。

2016-04-16 10:44:32 291

原创 单例模式实现延迟加载在多线程下的思考(双检锁和内部类)

java单例模式class  Single{       public static Single single = new Single();       private Single(){}       public static getInstance(){              return single ;       }}此方式存在缺点是,singl

2016-03-26 17:21:59 441

转载 BPMN2 与 Activiti5

什么是BPMN、Workflow?BPM(Business Process Management)——“通过建模、自动化、管理和优化流程,打破跨部门跨系统业务过程依赖,提高业务效率和效果”。Workflow——“全部或者部分由计算机支持或自动处理的业务过程”(工作流管理联盟WfMC组织对工作流概念的经典定义)BPM基本内容是管理既定工作的流程,通过服务编排,统一调控

2016-03-26 17:18:31 5002

转载 springside 推荐的编程

http://www.tbdazhe.com/archives/662https://github.com/springside/springside4springside4技术选型1. WebMVC Framwork: SpringMVC3.0 Restful的风格终于回归了MVC框架的简单本质,对比之下Struts2概念太复杂更新又太懒了。T

2016-03-26 17:15:14 433

转载 DB2死锁问题与日常维护

上线之后维护时我们要做的几件事情 1. 做好定期维护 通过使用如下命令进行维护: -reorg表和索引定期重组 -runstats表和索引的统计信息定期更新 -rebind 程序包定期重新编译 2. 日常观察db2diag.log文件 查看下面锁升级信息 escalation 2006-02-13-11.05.08.060000-480

2016-03-26 15:51:37 564

原创 求业之精,别无他法(曾国藩)

(清)曾国藩《致诸弟》:“求业之精,别无他法,曰专而已矣。” 业精才有成,至精必专一;专必通晓其来龙去脉,融会贯通,博采众长;知其方位,超有定向;专心致志,持之以恒,给力至远,终有成就。       这句话对于做技术的程序员也是有指导意义的吧,目前各方面的知识广度已经有了,需要从一个方向从突破深度的壁垒。

2016-03-26 15:44:37 2483

转载 架构师的十项技能

一每个好架构师都是一位出色的程序员(卓越的程序员)架构师,听起来是如此神秘的一个称号。尤其是在开发领域刚入门不久的菜鸟级程序员眼中,架构师都是高手,都是牛人,都是如此高高在上的存在。 不过,在搞了四、五年编程之后,程序员们往往早已失去了当年对这些“高级”职位的神秘感,甚至会对自己所在项目的架构师抱怨不已,背后里称他们是一群水王。所以有江南白衣曾撰文述说:“国内的架构师到了三十岁以后很多就往

2016-03-26 15:39:48 773

原创 java测试URL是否连通的方法

private boolean canGetHtmlCode(String httpUrl) {  String htmlCode = "";  try {   InputStream in;   URL url = new java.net.URL(httpUrl);   HttpURLConnection connection = (Ht

2016-03-26 15:34:29 4927

原创 懒马效应

两马各拉一货车,一马走得快,一马慢吞吞。于是主人把后面的货全搬到前面。后面的马笑了:“切!越努力越遭折磨!”谁知主人后来想:既然一匹马就能拉车,干嘛养两匹?最后懒马被宰掉吃了。这是经济学中的懒马效应。

2016-03-26 15:31:18 1027

原创 连接池技术BoneCP

Jar包: slf4j-api-1.5.11.jar slf4j-simple-1.5.11.jar bonecp-0.6.6.jar bonecp-provider-0.6.6.jar google-collect-1.0.jar applicationContext.xml:     com.microsoft.sqlserver.jdbc.SQLSer

2016-03-26 15:28:52 399

原创 DB2SQL递归写法

with t1 (A,B,NUM) as (select A,B,row_number() over (partition by A order by id) from (VALUES( '1' , '1' ,'a'),( '2' , '2' ,'b'),( '3' , '1' ,'c'),( '4' , '1' ,'d'),( '5' , '3' ,'e'),(

2016-03-26 15:25:46 1813

原创 maven安装本地jar

maven 安装本地jar,打开CMD ,进入jar所在目录;mvn install:install-file  -Dfile=platform.service-0.0.1-SNAPSHOT.jar  -DgroupId=com.fmb  -DartifactId=platform.service -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar

2016-03-26 14:23:51 318

转载 而立之年!!!

时光匆匆,太匆匆!                   年过三十,不再患得患失,知道什么是要追求的,什么是无论如何努力也达不到的,追求应该努力的,放手无法挽回的,在琐碎和平庸里品味幸福和感动;懂得什么是目标,什么是理想,在实现目标的过程中历练,在憧憬理想的梦境里飞扬;无数的快乐就磨琢于这不懈的历练和轻舞的飞扬里;明白什么是风花雪月,什么是柴米油盐,远远的欣赏着风花雪月的浪漫旖旎,静静地细数着柴

2016-03-26 14:20:09 315

转载 人生的一种境界:享受第四种感情

这是一种超乎亲情,友情,爱情以外的第四种感情:朋友是永远的朋友,爱人是遥远而美丽的神话,而网恋中的男女则生活在神话与现实之间,其底蕴是那么丰富、隽永又潇洒超脱总是想看到对方,也总是愿接到对方打来的电话,可以和对方无拘无束地叙述自己的故事,却从来没想过把自己的生命与对方联系在一起。      为对方的忧愁万里担心,为对方的满足而喜悦,为对方的突然患上感冒而焦急,却从未考虑让自己介入到对方的命

2016-03-26 14:17:45 859

转载 终生受益的职业规划(转自惠普前总裁)

我有个有趣的观察,外企公司多的是25-35岁的白领,40岁以上的员工很少,二三十岁的外企员工是意气风发的,但外企公司40岁附近的经理人是很尴尬的。我见过的40岁附近的外企经理人大多在一直跳槽,最后大多跳到民企,比方说,唐骏。外企员工的成功很大程度上是公司的成功,并非个人的成功,西门子的确比国美大,但并不代表西门子中国经理比国美的老板强,甚至可以说差得很远。而进外企的人往往并不能很早理解这一点,把自

2016-03-26 14:06:41 734

转载 做一个道德完善的人

是要做一个有用的人?还是要做一个幸福而高尚的人?虽然两者有交叉,但有大不同。这是目前家庭教育和学校教育中间的一些朴素的教育理念。前者注重外在,后者注重内在。但无论是为师者,还是为人父母者,往往束手无措。前者,便是孔子三千弟子中的子路等,为大多数,而后者,只有颜回等寥寥者也。前者显,后者隐。前者永远不满足,后者知足常乐。       孔子赞成后者。比他晚一个世纪的苏格拉底在海的那一边也持相同的态

2016-03-26 14:04:17 430

转载 克服坏习惯的十个要领

习惯有好有坏。好习惯不用说,坏习惯谁都讨厌。然而要想戒掉坏习惯可不是一件容易的事情。就拿戒烟戒酒来说,对很多人来说就是一个大难题。其实,不光是戒除烟酒的问题,很多对自己健康生活和正当事业实现起来有障碍的习惯性做法都是如此。现根据国外的一些资料以及本人的经验,就戒除烟酒这两个对绝大多数人来说都是不好的习惯提出几条建议。当然,凡事不好或者坏的习惯都有其共性,那就是形成的时间很长且特别适合自己目前的生活

2016-03-26 11:28:08 705

转载 与构架有关的几个基本概念

1、模块(module):一组完成指定功能的语句,包括:输入、输出、逻辑处理功能、内部信息、运行环境(与功能对应但不是一对一关系)。         2、组件(component):系统中相当重要的、几乎是独立的可替换部分,它在明确定义的构架环境中实现确切的功能。   3、模式(pattern):指经过验证,至少适用于一种实用环境(更多时候是好几种环境)的解决方案模板(用于结构和行为。在

2016-03-26 11:26:06 270

转载 简单就是美——由模式谈面向对象的基本原则之单一职责原则

所谓单一职责原则,就是就一个类而言,应该仅有一个引起它的变化的原因。换句话说,一个类的功能要单一,只做与它相关的事情。 这个原则是最简单、最容易理解,却是最不容易做到的事情。这个原则的道理谁都理解,可是在实践中呢? 我们来看一个例子: if(action.equals("load")&&tab.equals("1")){ request.setAttribute("tabI

2016-03-26 11:24:11 271

转载 Abstract class VS Interface2

前面已经提到过,abstarct class在Java语言中体现了一种继承关系,要想使得继承关系合理,父类和派生类之间必须存在"is a"关系,即父类和派生类在概念本质上应该是相同的(参考文献〔3〕中有关于"is a"关系的大篇幅深入的论述,有兴趣的读者可以参考)。对于interface 来说则不然,并不要求interface的实现者和interface定义在概念本质上是一致的,仅仅是实现了int

2016-03-26 11:21:07 271

转载 Abstract class VS Interface

abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是

2016-03-26 11:19:49 387

Chrome获取MAC地址扩展程序

实现chrome获取MAC地址的扩展。 通过c++获取MAC地址,然后通过Chrome native message 技术调用C++程序,在javascript中获取MAC地址

2016-05-27

空空如也

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

TA关注的人

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