自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (2)
  • 收藏
  • 关注

原创 互联网架构的演变

1.互联网架构的演变    大型网站的技术挑战主要来自于庞大的用户,高并发的访问和海量的数据,任何简单的业务一旦需要处理数以P计的数据和数以亿计的用户,问题就会变得很棘手。大型网站架构主要就是解决这类问题(了解详情推荐李智慧《大型网站技术架构:核心原理与案例分析》)。下面是2017天猫双十一的数据:   1.1 初始阶段的网站架构大型网站都是从小网站发展而来,网站架构也一样。小型网站最开始没有太多...

2018-02-27 10:27:26 11858 1

原创 环境搭建(nacos、gateway、openfeign)

nacosnacos官网下载,并按照文档运行,我是在windows下部署单机模式运行,就直接运行startup.cmd -m standalone启动成功后输出日志访问http://localhost:8848/nacos/默认用户名密码 nacos:nacos新建项目cloud-practice整个项目简单,有一个cloud-gateway网关,nacos-productor生产者,nacos-consumer消费者,nacos作为注册中心。前端访问​​​​​​.

2022-05-10 10:41:05 655

原创 TCP粘包拆包及NETTY解决方案

TCP粘包拆包及NETTY解决方案

2022-04-14 09:31:05 2906 2

原创 mysql并不是所有的or条件查询、隐式转换都会索引失效

mysql并不是所有的or条件查询、隐式转换都会索引失效

2022-02-11 09:39:56 1174

原创 爬取微信公众号文章方案汇总

1、爬取公众号文章接口现在有两个地方可以搜索微信公众号文章,一是搜狗的微信搜索(weixin.sougou.com/) 可以搜文章,也可以搜公众号。未登陆的情况下搜文章的只能显示十页内容,每页有10篇文章。搜公众号的话只会显示最近10篇文章。登录的情况下搜文章可以显示所有文章,搜公众号依然是显示最近10篇。 第二个接口就是个人微信公众号的素材库可以添加其他公众号文章链接,这个是必须要登陆。登陆后会...

2018-04-17 09:59:47 19219 2

原创 使用selenium webdriver实现自动登录CSDN

    我们使用webmagic爬取网站,最大的难点不是webmagic的使用,而是各大网站的反爬虫。比如登录后可见,比如限制IP一天中的访问次数、访问频率。今天我们就用webdriver来实现自动登录CSDN,拿到登陆后的cookies从而模拟登录。    首先在加入依赖<dependency> <groupId>us.codecraft</groupId...

2018-04-16 22:48:07 8806 1

原创 好用的java爬虫框架webmagic爬取CSDN

    WebMagic的结构分为Downloader、PageProcessor、Scheduler、Pipeline四大组件,并由Spider将它们彼此组织起来。这四大组件对应爬虫生命周期中的下载、处理、管理和持久化等功能。在这四个组件中我们需要做的就是在PageProcessor中写自己的业务逻辑,比如如何解析当前页面,抽取有用信息,以及发现新的链接。下面是官方给出的架构图1.Downloa...

2018-03-09 14:19:11 13459 7

原创 dubbo注册中心zookeeper的安装配置与启动

    1、去zookeeper官网下载zookeeper-3.3.6.tar.gz解压到相应目录,我是放在/usr目录下并重命名为zookeeper    2、在zookeeper目录下新建一个空目录data        3、进入conf目录复制zoo_sample.cfg并改名为zoo.cfg    4、修改zoo.cfg文件    就是将dataDir修改为刚才我们新建的data目录   ...

2018-03-01 10:58:20 405

原创 分页插件的使用

    在项目中经常要用到分页功能,一种办法是自己去实现,另一种比较简单的办法是使用别人写好的插件。比如paginator或者pageHelper,下面介绍两种插件的使用。mybatis-paginatorpom.xml<!-- mybatis分页插件 --> <dependency> <groupId>com.github.miemi...

2018-03-01 09:24:59 1675

原创 spark集群搭建

hadoop集群搭建好以后,spark的集群安装就比较简单了。只需要将spark压缩包解压并配置相应的环境变量就可以了。spark也可以看成是hadoop的一部分,他主要是用来取代Hadoop的MapReduce操作,依然依赖于Hadoop的分布式文件系统HDFS以及Hadoop的资源调度系统yarn。当然spark也可以基于其他的资源调度系统甚至是local模式。下面我们就来介绍spark的安装

