- 博客(92)
- 资源 (22)
- 收藏
- 关注
转载 Maven 教程(17)— Maven Profile 和 Filtering 简介
每个项目都会有多套运行环境(开发,测试,正式等等),不同的环境配置也不尽相同(如jdbc.url),借助Jenkins和自动部署提供的便利,我们可以把不同环境的配置文件单独抽离出来,打完包后用对应环境的配置文件替换打包后的文件,其实maven已经给我们提供了替换方案:profile + filteringFilteringFiltering 是 maven 的 resource...
2018-03-31 23:27:53 2204
转载 Linux 内存知识 | 释放内存空间
Linux服务器运行一段时间后,由于其内存管理机制,会将暂时不用的内存转为buff/cache,这样在程序使用到这一部分数据时,能够很快的取出,从而提高系统的运行效率,所以这也正是Linux内存管理中非常出色的一点,所以乍一看内存剩余的非常少,但是在程序真正需要内存空间时,Linux会将缓存让出给程序使用,这样达到对内存的最充分利用,所以真正剩余的内存是free+buff/cache。但是有些...
2018-03-30 11:00:00 430
转载 Linux 日志查看 | awk 命令(实例)
基本用法log.txt 文本内容如下:2 this is a test3 Are you like awkThis's a test10 There are orange,apple,mongo用法一:awk '{[pattern] action}' {filenames}# 每行按空格或TAB分割,输出文本中的1、4项[root@peipei3514 usr]# awk ...
2018-03-29 20:38:13 3729
转载 Linux 日志查看 | awk 命令(简明版)
1、什么是AWKAho、Weinberger、Kernighan三位发明者名字首字母;一个行文本处理工具;2、AWK基本原理原理:逐行处理文件中的数据。语法:awk 'pattern + {action}' {filenames}说明:(1)单引号”是为了和shell命令区分开;(2)大括号{}表示一个命令分组;(3)pattern是一个过滤器,表示命中pa...
2018-03-29 19:17:10 1657
转载 Shell教程(12)— 文件包含
Shell 文件包含和其他语言一样,Shell 也可以包含外部脚本。这样可以很方便的封装一些公用的代码作为一个独立的文件。Shell 文件包含的语法格式如下:. filename # 注意点号(.)和文件名中间有一空格或source filename实例创建两个 shell 脚本文件。test1.sh 代码如下:#!/bin/bash# author:...
2018-03-29 13:23:32 201
转载 Shell教程(11)— 输入/输出重定向
文章来自菜鸟教程Shell 输入/输出重定向大多数 UNIX 系统命令从你的终端接受输入并将所产生的输出发送回到您的终端。一个命令通常从一个叫标准输入的地方读取输入,默认情况下,这恰好是你的终端。同样,一个命令通常将其输出写入到标准输出,默认情况下,这也是你的终端。重定向命令列表如下: 需要注意的是文件描述符 0 通常是标准输入(STDIN),1 是标准输出(S...
2018-03-29 13:17:57 214
转载 Shell教程(10)— 函数
Shell 函数linux shell 可以用户定义函数,然后在shell脚本中可以随便调用。shell中函数的定义格式如下:[ function ] funname [()]{ action; [return int;]}说明:1、可以带function fun() 定义,也可以直接fun() 定义,不带任何参数。2、参数返回,可以显示加:r...
2018-03-28 20:54:00 167
转载 Maven 的 classifier 的作用
直接看一个例子,maven中要引入json包,于是使用了:<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.2.2</version>
2018-03-28 20:41:39 5581
转载 Maven 教程(16)— pom.xml 文件详解
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0...
2018-03-28 20:37:12 601
原创 Maven 教程(15)— 实现多个项目关联自动化构建(maven-invoker-plugin插件的使用)
一、场景设想一个团队正在开发一个项目 bus-core-api,并且有其他两个项目 app-web-ui 和 app-desktop-ui 依赖于这个项目。bus-core-api 项目为 1.0 快照版本。app-web-ui 项目使用的是 bus-core-api 项目的 1.0 快照。app-desktop-ui 项目使用的是 bus-core-api 项目的 1.0 快照。...
2018-03-28 13:58:32 2271
转载 Shell教程(9)— 流程控制
文章来自菜鸟教程Shell 流程控制和Java、PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法):<?phpif (isset($_GET["q"])) { search(q);}else { // 不做任何事情}在sh/bash里可不能这么写,如果else分支没有语句执行,就不要写这个else。if ...
2018-03-27 15:50:26 181
转载 Shell教程(8)— test 命令
文章来自菜鸟教程Shell test 命令Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。数值测试 实例演示:num1=100num2=100if test $[num1] -eq $[num2]then echo '两个数相等!'else echo '两个数不相等!'fi输出...
2018-03-27 15:34:38 447
转载 Shell教程(7)— printf 命令
文章来自菜鸟教程Shell printf 命令上一章节我们学习了 Shell 的 echo 命令,本章节我们来学习 Shell 的另一个输出命令 printf。printf 命令模仿 C 程序库(library)里的 printf() 程序。printf 由 POSIX 标准所定义,因此使用 printf 的脚本比使用 echo 移植性好。printf 使用引用文本或空...
2018-03-27 15:14:28 722
转载 Shell教程(6)— echo命令
Shell echo命令Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式:echo string您可以使用echo实现更复杂的输出格式控制。1.显示普通字符串:echo "It is a test"这里的双引号完全可以省略,以下命令与上面实例效果一致:echo It is a test2.显示转义字...
2018-03-27 14:58:54 631
转载 Shell教程(5)— 基本运算符
文章来自菜鸟教程Shell 基本运算符Shell 和其他编程语言一样,支持多种运算符,包括:算数运算符关系运算符布尔运算符字符串运算符文件测试运算符原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用。expr 是一款表达式计算工具,使用它能完成表达式的求值操作。例如,两个数相加(注意使用的是反引号 ...
2018-03-27 14:42:34 175
转载 Shell教程(4)— 数组
文章来自菜鸟教程Shell 数组数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。与大部分编程语言类似,数组元素的下标由0开始。Shell 数组用括号来表示,元素用”空格”符号分割开,语法格式如下:array_name=(value1 ... valuen)实例#!/bi...
2018-03-27 13:59:44 261
转载 Shell教程(3)— 传递参数
文章来自菜鸟教程Shell 传递参数我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n。n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……实例以下实例我们向脚本传递三个参数,并分别输出,其中 $0 为执行的文件名:#!/bin/bash# author:菜鸟教程# url:www.runoob.c...
2018-03-27 13:38:38 447
原创 Linux 里的 2>&1 究竟是什么
我们在Linux下经常会碰到nohup command>/dev/null 2>&1 &这样形式的命令。首先我们把这条命令大概分解下:首先就是一个nohup:表示当前用户和系统的会话下的进程忽略响应HUP消息。&是把该命令以后台的job的形式运行。command>/dev/null较好理解,/dev/null表示一个空设备,就是说把 comman...
2018-03-27 13:23:08 24688 10
转载 Shell教程(2)— 变量
文章来自菜鸟教程Shell 变量定义变量时,变量名不加美元符号($,PHP语言中变量需要),如:your_name="runoob.com"注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。中间不能有空格,可以使用下划线(_)。不能使用标点符...
2018-03-27 12:21:15 299
转载 Shell教程(1)— 概述
文章来自菜鸟教程Shell 教程Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的...
2018-03-26 20:52:43 208
转载 架构 细聊分布式ID生成方法
一、需求缘起几乎所有的业务系统,都有生成一个记录标识的需求,例如:(1)消息标识:message-id(2)订单标识:order-id(3)帖子标识:tiezi-id这个记录标识往往就是数据库中的唯一主键,数据库上会建立聚集索引(cluster index),即在物理存储上以这个字段排序。这个记录标识上的查询,往往又有分页或者排序的业务需求,例如:(1)拉取最新的一页消息:selectmessag...
2018-03-26 19:50:39 312
转载 秒杀系统优化思路
一、秒杀业务为什么难做1)im系统,例如qq或者微博,每个人都读自己的数据(好友列表、群列表、个人信息);2)微博系统,每个人读你关注的人的数据,一个人读多个人的数据;3)秒杀系统,库存只有一份,所有人会在集中的时间读和写这些数据,多个人读一个数据。例如:小米手机每周二的秒杀,可能手机只有1万部,但瞬时进入的流量可能是几百几千万。 又例如:12306抢票,票是有限的,库存一份,瞬时流量...
2018-03-26 17:27:05 402
转载 设计模式讲解 — 装饰模式(3)
模式讲解认识装饰模式(1)模式功能装饰模式能够实现动态的为对象添加功能,是从一个对象外部来给对象增加功能,相当于是改变了对象的外观。当装饰过后,从外部使用系统的角度看,就不再是使用原始的那个对象了,而是使用被一系列的装饰器装饰过后的对象。这样就能够灵活的改变一个对象的功能,只要动态组合的装饰器发生了改变,那么最终所得到的对象的功能也就发生了改变。变相的还得到了另外一个好处,...
2018-03-26 16:37:22 252
转载 设计模式讲解 — 装饰模式(2)
解决方案装饰模式来解决用来解决上述问题的一个合理的解决方案,就是使用装饰模式。那么什么是装饰模式呢?(1)装饰模式定义动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式比生成子类更为灵活。(2)应用装饰模式来解决的思路虽然经过简化,业务简单了很多,但是需要解决的问题不会少,还是要解决:要透明的给一个对象增加功能,并实现功能的动态组合。所谓透明的给一个对象增...
2018-03-26 16:08:27 423
转载 设计模式讲解 — 装饰模式(1)
场景问题复杂的奖金计算考虑这样一个实际应用:就是如何实现灵活的奖金计算。奖金计算是相对复杂的功能,尤其是对于业务部门的奖金计算方式,是非常复杂的,除了业务功能复杂外,另外一个麻烦之处是计算方式还经常需要变动,因为业务部门经常通过调整奖金的计算方式来激励士气。先从业务上看看现有的奖金计算方式的复杂性:首先是奖金分类:对于个人,大致有个人当月业务奖金、个人累计奖金、个人业务增...
2018-03-26 15:24:32 568
转载 Dubbo 学习(5)— 启动时检查
Dubbo 缺省会在启动时检查依赖的服务是否可用,不可用时会抛出异常,阻止 Spring 初始化完成,以便上线时,能及早发现问题,默认 check="true"。可以通过 check="false" 关闭检查,比如,测试时,有些服务不关心,或者出现了循环依赖,必须有一方先启动。另外,如果你的 Spring 容器是懒加载的,或者通过 API 编程延迟引用服务,请关闭 check,否则服务临时...
2018-03-25 21:52:27 178
转载 Dubbo 学习(4)— zookeeper 注册中心的使用
Zookeeper 是 Apacahe Hadoop 的子项目,是一个树型的目录服务,支持变更推送,适合作为 Dubbo 服务的注册中心,工业强度较高,可用于生产环境,并推荐使用。流程说明:服务提供者启动时: 向 /dubbo/com.foo.BarService/providers目录下写入自己的 URL 地址;服务消费者启动时: 订阅 /dubbo/com.foo.Ba...
2018-03-25 21:27:11 602
原创 otter学习 | canal和otter的关系?
在回答这问题之前,首先来看一张canal&amp;otter和mysql复制的类比图: mysql的自带复制技术可分成三步:master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events,可以通过show binlog events进行查看);slave将master的binary log events拷贝到它的中继日志(...
2018-03-25 15:41:33 17398
原创 otter学习 | 配置最简同步任务
大致过程:演示说明:搭建一个数据库同步任务,源数据库ip为:192.168.134.129,目标数据库ip为:192.168.134.131。源数据库已开启binlog,并且binlog_format为ROW;数据同步精确到一张表进行测试,测试的表名为test.example,简单包含两个子段,测试过程中才创建;配置完成后,手动在源库插入数据,然后快速在目标库进行查看数据,验证数...
2018-03-25 15:38:58 2684
原创 otter学习 | otter 基本介绍
一、项目介绍名称:otter [‘ɒtə(r)]译意: 水獭,数据搬运工语言: 纯java开发定位: 基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql/oracle数据库。二、工作原理 原理描述:基于Canal开源产品,获取数据库增量日志数据。典型管理系统架构,manager(web管理)+node(工作节点)。a. manager运行时推...
2018-03-25 15:21:58 8496
原创 otter学习 | otter_node 安装配置
一、环境准备1、otter node会受otter manager进行管理,所以需要预先安装otter manager。参见:otter_manager 安装配置(快速开始)2、完成manager安装后,需要在manager页面为node定义配置信息,并生一个唯一ida. 如果没有添加Zookeeper机器,会让你先添加Zookeeper机器。首先访问manager页面的机器管...
2018-03-25 15:17:54 2334
原创 otter学习 | otter_manager 安装配置
一、环境准备Zookeeper:192.168.134.128:2181 Mysql:192.168.134.129:3306 manager:192.168.134.133:80801、otter manager依赖于mysql进行配置信息的存储,所以需要预先安装mysql,并初始化otter manager的系统表结构a. 安装mysql:[MySQL系列—服务器安装与配置...
2018-03-25 15:12:40 2615
原创 Linux下Telnet服务的安装配置
Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。可以在本地就能控制服务器。要开始一个telnet会话,必须输入用户名和密码...
2018-03-25 15:04:49 42565 1
转载 Dubbo 学习(3)— Dubbo 简单示例
先来写一个简洁的示例,此示例是后边所有源码的“鼻祖”。Dubbo的设计目的动态注册、发现服务,软负载均衡和服务降级。描述服务依赖关系,描述整体服务架构。统计服务负载,按需扩展容量。简单实例该实例参考官方实例,有所修改。 源码地址:https://gitee.com/liupeifeng3514/DubboLearning整个项目结构:dub...
2018-03-23 18:12:48 210
原创 Dubbo 学习(1)— 写在前面
此系列的“教程”主要是对Dubbo官方文档中示例部分的实验记录,目的是记录所学,方便后期查看。此系列的“教程”主要是对Dubbo官方文档中示例部分的实验记录,目的是记录所学,方便后期查看此系列的“教程”主要是对Dubbo官方文档中示例部分的实验记录,目的是记录所学,方便后期查看此系列的“教程”主要是对Dubbo官方文档中示例部分的实验记录,目的是记录所学,方便后期查看。此系列的“教...
2018-03-23 10:27:58 193
转载 日志框架学习(5)— Spring中使用Log4j
这里要实现web项目中利用Spring来使用Log4j。(1)导入Spring的包和日志包 (2)web.xml 文件<?xml version="1.0" encoding="UTF-8"?><web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://jav...
2018-03-23 09:19:03 3071 1
转载 日志框架学习(4)— Web项目中使用Log4j实例
前面描述了Log4j的简单应用,其实使用Log4j也就是这样简单方便。当然除了上面的配置方法,还有其它,比如做一个J2EE应用,在J2EE应用使用Log4j,必须在启动服务时加载Log4j的配置文件进行初始化,可以在web.xml中进行。web应用的log4j使用基本上都采用:新建一个 servlet,这个 servlet 在 init 函数中为log4j执行配置。一般就是读入配置文件。所以...
2018-03-22 18:20:44 809
原创 日志框架学习(3)— Log4j详细使用教程
log4j的强大功能无可置疑,但实际应用中免不了遇到某个功能需要输出独立的日志文件的情况,怎样才能把所需的内容从原有日志中分离,形成单独的日志文件呢?其实只要在现有的log4j基础上稍加配置即可轻松实现这一功能。下面我们就来实际实验一把。先来说一下环境:新建一个Java工程并导入包log4j-1.2.17.jar,整个工程最终目录如下: 源码地址:https://gitee.com...
2018-03-21 18:53:16 367
转载 设计模式讲解 — 桥接模式(3)
模式讲解认识桥接模式(1)什么是桥接在桥接模式里面,不太好理解的就是桥接的概念,什么是桥接?为何需要桥接?如何桥接?把这些问题搞清楚了,也就基本明白桥接的含义了。所谓桥接,通俗点说就是在不同的东西之间搭一个桥,让他们能够连接起来,可以相互通讯和使用。那么在桥接模式中到底是给什么东西来搭桥呢?就是为被分离了的抽象部分和实现部分来搭桥,比如前面示例中抽象的消息和具体消息发送之间搭个...
2018-03-21 13:12:07 414
转载 设计模式讲解 — 桥接模式(2)
解决方案桥接模式来解决用来解决上述问题的一个合理的解决方案,就是使用桥接模式。那么什么是桥接模式呢?(1)桥接模式定义将抽象部分与它的实现部分分离,使它们都可以独立地变化。(2)应用桥接模式来解决的思路仔细分析上面的示例,根据示例的功能要求,示例的变化具有两个纬度,一个纬度是抽象的消息这边,包括普通消息、加急消息和特急消息,这几个抽象的消息本身就具有一定的关系,加急消息...
2018-03-21 12:54:41 252
小甲鱼小甲鱼数据结构课件与源码
2018-09-30
True Color 设置屏幕颜色 亲测 Windows 10 可以使用哦
2018-07-13
True Color 设置屏幕颜色 亲测 Windows 10 可以使用
2018-07-13
Effective Java(高效java )(中文第2版)+英文原版+随书源码
2018-01-12
jdk1.7.0_17.zip
2018-01-08
国家电力设备资源管理系统设计与实现_毕业论文全部资料 包含源码.zip
2018-01-06
国家电力设备资源管理系统设计与实现_毕业论文全部资料.zip
2018-01-06
Java 并发编程实战 高清完整版 带标签目录+随书源码.zip
2018-01-06
重构-改善既有代码的设计.chm
2018-01-06
大型网站技术架构 核心原理与案例分析 高清完整版 李智慧.pdf
2018-01-05
深入理解Java虚拟机 JVM高级特性与最佳实践 第2版 高清完整版 .pdf
2018-01-05
重构-改善既有代码的设计[高清完整版.完整书签].pdf
2018-01-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人