自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

精益求精

因为专业,所以卓越!

  • 博客(458)
  • 资源 (19)
  • 收藏
  • 关注

转载 Spark RDD 详细介绍

  RDD(Resilent Distributed Datasets)俗称弹性分布式数据集,是Spark 底层的分布式存储的数据结构,可以说是 Spark 的核心, Spark API 的所有操作都是基于 RDD 的. 有容错机制并可以被并行操作的元素集合,具有只读、分区、容错、高效、无需物化、可以缓存、RDD依赖等特征。RDD只是数据集的抽象,分区内部并不会存储具体的数据。       R...

2018-09-13 17:47:58 1088

原创 Java多线程--局部变量(threadlocal)

<br />ThreadLocal是什么<br />  ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是thread local variable(线程局部变量)。线程局部变量(ThreadLocal)的功用非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,是每一个线程都可以独立地改变自己的副本,而不会和其它线程的副本冲突。从线程的角度看,就好像每一个线程都完全拥有该变量。<br /><br />  ThreadLocal的接口:<br /><br />  Ob

2010-11-26 10:08:00 1169

转载 Hystrix 使用指南(1):基本使用

一、前言现在分布式系统的规模不断增加,对可用性的要求也越来越高。在各种高可用设计模式中,熔断、隔离、降级是经常被使用的。而相关的技术,如 Hystrix,便成为最近的热点。从16年初开始,我所在的团队便开始应用 Hystrix。为了进一步推动系统可用性升级,普及 Hystrix 在团队内的使用,我便有了写一系列 Hystrix 相关的文章的想法。虽然 Hystrix 有着很详细的官方文...

2018-11-28 17:42:59 786

转载 redis基础知识

什么叫缓存   在开发网站的时候,如果有一些数据在短时间之内不会发生变化,而他们还要被频繁访问,为了提高用户的请求速度和降低网站的负载,就把这些数据放到一个读取速度更快的介质上(或者是通过较少的计算量就可以获得该数据),该行为就称作对数据的缓存。该介质可以是文件、数据库、内存。内存经常用于数据缓存。    缓存的两种形式 页面缓存:经常用在CMS内存管理系统里边,如新闻页面,内容主体单一集...

2018-11-27 17:26:05 461

转载 Redis在项目中的运用总结

1 概述Redis作为一款性能优异的内存数据库,在互联网公司有着多种应用场景,本文介绍笔者在项目中使用Redis的场景。主要从以下几个方面介绍:分布式锁接口限流器订单缓存Redis和DB数据一致性处理防止缓存穿透和雪崩分布式session共享2 分布式锁Redis实现分布式锁3 接口限流器Redis实现限流器4 订单缓存整个订单的存储结构如下:使用Redis...

2018-11-27 15:56:45 1531

转载 Redis生成主键的优点及与其他生成主键方式的对比

使用Redis生成主键的优点及与其他生成主键方式的对比Redis生成ID当使用数据库来生成ID性能不够要求的时候,我们可以尝试使用Redis来生成ID。这主要依赖于Redis是单线程的,所以也可以用生成全局唯一的ID。可以用Redis的原子操作 INCR和INCRBY来实现。可以使用Redis集群来获取更高的吞吐量。假如一个集群中有5台Redis。可以初始化每台Redis的值分别是1,2,3...

2018-11-27 14:27:33 2750 2

转载 【Http认证方式】——Basic认证

今天在访问请求:http://192.168.2.113:8080/geoserver/rest/workspaces时,浏览器弹出窗口需要输入用户名和密码 ,并且,如果不输入或者输入错误,浏览器返回 可以在火狐浏览器的网络监控这里看到请求的详细信息, 服务器会返回一个401 Unauthozied给客户端,并且在Response 的 header “WWW-Authentica...

2018-11-21 16:11:25 1285

转载 java中的302和sendRedirect的区别

java中有一个sendRedirect函数这个用于跳转到另外一个页面,这个实际上是一个302跳转,但是不完全等同于302跳转 点击(此处)折叠或打开response.sendRedirect("login.jsp"); 不等于   response.addHeader("location", "login.jsp"); response.setStatus(302);1.比...

2018-10-29 09:12:03 842

转载 SpringBoot项目如何进行打包部署

springboot的打包方式有很多种。有打成war的,有打成jar的,也有直接提交到github,通过jekins进行打包部署的。这里主要介绍如何打成jar进行部署。不推荐用war,因为springboot适合前后端分离,打成jar进行部署更合适。 首先需要在application.properties当中配置端口 server.port=8080# http://lo...

