- 博客(285)
- 资源 (129)
- 收藏
- 关注
原创 Mac安装Spark
一、安装scala1、下载taz包进入http://www.scala-lang.org/download/下载后解压2.配置环境变量Mac修改 .bash_profile 文件,此文件是mac 当前用户的环境配置文件。/etc/profile 是当前系统的环境配置文件(Linux,系统可修改这个).bash_profile 文件的路径是在当前用户下。vim ~/.bash_...
2018-07-30 17:14:44 4575 1
原创 Java并发编程与技术内幕:ForkJoin 框架初探
一、ForkJoin介绍 ForkJoin是Java7提供的原生多线程并行处理框架,其基本思想是将大人物分割成小任务,最后将小任务聚合起来得到结果。它非常类似于HADOOP提供的MapReduce框架,只是MapReduce的任务可以针对集群内的所有计算节点,可以充分利用集群的能力完成计算任务。ForkJoin更加类似于单机版的MapReduce。 二、...
2018-07-27 15:01:42 2423 2
原创 Mysql各种超时时间理解
笔者最近做一个项目被mysql驱动包的的超时设置给坑了,起因就是因为没设置好connection timeout 和socket timeout,导致线程全部阻塞等待,机器线程全挂起,也无法处理新的其它请求,所以做了下面一些总结。1、常见超时 transaction timeout 设置的是一个事务的执行时间,里头可能包含多个statement,statem...
2018-07-26 19:54:59 7547 2
原创 Java并发编程与技术内幕:volatile的那些事
一、volatile变量 Java语言提供了一种稍弱的同步机制,即volatile变量,用来确保将变量的更新操作通知到其他线程。当把变量声明为volatile类型后,编译器与运行时都会注意到这个变量是共享的,因此不会将该变量上的操作与其他内存操作一起重排序。volatile变量不会被缓存在寄存器或者对其他处理器不可见的地方,因此在读取volatile类型的变量时总会返回最新写入的...
2018-07-25 15:17:30 2212 1
原创 常见限流算法研究与实现
一、限流场景 很多做服务接口的人或多或少的遇到这样的场景,由于业务应用系统的负载能力有限,为了防止非预期的请求对系统压力过大而拖垮业务应用系统。也就是面对大流量时,如何进行流量控制?服务接口的流量控制策略:分流、降级、限流等。本文讨论下限流策略,虽然降低了服务接口的访问频率和并发量,却换取服务接口和业务应用系统的高可用。1、实际场景中常用的限流策略: Nginx前端限流...
2018-07-24 15:42:06 3088 1
原创 Java 8编程进阶-Stream之函数式编程
1、什么是Stream Java 8 API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据。Stream 使用一种类似用 SQL 语句从数据库查询数据的直观方式来提供一种对 Java 集合运算和表达的高阶抽象。Stream API可以极大提高Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并...
2018-07-12 10:31:38 2743 1
原创 RabbitMq运行原理浅析
1.RabbitMq简介 AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。 RabbitMQ是一个开源的AMQP实...
2018-07-12 10:30:58 4578 2
原创 Kafka原理浅析
1.Kafka简介 Kafka 是一个消息系统,原本开发自 LinkedIn,用作 LinkedIn 的活动流(Activity Stream)和运营数据处理管道(Pipeline)的基础。现在它已被多家公司作为多种类型的数据管道和消息系统使用。活动流数据是几乎所有站点在对其网站使用情况做报表时都要用到的数据中最常规的部分。活动数据包括页面访问量(Page View)、被查看内容方面的...
2018-07-10 19:05:09 2360 2
原创 延迟队列DelayQueue研究
1.什么是DelayQueue DelayQueue 是 Delayed 元素的一个无界阻塞队列,只有在延迟期满时才能从中提取元素。该队列的头部 是延迟期满后保存时间最长的 Delayed 元素。如果延迟都还没有期满,则队列没有头部,并且 poll 将返回 null。当一个元素的 getDelay(TimeUnit.NANOSECONDS) 方法返回一个小于等于 0 的值时,将发生到期。即...
2018-07-03 09:42:17 3346 1
原创 如何确保三个线程顺序执行?
场景:有三个线程t1、t2、t3。确保三个线程t1执行完后t2执行,t2执行完成后t3执行。1.使用join1.使用join thread.Join把指定的线程加入到当前线程,可以将两个交替执行的线程合并为顺序执行的线程。比如在线程B中调用了线程A的Join()方法,直到线程A执行完毕后,才会继续执行线程B。t.join(); //调用join方法,等待线程t执行完毕t.join...
2018-07-03 09:42:00 16401 7
原创 Phoenix二级索引
在HBase中,只有一个单一的按照字典序排序的rowKey索引,当使用rowKey来进行数据查询的时候速度较快,但是如果不使用rowKey来查询的话就会使用filter来对全表进行扫描,很大程度上降低了检索性能。而Phoenix提供了二级索引技术来应对这种使用rowKey之外的条件进行检索的场景。其主要有以下四种索引类型1、Covered Indexes(覆盖索引)覆盖索引:只需要通过索引就能返回
2017-05-25 22:06:49 5125 3
原创 如何结合Sping与Java封装自己的Exception?
本文要实现的一个功能是将异常封装,并在抛出时能映射到对应的中文提示,同时这个异常抛出中文信息可以动态变化。
2017-02-27 20:35:21 2938
原创 Spark实战演练:WordCount实例
摘要:本文主要讲了如何使用Spark来运行一个wordCount实例1、本地运行实例 package com.lin.wordcountimport org.apache.spark.SparkConfimport org.apache.spark.SparkContextimport org.apache.spark.SparkContext._/** * 本地运行Spark *
2016-09-15 14:00:53 6096
原创 Java动态代理的之JDK和CGLIB
代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。 按照代理的创建时期,代理类可以分为两种。 静态代理:由程序员创建或特定工具自
2016-09-11 11:38:50 2039
原创 AngularJS+RequireJs实现动态加载JS和页面的方案研究
摘要:本文是笔者研究了几天的动态加载方案的成果,前台使用的是AngularJS+RequireJs+angular-ui-router+angularAMD。后台使用了SpringMVC+Spring /static/css/bootstrap/3.3.5
2016-09-11 11:35:55 6825
原创 Hadoop2.x实战:WordCount、Sort、去重复、average实例MapRedure编写
Hadoop版本:2.6.0Eclipse版本:luna一、 Hadoop做的一个计算单词的实例1、引入jar org.apache.hadoop hadoop-common 2.2.0 org.apache.hadoop hadoop-hdfs 2.2.0 org.apache.hadoop hadoop-c
2016-07-18 08:47:10 3764
原创 Java并发编程与技术内幕:聊聊锁的技术内幕(中)
摘要:本文主要讲了读写锁。一、读写锁ReadWriteLock 在上文中回顾了并发包中的可重入锁ReentrantLock,并且也分析了它的源码。从中我们知道它是一个单一锁(笔者自创概念),意思是在多人读、多人写、或同时有人读和写时。只能有一个人能拿到锁,执行代码。但是在很多场景。我们想控制它能多人同时读,但是又不让它多人写或同时读和写时。(想想这是不是和数据库的可重复读有点类型?),
2016-07-18 08:46:24 4606 5
原创 HBabse1.2.X实战:HBabse1.2.1和Zookeeper3.4.8安装
摘要:本文主要讲了如何进行Zookeeper和HBabse的安装
2016-06-28 08:55:50 3168
原创 Hadoop2.x实战:Eclipse本地开发环境搭建与本地运行wordcount实例
本文主要讲了如何在windows上通过eclipse来远程运行hadoop应用程序
2016-06-28 08:54:15 6689 1
原创 跟我学AngularJs:Aop拦截实例
config配置一般都是用来设置请求参数等,可以认为应用它可对angularjs自带的一些方法进行包装。而AOP,它是面向切面编程,全称是Aspect Oriented Programming,有用过Spring的同学都知道,AOP是一种动态代理机制。是对一些方法进行拦截后处理。然后再接着运行方法。而反应在AngularJS其实也就是对请求进行拦截,然后根据不同的拦截时机,有请求前、请求成功后、请求失败后相就的来做处理。当然,你也可以在其它sericve上加拦截,使用aop与指令结合,可以做很强大的功能。
2016-04-28 09:28:05 4225 1
原创 跟我学AngularJs:AngularJs内置指令大全
内置指令ng-model将表单控件和当前作用域的属性进行绑定。需要注意绑定的scope的范围(父scope与子scope)ng-init该指令被调用时会初始化内部作用域。一般不建议使用此参数ng-app使用该指令自动启动一个AngularJS应用。ngapp指令指定的应用程序的根元素,通常放置在网页的根元素如body或html 标签。只有一个AngularJS应用可以自动引导每个HTML文档。第一
2016-04-24 15:53:25 5223
原创 Select2使用实例——很好用的下拉提示选择框!
这几天一直的寻找能把select和sugget结合起来使用的例子,然后就看到了这个,发现真的很不错,它支持下拉的直接选择,也支持在下拉内容中输入过滤。
2015-12-06 22:05:28 24289
原创 【Spring】IOC之基于注解的配置bean(上)
从Spring2.0以后的版本中,Spring也引入了基于注解(Annotation)方式的配置,注解(Annotation)是JDK1.5中引入的一个新特性,用于简化Bean的配置,某些场合可以取代XML配置文件。开发人员对注解(Annotation)的态度也是萝卜青菜各有所爱,个人认为注解可以大大简化配置,提高开发速度,同时也不能完全取代XML配置方式,XML方式更加灵活,并且发展的相对成熟,这种配置方式为大多数 Spring开发者熟悉;注解方式使用起来非常简洁,但是尚处于发展阶段,XML配置文件和注解
2015-04-14 15:28:31 3184 2
原创 《Java 从入门到精通(第二版)》 观书有感
笔者今天认真试读了下此书,首先,按照笔者看书的习惯来说,喜欢先看看前面的部分。作者在前言里放了张学习java的路线图,是一个比较标准的学习流程。可是为什么在编程进阶那里放了个设计模式,然后下次才是抽象类与接口,包及访问权限(这名字和java编程思想好熟悉啊),个人认为,设计模式不应该放上来的,可能作者这里的设计模式有其它的含义吧。 全书文字和图像布局都比较合理,看着也挺舒服的。并且发现书
2015-04-13 22:30:31 4846 6
原创 java内存管理深入浅出
本文主要讲解了Java中的内存管理机制、泄露机制及各种数据的存储方式,内存管理是JAVA学习中的一个重点,深入理解它有助于帮助我们加深对JAVA程序的理解
2015-03-26 20:21:54 4897 9
原创 玩转Android之Activity详细剖析
本文主讲了什么是Activity,它的生命周期,不对的操作,调用了什么函数。以及不同的Activity之间的跳转、数据传递等。
2015-03-21 21:55:15 4074 2
原创 栈,堆,全局,文字常量,代码区总结
在C\C++中,通常可以把内存理解为4个分区:栈、堆、全局/静态存储区和常量存储区。下面我们分别简单地介绍一下各自的特点。
2015-03-19 14:55:11 13056 12
原创 进程和线程的定义及区别、线程同步、进程通讯方式总结
进程和线程的定义及区别一, 进程的概念进程是在多道程序系统出现以后,为了描述系统内部各作业的活动规律而引进的概念。由 于多道程序系统所带来的复杂环境,程序本身有了并行性【为了充分利用资源,在主存中同时存放多道作业运行,所以各作业之间是并行的】、制约性【各程序由于 同时存在于主存中,因此他们之间会存在着相互依赖、相互制约的关系。一个是通过中间媒介——资源发生的间接制约关系,一个是各并行程序间需要相互
2015-03-19 14:32:31 4423
原创 Windows消息传递机制详解
Windows是一个消息(Message)驱动系统。Windows的消息提供了应用程序之间、应用程序与Windows系统之间进行通信的手段。应用程序想要实现的功能由消息来触发,并且靠对消息的响应和处理来完成。必须注意的是,消息并非是抢占性的,无论事件的缓急,总是按照到达的先后派对,
2015-03-19 13:44:34 14466 1
原创 Android仿微信下拉列表实现(附源码)
本文要实现微信6.1中点击顶部菜单栏的“+”号按钮时,会弹出一个列表框。这里用的了Activity实现,其实最好的方法可以用ActionBar,不过这货好像只支持3.0以后的版本。
2015-03-10 20:44:40 7337 3
原创 恭喜自己荣升CSDN认证专家博客
中午一吃完饭,打开电脑。发现自己申请的专家博客通过了。回想过去的几个月在CSDN泡的日子,无论是博客、论坛还是下载。自己都付出了很多时间,也收获了很多。特别是在写博文的过程中,发现了自己的很多的问题,并且每写完一篇技术博文,自己的水平感觉又上了一个台阶。以前只想着花时间在开发上,都没想过要把自己的学习过程记录下来,每次学完就很容易忘,而当你真正动笔去写的时候,你就会注意到很多问题,为了写一篇好的博文,我会参考很多人的资料,包括别人的代码、别人的思路以及书本上的知识,有时写博文都写到1点去了。当然,这中间最重
2015-03-06 13:04:46 2121 3
原创 Android中padding与layout_margin的区别与用法
padding,含义为“填充”,像垫肩压类似的填充物,一个控件的padding及此控件内部的填充,由此可见padding是以所被定义的控件A为parent控件,而内部的内容物与控件A的间距。而layout_margin是A控件所在的控件为parent控件,是A与其的间距。
2015-03-03 13:30:50 14850
dubbo应用启动与停止脚本
2017-03-12
AngularJS+RequireJs实现动态加载JS和页面
2016-09-11
Bluemix数据缓存实例
2016-02-05
Bluemix文本转语音实例
2016-02-05
RabbitMq与Spring整合实例
2016-01-20
select2-4.0.1.zip
2015-12-06
Shiro登陆验证实例,采用SSM
2015-12-06
pytesser_v0.0.1.zip
2015-11-02
PIL-1.1.7.win32-py2.7.exe
2015-11-02
tesseract-1.03.tar.gz
2015-11-02
PageHelper分页实例(带页面)
2015-10-27
web流程图动态绘制-使用raphael
2015-09-30
Maven搭建Spring+Mybatis+SpringMVC+MySql实例
2015-09-30
Maven搭建Spring+Mybatis+MySql实例
2015-09-30
dubbo-admin-2.5.4
2015-08-27
dubbo-hellowrold实例
2015-08-27
Mybatis Generator自动生成代码实例
2015-07-23
Ajax+SpringMVC+Spring+Mybatis+MySql+js用户注册实例
2015-07-23
mybatis-generator-core
2015-07-23
JSP九大内置对象和四种属性范围解读
2015-07-15
JavaScript中使用Json范例
2015-07-03
Json开发用到的jar包
2015-07-03
servlet之cookied深入浅出
2015-06-24
Servlet仿CSDN动态验证码的生成-带数字和字母
2015-06-23
Servlet动态验证码的生成-带数字和字母
2015-06-23
Spring之Construcotrer注入和setter注入不同的XML写法方式
2015-06-20
Spring3.2.9+commons-logging-1.2.jar
2015-06-17
Spring使用XML配置声明式事务
2015-05-19
Spring AOP之基于AspectJ注解总结与案例
2015-05-19
Spring JDBC应用实例讲解
2015-05-19
Spring AOP之基于Schema配置总结与案例
2015-05-19
Spring AOP之5种增强方法应用范例
2015-05-19
AOP之JDK动态代理和CGLib动态代理
2015-05-19
IOC之基于Java类的配置Bean
2015-05-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人