自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

大军的输出

看了那么多书,被文字的力量折服,自己却无法掌握这种力量。知识更在于产出,坚持写自己的东西,厚积薄发!

  • 博客(25)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

分布式系统--Lease机制

大多数数据分布方式都会有一个瓶颈问题--中心服务器存储维护着元数据,系统中其他的节点通过访问它读取,修改元数据。这样,中心服务器节点的性能就容易成为系统的瓶颈。解决方法也有多种,你可能会搭建一个集群专门存储元数据,并对外进行读写。但这样又要涉及到数据的一致性问题。本文将介绍被广泛应用于各种实际的分布式系统中的最重要的分布式协议--Lease机制。为了解决上面的性能瓶颈,lease机制设计了一套...

2015-04-25 14:18:27 249

分布式系统--数据分布方式

分布式系统如何拆解输入数据,将数据分发到不同的机器中。下面将介绍几种不同的数据分布方式。[color=red][b]一:哈希方式[/b][/color]哈希方式是最常见的数据分布方式,其方法是按照数据的某一特征计算哈希值,并将哈希值与机器中的机器建立映射关系,从而将不同哈希值的数据分布到不同的机器上。所谓数据特征可以是key-value 系统中的 key,也可以是其他与应用业务逻辑相关的值...

2015-04-23 16:59:10 550

Hibernate统计一个字段的多个可能值

[b]问题[/b]:针对一张表的一个字段,想要统计其出现的不同值的次数,并封装为对象集合返回。[b]坑点[/b]:1.hql语句中sum()返回一个long值,所以如果定义的对象实体类字段为int型,则会报错。2.要想日期直接用比较,必须保持日期格式,例如2014/01/01[b]代码[/b]:[code="java"] Query query = this .ge...

2015-04-14 17:01:40 280

用Hadoop分析专利数据集

要想让Hadoop做的工作有意义就需要耐人寻味的数据。大家可以到[url]http://www.nber.org/patents/[/url]上下载专利数据集。本文使用了专利引用数据集cite75_99.txt.这个数据集约有250MB,虽然没有一个真正的集群,但这个数据量的数据足以让我们心情澎湃的去练习MapReduce。而且一个流行的开发策略是为生产环境中的大数据集建立一个较小的,抽样的数...

2015-04-13 10:33:22 566

那些安装Hadoop遇到的坑

自从入手了Mac之后,迫不及待的部署了Hadoop伪分布模式,以为按照文档一步一步来即可,谁知过程还是遇到了好多坑。。。1.[b]编译Hadoop-2.6.0源码[/b]a. Mac默认jdk位置在 /Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/bin/,但还是要设置环境变量,或者自己下个,用系统的感觉目录组...

2015-04-04 11:25:31 312

沙箱安全模型

沙箱模型成就了java的安全性,沙箱基本组件有:[b]类装载器结构[/b][b]class文件检验器[/b][b]jvm和java语言本身具有的安全特性[/b][b]安全管理器和java API[/b]不同的类装载器装载的类具有不同的命名空间,jvm维护这个命名空间,同一个命名空间里不可能有两个相同名字的类。同一个命名空间里的类可以直接进行交互,不同命名空间的则不行,除非显...

2015-03-26 16:21:31 408

原创 深刻理解Python中的元类(metaclass)(转)

原文地址:http://blog.jobbole.com/21351/类也是对象 在理解元类之前,你需要先掌握Python中的类。Python中类的概念借鉴于Smalltalk,这显得有些奇特。在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段。在Python中这一点仍然成立:  >>> class ObjectCreator(...

2015-02-15 11:51:56 85

Carrierwave

接触rails已经有两个月了,现在情不自禁把它作为开发网站,做后台api的首选。一直没有记录学习它的过程,突然想随笔记录下现在遇到的点点滴滴。关于上传文件到服务器,我们有几种选择,主流是carrierwave或者paperclip。本文简单介绍下carrierwave。1.在你的rails项目的Gemfile中加入gem 'carrierwave'2.安装这个gembund...

2014-12-02 00:40:53 225

分布式服务框架 Zookeeper

zookeeper介绍zookeeper是一个为分布式应用提供一致性服务的软件,它是开源的Hadoop项目中的一个子项目,主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等zookeeper安装和使用Zookeeper 的安装非常简单,下面将从单机模式和集群模式两个方面介绍 Zookeeper 的安装和配置。 单机...