2018-10-28 16:02:14 403

转载 Memcached集群/分布式/高可用 及 Magent缓存代理搭建过程 详解

当网站访问量达到一定时,如何做Memcached集群,又如何高可用,是接下来要讨论的问题。有这么一段文字来描述“Memcached集群”Memcached如何处理容错的?不处理!:) 在memcached节点失效的情况下,集群没有必要做任何容错处理。如果发生了节点失效,应对的措施完全取决于用户。节点失效时,下面列出几种方案供您选择:* 忽略它! 在失效节点被恢复或替换之前,还有很...

2018-09-17 17:34:29 249

转载 memcached分布式实现原理

Memcache是该系统的项目名称,Memcached是该系统的主程序文件(字母d可以理解为daemon),以守护程序方式运行于一个或多个服务器中,随时接受客户端的连接操作,使用共享内存存取数据。正文  在高并发环境下,大量的读、写请求涌向数据库,此时磁盘IO将成为瓶颈,从而导致过高的响应延迟,因此缓存应运而生。无论是单机缓存还是分布式缓存都有其适应场景和优缺点,当今存在的缓存产品也是数不...

2018-09-17 17:11:09 312

转载 Memcached

数据库的前端缓存区文件系统内核缓冲区,位于物理内存的内核地址空间,所有对磁盘文件的读写操作都要经过它,也可以把它看作是磁盘的前端设备。 这块内核缓冲区实际上包括2个部分:读缓存区、写缓存区。读缓存区中保存着最近系统从磁盘上读取的数据,一旦下次需要读取这些数据的时候,内核将直接从这里获得,而不需访问磁盘。 写缓存区的目的主要是为了减少磁盘的物理写操作,内核缓区可以将多次写操作指令累计起来,...

2018-09-17 16:55:42 425

转载 Spark基础之shuffle原理分析

一 概述Shuffle是对数据重新组合和分配Shuffle就是对数据进行重组,由于分布式计算的特性和要求,在实现细节上更加繁琐和复杂在MapReduce框架,Shuffle是连接Map和Reduce之间的桥梁,Map阶段通过shuffle读取数据并输出到对应的Reduce;而Reduce阶段负责从Map端拉取数据并进行计算。在整个shuffle过程中,往往伴随着大量的磁盘和网络I/O。...

2018-09-14 16:40:18 224

转载 hadoop Map-Reduce入门讲解

Mapper和Reduce,则需要生成一个Map-Reduce得任务(Job),其基本包括以下三部分:输入的数据,也即需要处理的数据 Map-Reduce程序,也即上面实现的Mapper和Reducer 此任务的配置项JobConf欲配置JobConf,需要大致了解Hadoop运行job的基本原理:Hadoop将Job分成task进行处理,共两种task:map task和reduc...

2018-09-14 15:44:07 418

转载 SPARK资源参数调优

资源参数调优了解完了Spark作业运行的基本原理之后,对资源相关的参数就容易理解了。所谓的Spark资源参数调优,其实主要就是对Spark运行过程中各个使用资源的地方,通过调节各种参数,来优化资源使用的效率,从而提升Spark作业的执行性能。以下参数就是Spark中主要的资源参数,每个参数都对应着作业运行原理中的某个部分,我们同时也给出了一个调优的参考值。num-executors参数...

2018-09-14 15:43:01 291

转载 Spark Stage的划分

RDD之间有一系列的依赖关系,依赖关系又分为窄依赖和宽依赖。Spark中的Stage其实就是一组并行的任务,任务是一个个的task 。窄依赖父RDD和子RDD partition之间的关系是一对一的。或者父RDD一个partition只对应一个子RDD的partition情况下的父RDD和子RDD partition关系是多对一的。不会有shuffle的产生。父RDD的一个分区去到子RDD的...

2018-09-14 15:38:10 20648 5

原创 Spark宽窄依赖

      Spark中RDD的高效与DAG图有着莫大的关系,在DAG调度中需要对计算过程划分stage,而划分依据就是RDD之间的依赖关系。针对不同的转换函数,RDD之间的依赖关系分类窄依赖(narrow dependency)和宽依赖(wide dependency, 也称 shuffle dependency).宽依赖与窄依赖窄依赖是指父RDD的每个分区只被子RDD的一个分区所使用,...

2018-09-13 18:49:02 448

原创 Spark Shuffle FetchFailedException

spark大规模数据处理中,有个比较常见的错误:org.apache.spark.shuffle.MetadataFetchFailedException: Missing an output location for shuffle 0ERROR shuffle.RetryingBlockFetcher: Failed to fetch block shuffle_0_1300_10...

