- 博客(249)
- 资源 (28)
- 收藏
- 关注
原创 VirtualBox搭建CentOS集群
搭建集群目的:为了搭建大数据集群环境 和 微服务(SpringCloud)集群练习;一、前期调查本来想直接使用某里、某讯、某为的云产品,无奈,发现配置太低而且贵,而且要构成集群,至少得买三台,这对于博主来说可是一笔不小的开销;因此选择在VirtualBox下搭建CentOS集群二、环境电脑:MacBookPro系统:MacOS Mojave版本:10.14.1三、资源下载VirtualBox下载地址:https://www.virtualbox.org/wiki/DownloadsCent
2020-06-07 18:16:18
1192
2
原创 二、Hadoop之常用命令
二、Hadoop之常用命令参考文档:Hadoop2.9.1Hadoop3.1.1一、简介Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来
2020-05-29 21:56:44
260
原创 一、Hadoop简介
一、Hadoop简介Hadoop主要包括下面四个模块Hadoop Common:一些公共类Hadoop Distributed File System:分布式文件存储系统Hadoop YARN:Job与集群资源的管理Hadoop MapReduce:基于YARN的系统,并行处理大数据集合;官网截图如下:hive:将mr程序封装成sql使用,学习成本低;后续用于构建data warehouse;habse:分布式数据库spark:在线计算,效率比mr高,但I
2020-05-29 21:51:18
249
原创 读《SparkSQL 在有赞的实践》思考
一、原文https://mp.weixin.qq.com/s/Gs67ZUjlpgmo5WednjJ3lQ二、思考2.1、套路发现痛点针对痛点开发功能二八法则:让头20%的hive玩家,切换到SparkSQL,解决80%的资源利用问题智能化迁移:全面铺开2.2、深度对Hive SQL的演进之路的技术体系,值得借鉴...
2019-12-09 09:34:12
236
原创 读《腾讯开荒:产业互联网的 81 难》 思考
原文:https://36kr.com/p/5261849思考:互联网To C时代的流量越来越难获取互联网广告流量的珍贵微信的增长速度减缓支付宝、微信、头条、小米、OV都在寻求海外市场的扩展对于三四线城市流量的争夺:拼多多、淘宝、京东、苏宁互联网To B时代的布局,新时代的开启云服务:阿里云、腾讯云、华为云、AWS云5G的来临:智慧城市(To G)、智慧医疗(To ...
2019-11-01 10:10:29
518
1
转载 类加载机制,超详细的(一看就懂)
转:https://blog.csdn.net/briblue/article/details/54973413非常详细,容易消化,看完就懂
2018-10-17 23:14:09
391
原创 Java加载本地/远程jar包
文章目录一般使用jar的方式动态加载jar一般使用jar的方式通过maven将模块编译打包成jar,再通过pom依赖引入动态加载jar在开发过程中,有时候需要根据配置,动态的加载本地、远程jar包到当前的jvm中,代码实现如下:LoadJarUtil类:import org.slf4j.Logger;import org.slf4j.LoggerFactory;import ...
2018-10-17 11:33:21
6060
3
原创 MapReducer中获取输入文件路径
正常情况:在社区版的hadoop版本0.19/0.20中,当使用普通的输入的时候,比如:job.setInputFormatClass(TextInputFormat.class);在mapper运行的时候,可以用如下的方法得到对应的filesplit,也就能拿到对应的"输入路径"等信息FileSplit fileSplit = (FileSplit)(reporter.getInput...
2018-10-16 16:45:58
808
原创 第二章:Java并发机制的底层实现原理
文章目录一、volatile的应用volatile的定义与实现原理一、volatile的应用volatile是轻量级的synchronized,在多线程中保证了共享变量的"可见性"。如果volatile变量修饰符使用恰当的话,它比synchronized的使用和执行成本更低,因为它不会引起线程上下文的切换和调度;volatile的定义与实现原理volatile修饰的共享变量,在多核处理器下...
2018-10-16 07:44:50
287
原创 第一章:并发编程的挑战
文章目录一、上下文切换1.1 测试上下文切换次数和时长1.2 如何减少上下文切换1.3 减少上下文切换实战1.3.1 用jstack命令dump线程信息,看看线程都在做什么1.3.2 减少wait的线程数二、死锁一、上下文切换即使是单核处理器也支持多线程执行代码,CPU通过给每个线程分配CPU时间片来实现这个机制;时间片是CPU分配给每个线程的执行时间,因为时间片非常短,所以CPU通过不停的...
2018-10-11 19:21:50
198
原创 一、HiveSQL基本操作
文章目录一、Hive数据类型1、基本类型2、复杂类型二、存储格式1、textfile2、SequenceFile3、RCFile4、ORCFile5、Parquet三、操作数据库1、创建数据库2、删除数据库3、进入数据库四、操作表属性1、显示数据库下面所有表2、删除表3、显示建表结果4、显示表分区5、修改表属性6、表重命名7、新增列8、删除列9、修改列10、删除分区11、增加分区12、修改分区、L...
2018-10-11 15:31:42
1864
原创 二、MapReduce工作机制
一、思维导图二、知识点1.哪些作业是小作业?在作业初始化的时候,application master会根据任务的大小来判断是否要和application master运行在同一个JVM上;如果不是小作业,需要向Resource Manager申请新的容器;默认情况下,小作业就是少于10个mapper且只有1个reducer且输入大小小于一个HDFS快的作业(通过设置mapreduce.j...
2018-10-11 15:30:08
291
原创 一、MapReduce入门
在使用java编写MaReduce程序之前,先让我们解决一个基本问题——MapReduce是什么?它的运行机制是怎么样的?能够打开这篇文章的读者,应该或多或少都有一些技术基础。但是为了使得下面的解说更加清楚明白,这里还是要简单描述一下。一、MapReduce是什么MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",是...
2018-10-11 15:26:04
601
3
原创 一、如何学习数据结构与算法
文章目录什么是数据结构?什么是算法?(是什么)学习重点(学什么)学习技巧(怎么学)flag(制定目标)什么是数据结构?什么是算法?(是什么)数据结构是为算法服务的,算法要作用在特定的数据结构之上。 因此,我们无法孤立数据结构来讲算法,也无法孤立算法来讲数据结构;举例:图书馆储藏书籍你肯定见过吧?为了方便查找,图书管理员一般会将书籍分门别类进行“存储”。按照一定规律编号,就是书籍这种“数据”...
2018-10-11 13:51:24
656
原创 数据结构与算法学习大纲
入门篇时间、空间复杂度分析是数据结构和算法中非常重要的知识点,贯穿整个专栏的学习过程。但同时也是比较难掌握的,所以我用了 2 节课来讲这部分内容,而且还举了大量的实例,让你一边学一边练,真正能掌握复杂度分析,为后面的学习铺路。我希望通过这一模块,你能掌握时间、空间复杂度的概念,大 O 表示法的由来,各种复杂度分析技巧,以及最好、最坏、平均、均摊复杂度分析方法。之后,面对任何代码的复杂度分析...
2018-10-09 12:39:12
905
原创 Java核心技术学习大纲
本次Java核心技术学习从5个方面着手:一、Java基础牢固Java技术功底二、Java进阶并发编程、Java虚拟机助攻面试三、Java应用开发扩展数据库编程、主流开源框架、分布式开发等四、Java安全基础理解常见的应用安全问题和处理方法,助你写出规范的安全代码五、Java性能基础掌握相关工具、方法论、基础实践持续更新中…...
2018-09-28 10:31:30
343
原创 JDK1.8新特性(二)
前言:JDK1.8新特性知识点红黑树 – 速度更快Lambda表达式 – 代码更少函数式接口方法引用和构造器调用Stream API – 强大的Stream API接口中的默认方法和静态方法新时间日期API五、Stream API概述:是用函数式编程方式在集合类上进行复杂操作的工具,更像一个高级版本的 Iterator;原始版本的 Iterator,用户只能显式地一个一个...
2018-09-28 10:27:12
714
原创 JDK1.8新特性(一)
本文主要介绍了JDK1.8的一些新特性,仅供参考;前言:JDK1.8新特性知识点红黑树 – 速度更快Lambda表达式 – 代码更少函数式接口方法引用和构造器调用Stream API – 强大的Stream API接口中的默认方法和静态方法新时间日期API一、HashMap中的红黑树HashMap碰撞:HashMap中用的最多的方法就属put() 和 get() 方法;H...
2018-09-28 10:23:45
2789
3
原创 nginx教程第十篇:应用举例 & 踩过的坑
一、应用举例1、集群配置upstream mytomcat{ #分权 即访问8081与8082的次数比例为1比1 server localhost:8081 weight=1; server localhost:8082 weight=1;}server { listen 80; server_name test.goku.com; lo...
2018-09-23 13:37:29
532
原创 nginx教程第九篇:nginx配置文件详解汇总
#####Nginx配置文件nginx.conf中文详解######定义Nginx运行的用户和用户组user www www;#nginx进程数,建议设置为等于CPU总核心数。worker_processes 8; #全局错误日志定义类型,[ debug | info | notice | warn | error | crit ]error_log /usr/local/ngi...
2018-09-23 13:37:04
481
1
原创 nginx教程第八篇:用HTTP proxy module配置一个反向代理服务器
反向代理( reverse proxy) 方式是指用代理服务器来接受Internet上的连接请求, 然后将请求转发给内部网络中的上游服务器, 并将从上游服务器上得到的结果返回给Internet上请求连接的客户端, 此时代理服务器对外的表现就是一个Web服务器。 充当反向代理服务器也是Nginx的一种常见用法( 反向代理服务器必须能够处理大量并发请求) , 本文将介绍Nginx作为HTTP反...
2018-09-23 13:36:32
722
原创 nginx教程第七篇:ngx_http_core_module模块提供的变量
在记录access_log访问日志文件时, 可以使用ngx_http_core_module模块处理请求时所产生的丰富的变量, 当然, 这些变量还可以用于其他HTTP模块。例如: 当URI中的某个参数满足设定的条件时, 有些HTTP模块的配置项可以使用类似 $arg_PARAMETER 这样的变量。又如: 若想把每个请求中的限速信息记录到access日志文件中, 则可以使用 $limit...
2018-09-23 13:35:58
338
原创 nginx教程第六篇:用HTTP核心模块配置一个静态Web服务器(二)
承接上篇文章:nginx教程第五篇:用HTTP核心模块配置一个静态Web服务器(一)网络连接的设置下面介绍网络连接的设置配置项:1. 读取HTTP头部的超时时间语法: client_header_timeout time( 默认单位: 秒) ;默认: client_header_timeout 60;配置块: http、 server、 location客户端与服务器建立连接后将开...
2018-09-23 13:35:27
365
原创 nginx教程第五篇:用HTTP核心模块配置一个静态Web服务器(一)
前言静态Web服务器的主要功能由ngx_http_core_module模块( HTTP框架的主要成员) 实现,当然, 一个完整的静态Web服务器还有许多功能是由其他的HTTP模块实现的。 本文主要讨论如何配置一个包含基本功能的静态Web服务器, 文中会完整地说明ngx_http_core_module模块提供的配置项及变量的用法, 但不会过多说明其他HTTP模块的配置项。 在阅读完本节内...
2018-09-23 13:34:54
422
原创 nginx教程第四篇:nginx服务的基本配置
Nginx服务的基本配置由于配置项较多, 所以把基本配置项的用法按照用户使用时的预期功能分成了以下4类:用于调试、 定位问题的配置项正常运行的必备配置项优化性能的配置项事件类配置项用于调试和定位问题的配置项是否以守护进程方式运行Nginx语法: daemon on|off;默认: daemon on;说明:守护进程( daemon)是脱离终端并且在后台运行的进程。它脱...
2018-09-23 13:34:05
800
原创 nginx教程第三篇:nginx进程间的关系和通用语法
一、Nginx进程间的关系和通用语法1. 运行中Nginx进程间的关系在正式提供服务的产品环境下, 部署Nginx时都是使用一个master进程来管理多个worker进程, 一般情况下, worker进程的数量与服务器上的CPU核心数相等。 每一个worker进程都是繁忙的, 它们在真正地提供互联网服务, master进程则很“清闲”, 只负责监控管理worker进程。 worker进程之间...
2018-09-23 13:33:19
319
原创 nginx教程第二篇:nginx命令行控制
在Linux中, 需要使用命令行来控制Nginx服务器的启动与停止、 重载配置文件、 回滚日志文件、 平滑升级等行为。 默认情况下, Nginx被安装在目录/usr/local/nginx/中, 其二进制文件路径为/usr/local/nginc/sbin/nginx, 配置文件路径为/usr/local/nginx/conf/nginx.conf。 当然, 在configure执行时是可以...
2018-09-23 13:32:38
857
原创 nginx教程第一篇:nginx安装、配置
一、简介为什么选择Nginx?更快这表现在两个方面: 一方面, 在正常情况下, 单次请求会得到更快的响应; 另一方面,在高峰期( 如有数以万计的并发请求) , Nginx可以比其他Web服务器更快地响应请求高扩展性Nginx的设计极具扩展性, 它完全是由多个不同功能、 不同层次、 不同类型且耦合度极低的模块组成。 因此, 当对某一个模块修复Bug或进行升级时, 可以专注于模块自身,...
2018-09-23 13:32:04
2362
原创 分布式系统唯一ID生成方案汇总
前言系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。生成ID的方法有很多,适应不同的场景、需求以及性能要求。所以有些比较复杂的系统会有多个ID生成的策略。下面就介绍一些常见的ID生成策略。一、数据库自增长序列或字段最常见的方式。利用数据库,全数据库唯一。优点: 1. 简单,代码方便,性能可以接受。 2. 数字ID天然排序,对分页或者需要排
2018-01-07 10:46:18
5570
转载 服务发现比较:Consul vs Zookeeper vs Etcd vs Eureka
这里就平时经常用到的服务发现的产品进行下特性的对比,首先看下结论: Feature Consul zookeeper etcd euerka 服务健康检查 服务状态,内存,硬盘等 (弱)长连接,keepalive 连接心跳 可配支持
2017-12-29 17:28:23
1214
原创 Java中常用的加密方式
一、Java常用加密方式Base64加密算法(编码方式)MD5加密(消息摘要算法,验证信息完整性)对称加密算法非对称加密算法数字签名算法数字证书二、分类按加密算法是否需要key被分为两类: 不基于key的有: Base64算法、MD5基于key的有: 对称加密算法、非对称加密算法、数字签名算法、数字证书按加密算法是否可逆被分为两类: 单向加密算法(不可解密):MD5、SHA、
2017-12-28 14:27:22
15501
2
Java Json Jar
2016-08-04
jdeclipse_update_size.zip
2016-05-19
SourceInsight for linux
2015-09-17
SQLyog(x86,x64)
2014-03-29
学生信息管理系统(java,附源代码)
2013-12-06
学生信息管理系统(java)
2013-12-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