2014-11-29 16:02:39 79

原创 (反)序列化

本章关注对象序列化API,它提供了一个框架,用来将对象编码成字节流,并从字节流中重新构建对象。“将对象编码成字节流”被称作对象序列化,相反的处理过程被称作反序列化。序列化技术为远程通信提供了标准的线路级对象表示法,也为JavaBeans组件结构提供了标准的持久化数据格式。 第七十四条:谨慎地实现Serializable接口实现Serializable接口而付出的最大代价是,一旦一个...

2014-11-24 23:07:06 75

原创 通用程序设计

本章主要讨论java语言的具体细节,包括局部变量的处理,控制结构,类库和各种数据类型等。第四十五条:将局部变量的作用域最小化这和使类和成员的可访问性最小化本质差不多,必要性不用多说。要使局部变量作用域最小化,最有力的方法就是在第一次使用它的时候声明。几乎每个局部变量的声明都应该包含一个初始化表达式。如果你还没有足够的信息对一个变量进行有意义的初始化,就应该推迟这个声明,直到可以初始化。...

2014-11-24 13:20:15 104

JVM的server模式和client模式

最近在看关于java并发编程的一本书,书中提及到了虚拟机的server和client模式。不是很理解,于是上网扫盲,总结如下:Jvm有client和server两个版本,分别针对桌面应用程序和服务端应用做了相应的优化,client版本加载速度较快,server版本加载速度较慢但运行起来较快。简言之:client版本启动快,server版本运行快。由于服务器的CPU、内存和硬盘都比客户端机器...

2014-11-23 13:54:54 180

原创 类和接口

本章阐述的一些原则,将使你设计出更加有用、健壮和灵活的类和接口。第十三条:使类和成员的[b]可访问性最小化[/b]区别设计的模块是否良好,关键在于这个模块对于外部的其他模块而言,是否隐藏其内部数据和其他实现细节。设计良好的模块会把自己的API和具体实现隔离开,只通过API和外部通信,这个概念成为信息隐藏或封装。之所以信息隐藏这么重要,是基于这样一个事实:它可以有效解除各模块之间的耦...

2014-11-20 21:42:07 68

对于所有对象都通用的方法

尽管Object是一个具体类,但设计它主要是为了扩展。它所有的非final方法都有明确的通用规定。任何一个类,在覆盖这些方法的时候,都有责任去遵守这些通用规定,如果不能做到这一点,其他依赖于这些规定的类就无法结合该类一起正常运作。第八条:[b]覆盖equals[/b]时请遵守通用规定如果类具有自己特有的逻辑相等概念(不同于对象等同的概念),而且超类还没有覆盖equals以实现期望的行为...

2014-11-19 14:18:35 98

原创 创建和销毁对象

本系列博客皆为读书笔记。读者可看原书 :D 本篇的主题是[color=red][b]创建和销毁对象[/b][/color]。第一条:考虑用[b]静态工厂方法[/b]代替构造器为了获取类的一个实例,最常用的方法就是提供一个公有的构造器,但类也可以提供一个公有的静态工厂方法。(这里的静态工厂方法与设计模式中的工厂方法模式不同)静态工厂方法与构造器相比有下面几个优势:1.静态...

2014-11-18 00:11:48 88

windows下curl的安装和简单使用

curl是利用URL语法在命令行方式下工作的开源文件传输工具。它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。[color=red]一.windows下curl的安装[/color]1. 到这里[url]http://curl.haxx.se/download/[/url]下载文件curl-7....

2014-08-06 08:35:32 473 1

从技术角度入门Hadoop

Hadoop这个名字不是一个缩写,它是一个虚构的名字。该项目的创建者,Doug Cutting这样解释Hadoop的得名:"这个名字是我孩子给一个棕黄色的大象样子的填充玩具命名的。我的命名标准就是简短,容易发音和拼写,没有太多的意义,并且不会被用于别处。小孩子是这方面的高手。”Hadoop是[b]适合海量数据的分布式存储和计算平台[/b]。它可以用来处理比较小的只有几十K,几十M的数据,但...

2014-07-31 10:06:39 91

APK反编译(附图)