2018-09-13 16:10:43 2883

转载 Sqoop学习之路

一、概述 二、工作机制 三、安装 1、前提概述 2、软件下载 3、安装步骤 四、Sqoop的基本命令 基本操作 示例 五、Sqoop的数据导入 1、从RDBMS导入到HDFS中 2、把MySQL数据库中的表数据导入到Hive中 3、把MySQL数据库中的表数据导入到hbase  正文回到顶部一、概述sqoop 是 apache 旗下一款...

2018-09-03 15:55:05 382

转载 Hive学习之路 (二十一)Hive 优化策略

目录一、Hadoop 框架计算特性 二、优化常用手段 三、排序选择 四、怎样做笛卡尔积 五、怎样写 in/exists 语句 六、设置合理的 maptask 数量 七、小文件合并 八、设置合理的 reduceTask 的数量 九、合并 MapReduce 操作 十、合理利用分桶:Bucketing 和 Sampling 十一、合理利用分区:Partition  十二、Jo...

2018-09-03 15:35:49 201 2

转载 Uber开源JVM Profiler,用以跟踪分布式Java虚拟机

6月下旬,Uber开源了一个分布式性能分析器,名为JVM Profiler。Uber搭建这一工具的目的是解决他们在使用Apache Spark框架过程中的资源配置问题。Apache Spark是一个非常流行的框架,主要用于处理大型数据流问题,这正是Uber所需要的。JVM Profiler是为Spark而建的,但它也可以被应用于任何基于JVM的服务或应用。Uber的需求是在运行在数以千计的机器...

2018-08-30 15:26:17 521

转载 MongoDB + Spark: 完整的大数据解决方案

时间 2016-09-02 17:57:23  MongoDB中文社区原文  http://www.mongoing.com/tj/mongodb_shanghai_spark主题 MongoDB Spark 大数据MongoDB上海的活动已经结束快1个月了,我们再来回顾一下TJ在大会上进行的精彩分享吧~ MongoDB + Spark: 完整的大数据计算解决方案。Spark介绍...

2018-08-30 15:11:11 254

转载 ETL讲解

https://www.cnblogs.com/yjd_hycf_space/p/7772722.htmlETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。 ETL是BI项目重要的一个环节。 通常情况下,在BI项目中ETL会花掉整个项目至少1/3的时间,ETL设计的好坏直接关接到BI项目的成败。...

2018-08-30 12:46:03 240

转载 AndroidHook机制——浅谈

前言在测试android过程中,能对函数进行hook能帮助更加深入的进行测试,本文简单介绍了hook框架xposed和frida,从简单的小例子做了简单的演示,算是自己的学习的过程,是个入门的过程。 xposed框架 xposed,主页:http://repo.xposed.info/module/de.robv.android.xposed.installer是个开源的框架,...

2018-08-16 09:04:05 1457

转载 AndroidHook机制——YAHFA

在Android Dalvik时代,最流行的Hook框架非Xposed莫属了。各种功能强大的Xposed插件极大地丰富了Android的可玩性,而对于安全研究人员来说,hook则是应用逆向工作中的一项非常有效的手段。但是,进入到ART时代后,情况逐渐发生了变化。Xposed框架对系统进行了较大的改动,因此其安装适配难度显著提高;另一方面,随着近年来热修复技术的兴起,各大国内厂商也纷纷推出了自己...

2018-08-16 09:03:52 4591

转载 AndroidHook机制——ART

0x00 前言之前一直都是在Dalvik 虚拟机上在折腾,从Android 4.4开始开始引入ART,到5.0已经成为默认选择。而且最近看到阿里开源的 Dexposed 框架,已经提供了对于android art 模式下的 hook 支持,所以对照着android art 部分的源码和之前 liang 大牛放出了hook代码研究了一下ART模式下的hook原理,做个简单的整理。关于androi...

2018-08-15 22:01:35 1039

转载 AndroidHook机制——应用换肤

Android系统使用了ClassLoader机制来进行Activity等组件的加载;apk被安装之后,APK文件的代码以及资源会被系统存放在固定的目录(比如/data/app/package_name/1.apk)系统在进行类加载的时候,会自动去这一个或者几个特定的路径来寻找这个类;但是系统并不知道存在于插件中的Activity组件的信息,插件可以是任意位置,甚至是网络,系统无法提前预知,因此正...

2018-08-15 21:56:57 1190

转载 AndroidHook机制——Activity的启动过程的入侵拦截