2018-02-05 11:10:58 546

原创 hadoop2.9.0安装与配置 hadoop集群搭建

上一篇我们安装了Linux系统,想要搭建hadoop集群,还需要安装一些软件。比如JDK和hadoop,下面以JDK1.8和hadoop2.9.0为例介绍如何安装与配置。配置完一台Linux后只需要将这台机器复制几份后配置就完成了几群的搭建。首先还是去官网下载JDK1.8和hadoop2.9.0,我都是以tar 方式安装。第一步下载压缩文件使用Xftp5将文件上传至Linux系统/usr/

2018-01-16 17:41:03 4153 1

原创 eclipse或idea中开发spark程序本地运行以及提交集群运行

Windows开发hadoop/spark配置1、将hadoop压缩文件解压到相应目录。像配置jdk环境变量一样配置HADOOP_HOME到hadoop目录。把%HADOOP_HOME%\bin加入path。2、Windows下开发需要将共享的bin目录覆盖hadoop原有bin目录。如果还不行,将共享bin目录下的hadoop.dll复制到c:\windows\system32目录下,可

2018-01-10 09:25:00 3625

原创 Hadoop2.9.0安装与配置(一)Linux centos7系统的安装与配置

一、Linux的安装Hadoop可以安装在Linux上也可以安装在Windows上,但官方也是不建议在Windows上安装。所以我们将其安装在Linux上,要安装Linux一就是有一台Linux系统的机器,但最常见的还是在Windows中安装虚拟机,在虚拟机上安装Linux,我是安装的VirtualBox和Centos7.分别去VirtualBox和Centos7官网下载VirtualBox和

2017-12-14 16:54:29 2301

原创 Hadoop2.9.0安装与配置 免密登录配置

我现在有四台虚拟机器,分别是master(192.168.56.100)slave1(192.168.56.101)slave2(192.168.56.102)slave2(192.168.56.103)。一主三从每次互相登录需要输入密码,现在设置SSH免密登录。首先是各自的/etc/hosts文件。主服务器master添加192.168.56.100 master192.168.56.1

2017-12-14 14:24:35 1240

原创 SSM重构web版Windows资源管理器

上一篇我们用servlet+jsp实现了web版的资源管理器,今天我们使用SSM框架实现原来的功能。效果以及功能是一样的,主要就是为了练习使用框架。下面是文件的目录结构(使用idea构建)github地址:https://github.com/yixiao1874/webdoc.git首先是框架的搭建:使用maven仓库引入依赖:<project xmlns="http://mav

2017-11-05 21:21:18 540

原创 从java的Comparable和Comparator接口学习策略模式

