- 博客(18)
- 资源 (4)
- 收藏
- 关注
原创 数据结构与算法的深入应用-调度算法
调度算法常见于操作系统,因为系统的资源时有限的,当有多个进程(或多个进程发出的请求)要使用系统资源时,就需要按照一定的原则来选择进程(请求)来占用系统资源。这就是所谓的调度。常见的调度算法有以下几种1,先来先服务(FCFS)1)概述先来先服务,就是按照请求的提交时间顺序,依次执行。2)实现定义一个task作为任务实例,BlockingQueue作为任务队列package com.xieq.algorithm.schedule;import java.util.Random;import j
2022-01-18 14:49:57
509
1
原创 设计模式之命令模式
命令模式结构图为: 命令模式的作用: 1,能比较轻易的设计一个命令队列 2,在需要的情况下可以轻易的将命令记录日志 3,允许接受请求一方决定是否需要否决请求 4,可以轻易的实现对请求的撤销和重做 5,由于添加新的具体命令类不影响其他类,因此增加新的具体命令类很容易 6,把请求一个操作方与指导怎么执行这个操作方解耦了...
2018-08-29 15:30:35
197
原创 设计模式之策略模式
策略模式类图为: 策略模式是一种定义一系列算法的方法,从概念上来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少了各种算法类之间的耦合。在context中会有switch来选择具体的策略,这一点可用用反射来改进...
2018-08-27 14:15:52
179
原创 设计模式之桥接模式
一,桥接模式类图为: 二,对桥接模式的思考: 桥接模式就是把抽象部分与他的实现不分离,更通俗的来讲就是实现系统有多角度的分类,每一种分类都可能会发生变化,那么就把这种多角度的分类抽象出来让他们独立变化,减少他们之间的耦合。在桥接模式中最重要的就是使用了合成/聚合复用原则即尽量使用合成/聚合,尽量不要使用继承,继承是一种强耦合关系,父类变化子类也会跟着发送变化,违背了ocp原则。 举例说明...
2018-08-03 16:59:33
179
原创 如何查找java应用程序中占用cpu高的方法
1,jps命令列出当前系统中运行的java程序 2,pidstat -p ${pid} -u 1 3 -t 3,使用jstack导出进程的所有线程 jstack -1 1187 > thread.txt 4,将第二步中占用cpu较高的线程id转换成16进制, 5,在thread.txt中查找转换后的16进制,可查找到占用进程高的方法jdk命令行工具 1,jps,查看java进程...
2018-07-10 09:51:00
1059
原创 亿级流量--------负载均衡与反向代理
一,nginx 负载均衡配置1,upstream模块配置上有服务器修改配置文件,vi nginx.conf 内容如下:#user nobody;worker_processes 1;#error_log logs/error.log;#error_log logs/error.log notice;#error_log logs/error.log info;...
2018-06-10 12:04:59
442
原创 Mycat+Mysql主从复制+haproxy+keepalived实现高可用的分库分表集群方案
一, 部署架构 1.1架构图1.2 软件版本 操作系统: CentOS2-7-X86_64-DVD-1708.iso JDK 版本: jdk1.8.0_11 Keepalived 版本: keepalived-1.2.18.tar.gz HAProxy 版本: haproxy-1.5.16.tar.gz MyCat 版本: Mycat-server-1.4-release-201...
2018-06-05 20:27:08
3977
1
原创 设计模式之访问者模式
访问者模式(visitor)是一种行为设计模式,其定义了通过新增访问者来访问一种有限(或者叫稳定)数据结构的属性模式,其类图如下: 其中, element为抽象的数据结构,其属性待访问。在使用访问者模式的情况下其类别应该数量有限,否则就不应该使用访问者模式来设计,如人类为抽象父类,人类的扩展子类有限正常情况下只有“男人”和“女人”两个子类。element抽象父类定义了一个接受一个访问者的抽...
2018-03-20 16:52:21
169
原创 Java线程
一,传统创建县城的两种方式:public static void main(String[] args) throws InterruptedException { // 创建线程的方式一: Thread thread1 = new Thread() { @Override public void run() {
2016-02-23 17:59:04
255
原创 Java NIO相关操作
1,buffer相关操作:private static void bufferTest() { IntBuffer buffer = IntBuffer.allocate(100); System.out.println("buffer position:" + buffer.position() + ",buffer limit:" + buffer.limit()
2016-02-17 16:45:49
266
原创 JAVA线程:
1,创建线程的两种方式: public static void main(String[] args) { //方式一 new Thread() { @Override public void run() { while (true) {
2015-11-26 22:10:10
272
原创 jquery 中ajax的使用
$.ajax({ url: “http://www.hzhuti.com“, //请求的url地址 dataType: “json”, //返回格式为json async: true, //请求是否异步,默认为异步,这也是ajax重要特性 data: { “id”: “value” }, //参数值 type: “GET”, //
2015-11-11 17:48:44
306
原创 zookeeper介绍,安装,以及在大数据中的使用场景介绍
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2015-11-11 17:28:15
719
原创 hadoop2.2集群安装
hadoop2.X已经发布了稳定版本了,增加了很多特性,比如HDFS HA、YARN等。注意:apache提供的hadoop-2.2.0的安装包是在32位操作系统编译的,因为hadoop依赖一些C++的本地库,所以如果在64位的操作上安装hadoop-2.2.0就需要重新在64操作系统上重新编译(建议第一次安装用32位的系统,我将编译好的64位的也上传到群共享里了,如果有兴趣的可以
2015-11-11 09:56:27
316
原创 hadoop2.2伪分布式安装
1.准备Linux环境 1.0点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host-only ->修改subnet ip 设置网段:192.168.1.0 子网掩码:255.255.255.0 -> apply -> ok 回到windows --> 打开网络和共享中心 -> 更改适配器设置 -> 右键VMne
2015-11-11 09:52:32
298
原创 从正则表达式开始
正则表达式(reguler expression)java.util.regex 所谓正则表达式就是一个可以匹配n个字符串的字符串模板。 正则表达式自持的通配符: . - 匹配任意字符; \s: -
2014-03-06 22:59:57
513
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人