这篇文章主要讲解如何利用动态代理技术Hook掉系统的AMS服务,来实现拦截Activity的启动流程。代码量不是很多,为了更容易的理解,需要掌握JAVA的反射,动态代理技术,以及Activity的启动流程。 如果对上面的知识点有些遗忘,建议按需扫读下面三篇文章,否则跳过。Java 反射 Java 动态代理机制分析及扩展,第 1 部分 深入理解Activity启动流程(三)–Activit...

2018-08-15 21:52:39 888

转载 AndroidHook机制——入侵监听器ClickListener

背景需求如下,在不侵入业务代码的情况下监听所有的点击事件,并记录所有的点击数,用于统计热点页面和其他一些分析工作。仔细分析了下,主要涉及到2个问题:如何获取所有的带点击事件的View对象 不改动原来的业务代码,但是在原来点击事件的业务逻辑中加入新的逻辑,如点击数上传等最大的难点是怎么在不改变onclickListener-&gt;onclick(){}内部的代码块的同时,又能插入一段新...

2018-08-15 21:48:06 1685 3

转载 AndroidHook机制——VirtualApp

VirtualApp是一个开源的Android App虚拟化引擎,允许在其中创建虚拟空间,并在这个虚拟空间中运行其他应用。通过阅读源码及动态调试,基本了解了其运行原理,在此记录。本质Android应用隔离是基于Linux系统的多用户机制实现的,即每个应用在安装时被分配了不同的Linux用户uid/gid。而在VirtualApp中,client应用(通过VirtualApp安装的应用)与h...

2018-08-15 21:32:24 1987

转载 AndroidHook机制——VirtualHook

对于Android应用安全研究人员来说,Xposed想必一定不陌生。作为一款流行的应用hook框架,Xposed允许对应用进行无感知的hook。许多实用工具,例如早期的脱壳工具Zjdroid,关闭证书强校验的JustTrustMe,Android恶意应用分析沙盒Cuckoo-Droid等,均是通过Xposed完成。然而,从Android 5.0时代起,DVM模式被ART模式取代,代码执行的机制进行...

2018-08-15 21:28:01 1085

转载 AndroidHook机制——插件化之Binder Hook

Android系统通过Binder机制给应用程序提供了一系列的系统服务,诸如ActivityManagerService,ClipboardManager, AudioManager等;这些广泛存在系统服务给应用程序提供了诸如任务管理,音频,视频等异常强大的功能。插件框架作为各个插件的管理者,为了使得插件能够无缝地使用这些系统服务,自然会对这些系统服务做出一定的改造(Hook),使得插件的开发...

2018-08-15 21:25:08 385

转载 AndroidHook机制——插件化之AMS&PMS

在前面的文章中我们介绍了DroidPlugin的Hook机制,也就是代理方式和Binder Hook;插件框架通过AOP实现了插件使用和开发的透明性。在讲述DroidPlugin如何实现四大组件的插件化之前,有必要说明一下它对ActivityManagerServiche以及PackageManagerService的Hook方式(以下简称AMS,PMS)。ActivityManagerSer...

2018-08-15 21:24:05 313

转载 AndroidHook机制——Hook动态代理实现插件化

使用代理机制进行API Hook进而达到方法增强是框架的常用手段,比如J2EE框架Spring通过动态代理优雅地实现了AOP编程,极大地提升了Web开发效率;同样,插件框架也广泛使用了代理机制来增强系统API从而达到插件化的目的。本文将带你了解基于动态代理的Hook机制。阅读本文之前,可以先clone一份 understand-plugin-framework,参考此项目的dynamic-pr...

2018-08-15 21:19:15 297

转载 AndroidHook机制——Hook技术原理

1. 什么是 HookHook 英文翻译过来就是「钩子」的意思,那我们在什么时候使用这个「钩子」呢?在 Android 操作系统中系统维护着自己的一套事件分发机制。应用程序,包括应用触发事件和后台逻辑处理,也是根据事件流程一步步地向下执行。而「钩子」的意思,就是在事件传送到终点前截获并监控事件的传输,像个钩子钩上事件一样,并且能够在钩上事件时,处理一些自己特定的事件。Hook 原理图...

2018-08-15 21:14:14 5766

原创 Hadoop-MapReduce2的几个基本示例

去重处理(Distinct)类似于db中的select distinct(x) from table , 去重处理甚至比WordCount还要简单,假如我们要对以下文件的内容做去重处理(注:该文件也是后面几个示例的输入参数)28832353027基本上啥也不用做,在map阶段,把每一行的值当成key分发下去,然后在reduce阶段回收上来就可

