- 博客(43)
- 资源 (6)
- 收藏
- 关注
原创 mysql基于Mycat实现分库分表
1垂直拆分–分库一个数据库由很多表的构成,每个表对应着不同的业务,垂直切分是指按照业务将表进行分类,分布到不同 的数据库上面,这样也就将数据或者说压力分担到不同的库上面[1].如何划分表一个问题:在两台主机上的两个数据库中的表,能否关联查询? 答案:不可以关联查询。同一台主机上的两个库可以通过【库.表名】的方式关联查询[2].分库的原则:有紧密关联关系的表应该在一个库里,相互...
2020-01-12 17:30:39 351
原创 从零搭建MySQL主从复制、Mycat读写分离
参考:https://blog.csdn.net/m0_37814112/article/details/78638359https://cloud.tencent.com/developer/article/1508816基本概念1.数据库中间件[1].中间件:是一类连接软件组件和应用的计算机软件,以便于软件各部件之间的沟通。例子:Tomcat,web中间件。[2].数据库中间件...
2020-01-05 20:47:59 492
原创 记一次准生产问题----cpu拉满排查
昨天周五临下班了,心想加了一周班,今天如果不出意外的话...咳咳,不能说不能说(flag不能乱立),测试人员说系统很卡,然后去找运维,运维说机器cpu直接拉满,我方了,因为最后他测的功能是我写的,果然准时下班是不存在的,登上服务器,因为在docker里面,所以这java进程无疑就是我们的的项目,证据确凿然后火速排查解决,原因是一个参数传漏了,导致一张几十万的表join另一张几十万的表全查,...
2019-11-23 12:10:17 1048
原创 RDD与算子
1.RDD[1].概念RDD(Resilient Distributed Dateset),弹性分布式数据集。[2].RDD的五大特性:①.RDD是由一系列的partition组成的。②.函数是作用在每一个partition(split)上的。③.RDD之间有一系列的依赖关系。④.分区器是作用在K,V格式的RDD上。⑤.RDD提供一系列最佳的计算位置。利于数据处...
2019-09-22 15:39:34 955 1
原创 java8常用的一些新特性
概要1.速度更快[1].垃圾回收机制优化,详见G1回收器详见https://blog.csdn.net/sltylzx/article/details/90704205[2].底层数据结构算法优化,如HashMap详见HashMap7和8的对比;详见https://blog.csdn.net/sltylzx/article/details/86766164https://blog...
2019-08-31 17:26:06 231
转载 ZooKeeper的ZAB协议。
转自https://blog.csdn.net/en_joker/article/details/78662880 ZooKeeper的ZAB协议。 &nb...
2019-06-26 18:33:04 152
原创 关于windows和linux的路径斜杠怎么记忆
有很多小伙伴经常忘记windows和linux的路径是/还是\,分享俩记住不会忘的方法方法1:看着你的键盘,W对着的那一排右边是不是有个\,那么windows的路径分隔符就是\,此方法不适用某些特殊键盘方法2:W的第一笔顺是不是\,那么windows的路径分隔符就是\记住一个windows,反方向的就是Linux另外:大部分的语言\都是转义符,所以在代码中要表示\通常需要\\...
2019-06-18 07:34:39 335
原创 spark概述及Java wordcount、Scala wordcount
1.spark是什么[1].官网 http://spark.apache.org/[2].是什么Apache Spark™ is a fast and general engine for large-scale data processing.Apache Spark is an open source cluster computing system that aims to ...
2019-06-09 17:43:42 243
原创 毕业2年程序员的一些思考
前段时间,经历了一些事,感觉自己的心态发生了一些变化,毕业2年,从业快3年,似乎一事无成,自认为自己还是个不算太懒的人,空闲时间一半以上都会用来给自己充电,但似乎对自己的职业道路帮助不大,是不是自己不太适合这个行业,一直没有找到一个满意的答案。最近在网上看到一些大佬的分享,对自己触动很大,挑选了一些我认同的观点,加上自己的一些见解和补充,分享给那些现阶段和我有同样困惑的人,若如下有任何一点能引起你...
2019-06-03 21:41:46 308
原创 07.工作中github常用操作
搜索技巧:https://help.github.com/en/articles/searching-for-repositories#search-by-languagegithub快捷键:https://help.github.com/en/articles/using-keyboard-shortcuts1.常用词[1].watch:会持续收到该项目的动态[2].fork:...
2019-06-02 09:43:34 611
原创 JVM及GC
参考:https://www.cnblogs.com/huajiezh/p/5769255.htmlhttp://www.cnblogs.com/shengyang17/p/10765888.htmlhttps://www.cnblogs.com/princessd8251/articles/3914434.html推荐:周志明-深入理解Java虚拟机 JVM高级特性与最佳实践...
2019-05-30 19:48:31 1057
转载 分布式事务及解决方案
转载自:https://www.cnblogs.com/savorboard/p/distributed-system-transaction-consistency.html 聊聊分布式事务,再说说解决方案 前言最近很久没有写博客了,一方面是因为公司事情最近比较忙,另外一方面是因为在进行 CAP 的下一阶段的开发工作,不过目前已经告一段落了。...
2019-05-30 17:40:03 155
原创 Java线程池
1.获得线程的方法[1].extendsThread(不推荐用)[2].implementsRunnable/*** 实现Runnable*/class RunnableThrad implements Runnable{@Overridepublic void run() {}}[3].Callable①.代码...
2019-05-16 07:33:08 201
原创 Java阻塞队列
参考:http://ifeve.com/blocking-queues/https://blog.csdn.net/bohu83/article/details/807848911.阻塞队列[1].当阻塞队列是空时,从队列中获取元素的操作将会被阻塞,直到其他线程往里面插入新的元素[2].当阻塞队列是满时,往队列里添加元素的操作将会被阻塞,直到其他线程从队列里移除一个或多个或者完...
2019-05-16 07:26:52 397
转载 MySQL分库分表
转载自:https://blog.csdn.net/winy_lm/article/details/50708493# 一. 分表 场景:对于大型的互联网应用来说,数据库单表的记录行数可能达到千万级甚至是亿级,并且数据库面临着极高的并发访问。采用Master-Sl...
2019-05-14 09:18:34 136
原创 Java线程不安全集合类解决办法以及JDK1.7与1.8ConcurrentHashMap之间的区别
参考:https://www.cnblogs.com/chengxiao/p/6842045.htmlhttps://blog.csdn.net/u010723709/article/details/48007881https://blog.csdn.net/bill_xiang_/article/details/81122044以前文章传送门:jdk1.7及之前的HashM...
2019-05-09 21:43:15 459
原创 CountDownLatch、CyclicBarrier、Semaphore
参考:http://www.importnew.com/15731.html1.CountDownLatch[1].让一些线程阻塞直到另一些线程完成一系列操作后才被唤醒[2].CountDownLatch主要有2个方法countDown():计数器减一await():到此处线程阻塞,当计数器变成0后,被唤醒[3].代码示例package com.w4xj.inte...
2019-05-07 22:59:02 114
原创 Java锁
参考:http://www.cnblogs.com/xingzc/p/5750152.htmlhttp://www.cnblogs.com/tison/p/8283233.html1.公平锁与非公平锁[1].公平锁是指多个线程按照申请锁的顺序来获取锁,类似排队[2].非公平锁是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获得锁,在高...
2019-05-07 21:21:47 145
原创 CAS以及ABA问题
参考:https://www.jianshu.com/p/fb6e91b013cchttps://blog.csdn.net/iteye_4653/article/details/826551711.CAS是什么[1].在AtomicInteger中的compareAndSet方法是这么定义的,即CAS就是Compare-And-Swap(比较并交换)的缩写,另外CAS还有Cen...
2019-05-04 12:58:22 408 1
原创 Volatile及JMM
参考:https://blog.csdn.net/suyimin2010/article/details/80722262https://www.cnblogs.com/yuluoxingkong/p/9236077.htmlhttps://blog.csdn.net/sdr_zd/article/details/81323519https://www.jianshu.com/p/...
2019-05-04 12:55:00 367
原创 Scala一行代码实现WorldCount
1.辣行代码lines.flatMap(_.split(" ")).map((_, 1)).groupBy(_._1).map(tuple => (tuple._1, tuple._2.size)).toList.sortBy(_._2)2.代码分解package com.w4xj.scala.study0502object WorldCount { def main...
2019-05-02 11:11:54 277
原创 Akka模拟实现Spark中Master Worker 进程通讯
0.引入akka依赖<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocati...
2019-05-02 09:56:39 374
原创 06.HTTPS和SSH
1.在管理Git项目上,很多时候都是直接使用https url克隆到本地,当然也有有些人使用SSH url克隆到本地。这两种方式的主要区别在于:使用https url克隆对初学者来说会比较方便,复制https url然后到git Bash里面直接用clone命令克隆到本地就好了,但是每次fetch和push代码都需要输入账号和密码,这也是https方式的麻烦之处。而使用SSH url克隆却需要在克...
2019-04-09 20:34:20 869
原创 05.Github Pages 搭建网站
1.个人站点[1].访问:https://[github用户名].gitbhub.io[2].新建个人站点-->仓库名必须为 [用户名].github.io,填写号信息创建[3].创建一个index.html(仅支持静态html)[4].通过https://w4xj.github.io即可访问2.项目站点[1].访问:https://[github用户名]...
2019-04-09 20:33:51 469
原创 04.本地仓库和远程仓库
1.向仓库中添加文件流程2.本地仓库使用[1].在工作区右键Git Bash Here[1].设置用户名git config --global user.name 'w4xj'[2].设置邮箱git config --global user.name 'novicedriver@163.com'[3].初始化git仓库git init[4].新增...
2019-04-09 20:33:20 171
原创 03.Git安装
1.官网下载地址https://www.git-scm.com/download/win2.下载完成后双击安装3.点击next4.选择安装的目录5.选择模式,默认就可以了,选择next6.next 选择git的命令行 8.之后一直下一步即可9.验证:在文件目录下右键出现Git GUI Here 和 Git Bash Here则安装完成...
2019-04-09 20:32:48 108
原创 02.新建仓库以及管理仓库
1.点击start a project2.填入信息,创建3.创建成功4.点击按钮即可出现对应的操作页面[1].点击创建文件即可创建文件[2].点击上传文件和上传一样需要描述[3].寻找文件(快捷键T/t)[4].下载 [5].点击提交次数即可查看所有提交记录,并可点击查看[6].issues:bug或问题的交流列表...
2019-04-09 20:31:28 262
原创 01.注册GitHub账号
1.浏览器输入网址https://github.com/访问2.点击注册3.填入账号、验证邮箱、密码,点击创建账户4.选择免费还是付费仓库,然后继续5.可以直接跳过调查问卷6.来到github个人主页,尝试点击创建项目8.需要验证邮箱,若邮箱由于各种原因需要重发,点击重发或者修改验证邮箱7.登录邮箱,找到该邮件8.点击验证邮箱,验证成功后...
2019-04-09 20:29:11 190
原创 HBase读写数据流程
1.HBase读数据流程[0].HBase的所有Region元数据被存储在.META.表中,随着Region的增多,.META.表中的数据也会增大,并分裂成多个新的Region。为了定位.META.表中各个Region的位置,把.META.表中所有Region的元数据保存在-ROOT-表中,HRegionServer 保存着 meta 表以及表数据[1].所以要访问表数据,首先 Cli...
2019-04-07 13:24:46 2498
原创 sqoop导出数据到mysql程序长时间执行未完成,且mr控制台也没有报错,如何排查
1.当sqoop导出程序长时间执行未完成,且mr控制台也没有报错[w4xj@node202 sqoop-1.4.6.bin__hadoop-2.0.4-alpha]$ bin/sqoop export \> --connect jdbc:mysql://node202:3306/company \> --username root \> --password 1...
2019-03-31 12:03:31 1472
原创 springboot打成jar包无法访问jsp或者html,404错误
0:虽然不推荐在springboot项目中包含前端页面,但根据实际情况,也是有可能将前端和后台写在同一个boot项目中的1.在idea或者eclipse中运行正常运行访问,打成jar包运行报4042.分析:ide中运行是正常的,打包之后访问是404,尝试把jar包解压开,发现里面真的没有页面文件,所以是打包进去的时候没有将页面打进去3.原因:查看springboot对于资源映射的源...
2019-03-30 12:11:14 6369 3
原创 java打包压缩下载
1.代码package com.w4xj.newStart.io.download;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOExce...
2019-03-17 12:04:28 99
原创 Zookeeper本地以及集群模式安装
1.官网地址https://zookeeper.apache.org/下载地址http://archive.apache.org/dist/zookeeper/zookeeper-3.4.10/2.本地模式安装[1].前提安装好jdk[2].上传到服务器上,这里版本是zookeeper-3.4.10.tar.gz[3].确保tar包的用户组[4].解压到指定目录...
2019-03-17 12:00:50 331
原创 MapReduce之WordCount
1.需求:统计单词(以空格拆分)出现的次数2.数据歌名 像我这样的人演唱 毛不易作词 毛不易作曲 毛不易像 我 这样 优秀 的 人本该 灿烂 过 一生怎么 二十 多年 到头 来还在 人海 里 浮沉像 我 这样 聪明 的 人早就 告别 了 单纯怎么 还是 用了 一段 情去 换 一身 伤痕像 我 这样 迷茫 的 人像 我 这样 寻找 的 人像 我 这样 碌碌无为 ...
2019-03-10 12:29:43 157
原创 NameNode工作机制
1.NameNode与Secondary NameNode的工作机制[1].第一阶段:namenode 启动①.第一次启动 namenode 格式化后,创建 fsimage 和 edits 文件。如果不是第一次启动,直接加载编辑日志和镜像文件到内存。②.客户端对元数据进行增删改的请求。③.namenode 记录操作日志,更新滚动日志。④.namenode 在内存中对数据...
2019-02-23 15:08:51 1796
原创 eclipse设置jsp模版
1.window>Preferences>Web>JSP File>Editor>Templates,选择New JSP File(html),点击edit或者双击2.按自己需求修改,保存退出即可<%@ page language="java" contentType="text/html; charset=${encoding}" pageEnc...
2019-02-14 22:13:15 742
原创 jdk7和jdk8HashMap主要的区别
1.在上篇HashMap博客中,已经提到jdk7使用的是数组+链表来实现,而jdk8使用数组+链表+红黑树实现,那为什么要引入红黑树呢,原因就是哪怕将hash的碰撞降到最低,也不能避免链表会越来越长。[1].链表属于插入快,遍历慢的数据结构[2].完全二叉树插入慢,遍历快[3].红黑树插入和查询都较快[4].jdk7中的put方法public V put(K key, V v...
2019-02-05 18:55:04 3711 4
原创 服役新数据节点与退役旧数据节点
1.随着公司业务量的变化,需要对原有的数据节点新增服役节点或者退役节点,以达到资源合理利用2.环境准备[1].克隆一台节点[2].修改 ip 地址和主机名称[3].增加新增节点的同步 ssh(namenode和resourcemanager都需要要配置到新节点的ssh)[4].如果克隆的机器有存量数据,先删除留存的文件/opt/module/hadoop-2.7.2/data...
2019-01-27 13:12:01 916
原创 springboot配置文件
1.配置文件[1].SpringBoot使用一个全局的配置文件,配置文件名是固定的;application.propertiesapplication.yml[2].配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好;[3].YAML(YAML Ain't Markup Language)YAML A Markup Lan...
2018-12-15 11:06:32 227 1
原创 IDEA安装背景图片插件
1.启动IDEA2.Settings-->Plugins-->搜索BackgroundImage点击Install3.点击Restart IDEA4.double shift,搜索set background image,点击5.选择图片,设置透明度,点击确定即可6.效果 ...
2018-12-15 10:28:55 4491 2
Spring Cloud微服务实战-翟永超.pdf
2019-03-10
淘宝技术这十年(阿里巴巴)
2019-03-10
jQuery EasyUI 1.4.5 版 API (中文版 )
2019-03-10
jdk1.8 api中文文档 jdk api 1.8_google.CHM
2019-03-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人