既然安卓是用java写的,应该还是可以反编译得到源代码的。下面是我的实践:反编译前准备:下载反编译工具包[url]http://pan.baidu.com/s/1qWFcueC[/url]或者[url]http://download.csdn.net/detail/sunboy_2050/4633436[/url]介绍一下工具包下的各个文件夹及其功能: [color=r...

2014-07-30 09:02:29 124

安卓手势识别开发浅谈

手势识别在安卓开发里虽然用到的场景不是很多,但有时候还是能让你的产品更方便,更有趣味。比如登陆时不用每次重复输入密码,只需九宫格手势解锁,就像支付宝客户端那样。下面我们完成一个简单的手势识别开发。我们首先需要一个描述手势动作的文件,在模拟器里预装一个叫GesturesBuilder的程序,这个程序就是让你创建自己的手势的(GesturesBuilder的源代码在sdk问samples里面有,有...

2014-07-29 12:08:37 162

原创 手机客户端连接服务器进行登录验证

最近两个月感觉还是学了不少东西,安卓了解更加透彻,web开发也能拿的出手,php也开始上手了。总会有不想写代码的时候,这时就来总结总结学习的东西也挺好的。现在主要存在两种网络模式,B/S和C/S。相对于B/S,C/S可能要稍微复杂一点,需要我们开发客户端。C/S可以使用tcp/ip协议和http协议进行通信。我们从简单的开始,看一下手机客户端怎么用这两种方式连接后台验证密码成功登陆。一、使...

2014-07-13 19:42:53 260

得到字符串形式的运算表达式结果

可能这个对一些人来说不值一提,但对新手应该还算是个惊喜。[color=red]import javax.script.*;public static void main(String[] args) {ScriptEngineManager sem = new ScriptEngineManager();ScriptEngine se = sem.getEngi...

2014-05-13 23:26:33 253

感谢分形给我的相对论

第一次接触分形是看到那些个彩色,但又是非规则形态的图形,当时胡哥让我们用java把这些图形画出来,就觉得很神奇,充满劲头的去做。毕竟做些给人直观感受刺激的东西总比做其他的要好玩一点。几天一过,已经在自己的琢磨和各位哥的指导下将一些比较经典的分形做出来了。但与此同时,自己对分形的兴趣却在急剧下降,毕竟我们都是为学java而来,不是专门研究分形学的学者。做出漂亮的分形逐渐演变成了数学问题,与jav...

2013-12-02 20:56:38 70

java之画图板浅析(二)---实现重绘及拓展

在我的上一篇博客(http://1316478764.iteye.com/admin/blogs/1948471),我简单实现了一个画图板,但是仍有很大的bug,当窗体大小发生改变时,我们会发现之前画的图形会遭到破坏,甚至最小化后再打开,图形完全消失。导致这个bug的原因也很简单,因为内存中没有保存这些图形,接下来我们就具体探讨一下这个问题。首先我们要知道当窗体大小发生改变时,系统会自动调用J...

2013-10-19 10:12:57 239

java之画图板浅析(一)

这里说的画图板可不是系统中的画图板,但还是能实现系统画图板的一些功能的。[b]设计思路及过程:[/b]在coding之前,我们肯定先要大致对我们画板的轮廓有个基本定位,可以创建一个界面,上面是3个按钮,分别是直线,矩形,椭圆,点击不同按钮可以画出不同形状,然后下方是绘图区,这样就要求我们必须创建两个JPanel,将上方菜单栏和下方绘图区隔离开。当我们创建两个JPanel后,添加分隔符,参考代码...

2013-09-28 02:23:37 130

java之QQ登录界面小结

学java第一个做的比较像样的东西是QQ界面(当然,这是对新手而言,大神们看到肯定说我是逗比),QQ是每个人几乎每天都要玩的工具,所以对于自己做一个QQ多多少少让人兴奋,哪怕暂时只是做出了登录界面。但我把所有目前学到的知识全应用到了上面(主要是监听器,swing组件),并且对于自己想实现的功能,通过百度,问各位哥,最终大部分能得到解决,这种求知欲望让我备受鼓舞.设计思路及过程:我想要实现的是像...

2013-09-25 00:50:31 431

分布式系统原理

分布式系统原理简介,大家可以根据这对分布式有个大概了解

2015-05-23

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

TA关注的人

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