2017-11-03 11:02:51 317

转载 Hadoop 里MapReduce里 实现多个job任务 包含(迭代式、依赖式、链式)

一、迭代式,所谓的迭代式,下一个执行的Job任务以上一个Job的输出作为输入,最终得到想要的结果。 这里我只写关键的代码了[java] view plain copy Job job = new Job(new Configuration(),“test”);    JobConf jobConf=(JobConf) job.getConfiguration();  jobConf

2017-11-03 10:29:00 775

转载 Android对apk源码的修改--反编译+源码修改+重新打包+签名【附HelloWorld的修改实例】

近期遇到了需要修改apk源码的问题,于是上网查了下相关资料,编写了HelloWorld进行修改看看可行性,经过实验证明此方案可行,并且后来也成功用这个方法对目标apk进行了修改,只不过需要修改的部分比HelloWorld复杂些,但是只要了解下smali也能进行相关的修改,下面讲下具体的步骤,文中所用到的资源会在文章的结尾给出,感兴趣的可以下载试试。    首先介绍下要用到的工具

2017-09-30 14:49:53 4270

转载 hadoop 多个Mapper和Reducer的Job

对于复杂的mr任务来说,只有一个map和reduce往往是不能够满足任务需求的,有可能是需要n个map之后进行reduce,reduce之后又要进行m个map。在hadoop的mr编程中可以使用ChainMapper和ChainReducer来实现链式的Map-Reduce任务。ChainMapper以下为官方API文档翻译: ChainMapper类允许在单一的Map

2017-09-09 20:00:03 2251

转载 Hive安装

1. 下载可以从http://hive.apache.org/downloads.html下载你想要的版本,在这我们使用的是2.1.0版本2. 解压把下载好的文件解压到~/opt目录下:xiaosi@yoona:~$ tar -zxvf apache-hive-2.1.0-bin.tar.gz -C opt/3. 配置根据模板创建配置文件

2017-09-06 17:06:46 241

web学习笔记

web学习之路的笔记,主要从web兴起和历史演变总结。主要讲解 了浏览器、服务器、网络http协议和相关web自动化等

2018-08-15

Scala学习技术教程

一本很好的Scala学习教程,带有丰富的课后习题,是一本初学者的知识指导!

2017-10-29

scale编程技术

学习Scala的必备书籍,能快速入门学习相关核心技术,书中降到很多实用的编程技巧和方法论,是一本入门的好资料

2017-10-29

日历黄历源码

体积最新的万年历源码,左右滑动换月份,支持黄历,非常不错的代码,希望大家能够喜欢。

2014-02-26

天气预报源码

中国城市天气预报源码,支持定位分享功能。支持PM2.5天气实时数据,代码简介欢迎大家下载使用。

2014-02-26

天气PM2.5源码

中国天气PM2.5客户端源码,支持目前中国主要城市。

2014-02-26

OPlayer依赖的库文件

Vitamio 是一个针对Android和iOS的开源framework类库。

2014-02-26

android jqueryMobile 类库和实例源代码

android下的Jquery源代码实例和类库!希望对你有所帮助!

2011-11-28

android 经典项目--跑步机源代码

一款android跑步机源代码,现在分享给大家,希望对大家有所帮助!

2011-11-28

android 火车票查询源代码

这是一款android版的火车查询源代码,包好所剩下车票的多少。到达每站的时刻,内容很全,实时刷新! 现在供选出源代码,希望对开发者有所帮助!

2011-11-28

android 把图片切成正方形

主要是android版本对所有图片转化为正方形。

2011-07-18

javaMe LWUIT使用教程

此教程帮助新手更快的学习javaMe GWUIT插件,里面有很多经典的例子,是新手的首选资料

2010-11-29

javaMe LWUIT源码 很好使用的j2MeUI插件

此插件主要使用Me下的UI开发,提供的接口,可以让开发者开发漂亮的UI展示图。使用很方便

2010-11-29

java写的围棋程序源码

一个使用java写的,围棋程序。 很适合初学者学习,研究。

2010-10-12

c#写的桌面提醒程序

使用C#写的一个桌面小应用程序,定时提醒,任务计划列表。可以修改时间和计划内容。 非常适合初学者或刚学不就的新手。有源代码,请研究使用!

2010-10-12

JAVA桌面截图程序

用Java做的桌面截图精灵,含源代码。 代码执行效率高,在jdk下即可运行。

2010-04-07

Java学生管理系统

用Java写的结合Java多媒体程序设计,带有声音按钮的学生管理系统。

2010-01-08

空空如也

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

TA关注的人

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