- 博客(46)
- 资源 (17)
- 收藏
- 关注
转载 Android中Context详解
前言:本文是我读《Android内核剖析》第7章 后形成的读书笔记 ,在此向欲了解Android框架的书籍推荐此书。 大家好, 今天给大家介绍下我们在应用开发中最熟悉而陌生的朋友-----Context类 ,说它熟悉,是应为我们在开发中 时刻的在与它打交道,例如:Service、BroadcastReceiver、Activity等都会利用到
2016-06-16 20:54:40
473
原创 java推荐使用枚举定义常量
假如有一笔业务需要审核,审核状态分:未审核,审核中,审核通过,审核不通过。我们在程序里是否可以直接这么写:if(state==1){//1代表未操作//操作}else{//......}将状态标识直接写在代码里面(硬编码),只图一时方便,却是后患无穷,如果有一天你需要修改状态标识,用0代表未审核而不是1,你不得不将所有与该标识相关的代码都找出来一个个改,另外,在编码过程中,
2016-06-15 16:36:08
40412
2
转载 Http协议详解
1. 基础概念篇1.1 介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版
2016-06-13 11:11:42
1507
转载 记录一次MongoDB3.0.6版本wiredtiger与MMAPv1引擎的写入耗时对比
MongoDB3.0.x的版本特性(相对于MongoDB2.6及以下): 增加了wiredtiger引擎: 开源的存储引擎; 支持多核CPU、充分利用内存/芯片级别缓存(注:10月14日刚刚发布的3.0.7版本中,进一步改进了内存操作的性能); 基于B-TREE及LSM算法; 提供文档级锁(document-level concurrency control
2016-05-31 10:21:58
2302
转载 谷歌三篇论文之三---BigTable
首先,BigTable 从 2004 年初就开始研发了,到现在为止已经用了将近8个月。(2005年2月)目前大概有100个左右的服务使用BigTable,比如: Print,Search History,Maps和 Orkut。根据Google的一贯做法,内部开发的BigTable是为跑在廉价的PC机上设计的。BigTable 让Google在提供新服务时的运行成本降低,最大限度地利用了计算能
2016-05-23 15:22:58
528
转载 谷歌三篇论文之一---GFS
Google文件系统 GFS是一个可扩展的分布式文件系统,用于大型的、分布式的、对大量数据进行访问的应用。它运行于廉价的普通硬件上,但可以提供容错功能。它可以给大量的用户提供总体性能较高的服务。 1、设计概览 (1)设计想定 GFS与过去的分布式文件系统有很多相同的目标,但GFS的设计受到了当前及预期的应用方面的工作量及技术环境的驱动,这反映了它与早期的文件
2016-05-23 15:21:57
3833
转载 谷歌三篇论文之二---MapReduce
MapReduce:超大机群上的简单数据处理 MapReduce是一个编程模型,和处理、产生大数据集的相关实现。用户指定一个map函数处理一个key/value对,从而产生中间的key/value对集。然后再指定一个reduce函数合并所有的具有相同中间key的中间value。下面将列举许多可以用这个模型来表示的现实世界的工作。
2016-05-23 15:20:21
2395
原创 HIVE和HBASE区别
1. 两者分别是什么? Apache Hive是数据仓库。通过Hive可以使用HQL语言查询存放在HDFS上的数据。HQL是一种类SQL语言,这种语言最终被转化为Map/Reduce. 虽然Hive提供了SQL查询功能,但是Hive不能够进行交互查询--因为它是基于MapReduce算法。 Apache HBase Key/Value,基础单元是cell,它运行在HDFS之上。
2016-05-21 22:03:58
466
原创 java 匿名内部类
大家不要想太多 它就是一个子类,只不过没有名字而已,对于一个没有名字的子类那肯定得放在内部,所以就会叫匿名内部类。public class TestAnonymousInterClass{ public static void main(String args[]){ TestAnonymousInterClass test=n
2016-05-11 17:39:25
400
原创 Java中二进制、十进制、十六进制及ASCII码与String及字节数组与十六进制之间的转换
public class DigitalTrans { /** * 数字字符串转ASCII码字符串 * * @param String * 字符串 * @return ASCII字符串 */ public static String StringToAsciiString(Str
2016-05-09 12:54:42
12808
转载 java.util.concurrent 并发框架,异步执行器 Executor
1. java.util.concurrent - Java 并发工具包Java 5 添加了一个新的包到 Java 平台,java.util.concurrent 包。这个包包含有一系列能够让 Java 的并发编程变得更加简单轻松的类。在这个包被添加以前,你需要自己去动手实现自己的相关工具类。本文我将带你一一认识 java.util.concurrent 包里的这些类,然后你可以尝试着如何
2016-05-06 17:24:24
2732
原创 Hive
1 hadoop 的mapreduce是分布式的计算框架2 解决不会java但还要用mapreduce。hive 非java编程者对hdfs的数据做类似mapreduce的操作3 把sql翻译成mapreduce任务,提交给hadoop集群来执行4 由于hive是把sql翻译成mapreduce任务,那么 1 得有数据仓库(表)只用来
2016-05-06 15:29:38
586
原创 CDH
1 ping www.baidu.com2 修改hosts文件3 关闭防火墙4 互相免密登录,注意自己对自己的免密 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys scp ~/.ssh/id
2016-05-06 15:27:47
1368
原创 机器学习
1 机器学习的子类是深度学习,机器学习的父类是人工智能,核心都是机器学习。 百度大脑、谷歌大脑等都属机器学习,百度和谷歌数据量都大所以才会有百度大脑谷歌大脑2 机器学习,我只要有大量数据,我去训练,我就可以训练出一个好的模型,而且这个模型就可以做预测,预测和分类是分不开的3 机器学习就是 拟人 拟人 : 1 大量已有的数据(经
2016-05-06 15:24:51
759
原创 zookeeper
1 ZooKeeper 它是一个为分布式协调服务,那么它提供了一个分布式锁服务,用以协调其他分布式的应用。 它是Google的Chubby一个开源的实现,Google的项目一般不开源,因为开源后别人也用不了,它的服务节点都非常之大 ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。 Zo
2016-05-06 15:23:42
706
转载 Android Intent的简介以及属性的详解
一.Intent的介绍Intent的中文意思是“意图,意向”,在Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Ser
2016-05-06 10:42:51
374
转载 Activity生命周期
子曰:溫故而知新,可以為師矣。《論語》学习技术也一样,对于技术文档或者经典的技术书籍来说,指望看一遍就完全掌握,那基本不大可能,所以我们需要经常回过头再仔细研读几遍,以领悟到作者的思想精髓。近来回顾了一下关于Activity的生命周期,参看了相关书籍和官方文档,也有了不小的收获,对于以前的认知有了很大程度上的改善,在这里和大家分享一下。熟悉javaEE的朋友们都了解servlet技术,
2016-05-06 10:15:46
323
原创 快速搭建 node.js+express
1 安装node2 npm install -g express3 npm install -g express-generator4 express -V5 express helloworld6 npm start7 访问http://localhost:3000/
2016-04-29 15:26:57
276
原创 Http、TCP/IP协议与Socket
网络由下往上分为:物理层--数据链路层--网络层-- IP协议传输层-- TCP协议会话层--表示层和应用层-- HTTP协议1、TCP/IP连接手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接。TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上。建立起一个TCP连接需要经过“三次握
2016-04-28 11:54:38
511
转载 多核 CPU 和多个 CPU 有何区别
架构可以千变万化,面向需求、综合考量是王道。来,简单举个例子。假设现在我们要设计一台计算机的处理器部分的架构。现在摆在我们面前的有两种选择,多个单核CPU和单个多核CPU。如果我们选择多个单核CPU,那么每一个CPU都需要有较为独立的电路支持,有自己的Cache,而他们之间通过板上的总线进行通信。假如在这样的架构上,我们要跑一个多线程的程序(常见典型情况),不考虑超线程,那么每一个线程
2016-04-27 17:58:26
6140
原创 消息队列
一 应用场景有很多业务, 客户端和内网都要进行数据传输和交换, 现有架构中, 客户端不能直接访问内网, 那么客户端只能: 先把数据保存到外网服务器, 然后内网服务器再拉回来处理. 这种方式可以保证数据都能被处理, 但实效性不够. 通常, 外网服务器只起到一个暂时保存数据的作用, 保存客户端报上来的数据, 然后等待内网来拉走,把客户端看做producer, 内网看做consu
2016-04-21 11:32:44
387
原创 Struts1、Struts2和SpringMVC
这三个框架是按照上面的顺序,依次出现的,它们都是对MVC模式的实现。为什么会出现这三个、甚至更多的MVC框架呢?他们都是为了将URL世界映射到Java世界。尽管它们它们内部的实现思路不同,有着各自的优缺点,但是它们都做到了个自己的使用目的。历史介绍大多Web应用程序,都是运行在HTTP上的。HTTP协议是一系列无状态的文本传输协议。无状态的协议不记录收到的多个请求之间的
2016-04-21 11:22:25
1110
1
原创 tomcat简介
一、Tomcat背景 自从JSP发布之后,推出了各式各样的JSP引擎。Apache Group在完成GNUJSP1.0的开发以后,开始考虑在SUN的JSWDK基础上开发一个可以直接提供Web服务的JSP服务器,当然同时也支持Servlet, 这样Tomcat就诞生了。Tomcat是jakarta项目中的一个重要的子项目,其被JavaWorld杂志的编辑选为2001年度最具创新的java产品,
2016-04-21 11:12:48
327
原创 tomcat线程池
①客户端向服务器端发出请求;②这个过程比较重要,这时候Tomcat会创建两个对象:HttpServletResponse和HttpServletRequest。并将它们的引用(注意:是引用!)传给刚分配的线程中;③线程开始着手接洽servlet;④servlet根据传来的是GET和POST,分别调用doGet()和doPost()方法进行处理;⑤和⑥servlet将处理后的结果通过
2016-04-20 22:00:13
1676
原创 tomcat 性能优化
tomcat默认参数是为开发环境制定,而非适合生产环境,尤其是内存和线程的配置,默认都很低,容易成为性能瓶颈。 tomcat内存优化linux修改TOMCAT_HOME/bin/catalina.sh,在前面加入JAVA_OPTS="-XX:PermSize=64M -XX:MaxPermSize=128m -Xms512m -Xmx1024m -Duser.timezone=
2016-04-20 21:58:55
265
转载 NodeJS 单线程 和java 多线程
NodeJS宣称其目标是“ 旨在提供一种简单的构建可伸缩网络程序的方法 ”,那么它的出现是为了解决什么问题呢,它有什么优缺点以及它适用于什么场景呢?本文就个人使用经验对这些问题进行探讨。一. NodeJS的特点 我们先来看看NodeJS官网上的介绍:Node.js is a platform built on Chrome's JavaScript runtime fo
2016-04-20 20:17:41
8594
原创 hadoop_案例_2
三个案例都是关于算法的1 Pagerank算法,网页排名 PR值,是谷歌的算法(hadoop就是从gugool出来的) 是用来做搜索结果排序的 PR值是通过pagerank算出来的 百度 站长工具 京东是7(后面省略小数) 只有百度和google是10 google把A页面到B页面的连接叫做 A页面对B页面的投票,投票就是超链接 如
2016-04-20 17:46:05
682
原创 hadoop_案例_1
执行程序的3中方式: 1、直接在服务器上,mapreduce的执行环境是yarn,要打成jar包,放到环境里 使用命令的方式调用,执行过程也在服务器上 a、通过: hadoop jar jar路径 类的全限定名 这个命令会把jar自动提交到服务器上运行 2、在本地直接调用,执行过程在服务器上 a、首先在src下放置服务器上的
2016-04-20 17:43:40
410
原创 Mapper类/Reducer类中的setup方法和cleanup方法以及run方法的介绍
在hadoop的源码中,基类Mapper类和Reducer类中都是只包含四个方法:setup方法,cleanup方法,run方法,map方法。/** * Expert users can override this method for more complete control over the * execution of the Mapper. * @pa
2016-04-20 16:21:26
8402
原创 MapReduce:详解Shuffle过程
Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方。要想理解MapReduce, Shuffle是必须要了解的。 Shuffle的正常意思是洗牌或弄乱,可能大家更熟悉的是Java API里的Collections.shuffle(List)方法,它会随机地打乱参数list里的元素顺序。如果你不知道MapReduce里Shuffle是什么,那么请看这张图:
2016-04-08 11:46:09
266
原创 hadoop SecondNamenode
SecondNamenode名字看起来很象是对第二个Namenode,要么与Namenode一样同时对外提供服务,要么相当于Namenode的HA。真正的了解了SecondNamenode以后,才发现事实并不是这样的。下面这段是Hadoop对SecondNamenode的准确定义:SecondNamenode是对主Namenode的一个补充,它会周期的执行对HDFS元数据的检查点。
2016-04-07 15:21:27
414
原创 hadoop_2_完全分布式高可用
1 hadoop 中的高可用,后面所有内容都在高可用中2 HDFS 的高可用,针对namenode(管理节点) 当namenode内存受限时,增加namenode节点叫HDFS的联邦 3 HDFS HA namenode 高可用,zookeeper 主、备4 hadoop2.0 完全分布式 高可用,注意与keepalived不同的
2016-04-01 15:43:45
681
原创 hadoop_1_完全分布式
JAVA_HOME=/usr/java/jdk1.7.0_71export JAVA_HOME=${JAVA_HOME}export HADOOP_PREFIX=/home/hadoop-2.5.1 # 这个先不管,应该是mepredios中用配置etc文件完后重新启动关闭防火墙开机启动echo "service iptables stop" >> .bas
2016-04-01 15:42:25
320
原创 Linux(centos)系统各个目录的作用详解
文件系统的类型 LINUX有四种基本文件系统类型:普通文件、目录文件、连接文件和特殊文件,可用file命令来识别。 普通文件:如文本文件、C语言元代码、SHELL脚本、二进制的可执行文件等,可用cat、less、more、vi、emacs来察看内容,用mv来改名。 目录文件:包括文件名、子目录名及其指针。它是LINUX储存文件名的唯一地方,可用ls列出目录文件。 连接
2016-03-30 11:12:09
7512
原创 高可用
1 一个网卡 可以虚拟多个网口2 mac地址和ip地址修改参数目的是为了隐藏vip影响速度的一个主要原因就是io,解决io上线,io瓶颈。所以要对io进行分流,于是对相应进行分流,(因为一般来说请求的数据量非常少,相应的的数据量是非常)centos 查看io占用情况 yum install -y sysstatiostat -x 1 10查看实时流量/u
2016-03-25 20:58:35
968
原创 集群
1 会话保持因为要在tomcat上做缓存,如果没有会话保持,由于我们是轮循的则会在每个tomcat上保留一份,显然重复了会还保持就是,保证同一个ip访问同一台服务器,所以要在tenginx上加上会话保持会话保持有时候又叫做粘滞会话(Sticky Sessions)。什么是连接(Connection)、什么是会话(Session)从简单的角度来看:1 如果用户需要
2016-03-25 20:55:49
380
原创 vim常用快捷键
dd 删除一行 5dd 删除光标下5行 0 快速移到行首 $ 快速移到行尾 gg 到文首 G 到文尾 u 回退 ctrl + r 重做 ctrl + f 下一页 ctrl + u 上一页 / 向下查找
2016-03-18 23:02:46
369
原创 mysql安装
CentOS 6.4下编译安装MySQL 5.6.14 概述:CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14。确认你的安装版本mysql分为开发版本和稳定版本(GA),开发版本拥有最新的特性,但是并不稳定,也没有完全经过测试,可能存在严重的bug,而稳定版本是经过了长时间的测试,消除了具有已知的bug,其稳定性和安全
2016-03-18 21:57:47
343
原创 linux
1 虚拟机安装 1 有的安装虚拟机时报错,cup不支持开启虚拟,修改bios 设置项INtel Virtual Technology 为 enable 2 处理器(cpu)1个,pc电脑很少是多cpu的,核心可以2个 4 虚拟硬盘要全部用上 5 完整版的iso可以选中那个,如果是 mini版的则不用选,去选下一个
2016-03-18 21:55:32
385
原创 函数声明、函数表达式、匿名函数
函数定义和未定义的区别var add = (function () { var counter = 0; return function () { //alert(counter) return counter += 1; };})();(把括号移进去和放出来的效果是一样的 把function的外面
2016-03-10 19:07:41
863
google map api地图
2013-10-14
解决上传图片时request.getParameter是空值的java类
2011-12-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人