我们知道java.util.Arrays中有一个sort()方法可以对所有数组进行排序比如:import java.util.Arrays;public class TestSort { public static void main(String[] args) { int[] arr = {1,9,5,10,8,2,7,4,3}; Arrays.so

2017-10-26 11:22:51 454

原创 简单中级项目Servlet/JSP实现web版windows资源管理器

java中级学完之后就可以自己写一些小项目,比如一些博客、商城。用到的技术也只是Servlet+JSP,练习才是最好的老师。下面介绍一个最简单的练手项目,模仿windows的文件管理,功能比较单一。就是输入地址http://localhost:8080/file/index会进入写好的首页,然后有C,E,F盘,点击每个磁盘会去读取磁盘下的文件展示在右边的空白处,显示的内容也是一个个超链接,可以继续

2017-10-25 14:41:24 2282 4

原创 tomcat简单实现(how tomcat work第一章内容)

学习tomcat的时候,我们只是编写一个实现Servlet(间接实现)简单的java类。但是容器却能把他变成一个服务,在这之前他还是一个普通的类,并不能接受http请求。只有容器加载类并调用init方法才会把他变成一个真正的servlet,这时候他才能接受请求返回响应。        那么容器究竟是怎么实现的呢,从上一篇文章我们利用socket编程实现了远程操作文件夹,同样的。tomc

2017-10-20 14:41:56 675

原创 java实现dos窗口文件操作命令2(远程操作)

上一篇操作文件夹都是基于本地操作,能不能使用别的计算机操作自己电脑的文件夹?这就需要使用java的网络编程.还是先看效果图:首先是通过客户端传入参数,服务端接收后进行文件夹的操作:      列出所有文件:  下面是代码实现:这是服务端代码import java.net.*;import java.io.*;public class

2017-10-19 11:41:50 834

原创 使用java实现dos窗口文件操作命令(复制,删除,列出文件目录)

使用java模仿dos窗口命令,实现文件的拷贝,删除,列出所有文件.下面看一下效果:            我们需要三个类,每个类实现不同的功能,首先是复制文件类,就是我们上一篇文章的代码,只是现在接受命令行参数.实际上javaIO操作文件夹的难点就在于,java提供的操作都是针对空文件夹或者文件.比如删除,复制.所以当我们想复制文件夹或者删除文件夹就需要使用递归操作.public

2017-10-19 11:30:58 2408

原创 从java迭代器看foreach

刚开始学习增强for循环时,感觉很方便,无论是数组还是集合类都可以实现遍历,前提是你不需要用到数组下标。但也很疑惑他是如何做到的呢?原来foreach底层的实现就是java迭代器Iterator.  想要使用迭代器遍历,首先要实现Iterable接口,iterable接口定义了iterator()方法.iterator()方法会返回实现Iterator接口的类.//Iterable接口

2017-10-18 10:32:41 468

原创 java IO实现文件拷贝以及文件夹拷贝

使用javaIO流实现文件拷贝以及文件夹拷贝

2017-10-16 10:36:32 1332 1

原创 从Java内存分配来看equals和==比较

刚开始学Java的时候,遇到equals比较和==比较有时候结果总是让人惊讶,如果是以前没有接触过编程,不明白内存分配,每次都是稀里糊涂的记住一些结果。这种是true那种是false,但具体是为什么,具体自己应该怎么去分析才能分析出程序应该有的结果,今天我们就从Java内存分配的角度来聊聊。    先上代码:    String str1 = new String("abc");   

2017-10-11 21:14:33 794

原创 简单集合实现三(HashMap和HashSet)

上两篇文章我们实现了自己的ArrayList和LinkedList,也清楚了ArrayList查找方便,修改困难。LinkedList修改方便,查找困难。我们也经常遇到问HashMap和HashSet的异同,其实HashSet的实现就是使用了HashMap只不过它只用到了HashMap中的key值。所以学会了HashMap也就明白了HashSet。  首先我们知道HashMap中是存放键值对的

2017-10-11 16:33:42 379

原创 简单集合实现二(LinkedList的实现以及与ArrayList的比较)

上一篇文章我们讲到了ArrayList的实现,如果你有兴趣看源码的话会发现我们的实现有一部分就是照着源码拷贝的。从实现上我们知道了ArrayList的底层实现是数组,比数组方便的是可以自动扩容,可以存放任意类型。既然实现是数组那么数组有的优点他也有,比如访问数据快捷方便,直接访问下标值,访问第一个和第500个数据访问速度差不多。直接定位下标0或者下标499取值。同时它也有一些缺点,比如修改、删除数据比较麻烦,需要循环遍历所有数据,超出数组下标还要新建数组重新拷贝原数组。我们知道LInkedList的实现原

2017-10-10 18:06:51 274

原创 简单ArrayList、LinkedList、HashSet、HashMap实现(一)

简单ArrayList、LinkedList、HashSet、HashMap实现(一)面试或笔试中经常遇到像ArrayList和LinkedList以及HashSet和HashMap有什么区别,或者问你HashMap如何实现的。下面我们就自己实现简单的集合类,完成我们平时经常使用的效果,比如添加、移除、返回长度、自动扩容。

2017-10-10 10:59:11 1218

前端js代码

淘淘商城前端代码,包括js、css、jsp。解压后直接使用

2018-03-01

Windows下hadoop替换的bin文件夹

Windows下开发需要将共享的bin目录覆盖hadoop原有bin目录。如果还不行,将共享bin目录下的hadoop.dll复制到c:\windows\system32目录下,可能需要重启机器

2018-02-05

空空如也

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

TA关注的人

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