rsync 全名 Remote Sync,是类 UNIX 系统下的数据镜像备份工具。可以方便的实现本地,远程备份,rsync 提供了丰富的选项来控制其行为。rsync 优于其他工具的重要一点就是支持增量备份。
rsync - a fast, versatile, remote (and local) file-copying tool
rsync 是一个功能非常强大的工具,其命令也有很多功能选项,它的特性如下:
可以保持文件原来的权限、时间、所有者、组信息、软硬链接等等
可以从远程或者本地镜像保存整个目录树和文件系统
无须特殊
Read more ...
Tmux 是一个很棒的终端复用工具,和 screen 命令类似,但是 Tmux 终极的分屏功能要比 screen 强大很多,当然入门也比 screen 要高很多。如果你长时间在终端进行编程或者操作,或者你陷入无数的 Tab 而无法自拔,那么你应该需要开始了解一些 Tmux 的基本使用。
本文会从如下几个方面对 Tmux 进行介绍:
Tmux 基本使用
Tmux 的基本模块
Windows
Panes
Sessions
Tmux 主要包括以下几个模块:
session
Read more ...
这些天折腾 Django 的时候用到了 MySQL,然而本地和VPS 上使用的版本不一致,本地使用了 5.7 版本,而 VPS 上使用了 5.5 的老版本,在数据迁移的时候遇到了 5.5 版本下不支持 DATETIME(6) 这样的数据类型。 DATETIME(6) 用来保存精确到微秒的时间。
环境:
系统:Debian 7, 按道理 Ubuntu/Debian 系应该都可以
无奈只能升级 MySQL 到 5.7 , 结果也比较顺利,官方有很详细 的升级说明:
wget http://dev.mysql.com/get/mysql-apt-con
Read more ...
Java 程序在运行时,Java 运行时系统一直对所有的对象进行所谓的运行时类型标识。Class 类封装一个对象和接口运行时的状态,当装载类时,Class 类型的对象自动创建。
Class 没有公共构造方法。Class 对象是在加载类时由 Java 虚拟机以及通过调用类加载器中的 defineClass 方法自动构造的,因此不能显式地声明一个 Class 对象。
虚拟机为每种类型管理一个独一无二的 Class 对象。也就是说,每个类(型)都有一个 Class 对象。运行程序时,Java 虚拟机 (JVM) 首先检查是否所要加载的类对应的 Class
Read more ...
Docker 是一个能够把开发环境的应用程序自动部署到容器的开源引擎。该引擎的目标是提供一个轻量、快速的环境,能够运行开发者的程序,并方便高效地将程序从开发者的笔记本部署到测试环境,然后再部署到生产环境。
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。
Docker 使用客户端 -
Read more ...
Guava 是 Google 开源的 Java 核心类库,包含了 Java 开发中众多的核心功能,其中最著名最好用的也就是合集和缓存相关的工具了。
Guava 有很多学习材料,比如官方 Wiki
https://github.com/google/guava/wiki
源码包的简单说明:
com.google.common.annotations:普通注解类型。
com.google.common.base:基本工具类库和接口。
com.google.common.cache:缓存工具包,非常简单易用且功能强大的 JVM 内缓
Read more ...
Spring MVC 处理文件上传
添加Maven依赖
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.4</version>
</dependency>
<dependency>
<groupId>commons-fileupload</groupId>
&l
Read more ...
Versions Plugin 该插件用于需要管理项目
用来设置版本号
mvn versions:set -DnewVersion=1.0.1
如果需要回滚
mvn versions:revert
确认则使用
mvn versions:commit
reference
http://www.mojohaus.org/versions-maven-plugin/index.html
Read more ...
在 Linux 上查看系统流量有很多命令,平时一直使用 iftop 来查看单块网卡或者系统整体的流量,iftop 可以查看 TCP 链接的流量情况,分析出流量连往的 IP 地址。但是 iftop 无法做到查看系统中单个进程的网络流量情况。所以 Google 一下之后发现了 nethogs 。
nethogs 自己的介绍
NetHogs is a small ‘net top’ tool. Instead of breaking the traffic down per protocol or per subnet, like most such
Read more ...
Supervisor (http://supervisord.org) 是一个进程管理工具,可以很方便的用来启动、重启、关闭,监控进程。更多的介绍可以参考官网。Supervisor 设计的目的只要是为了:
提高便捷性;通常为每一个进程编写 rc.d 脚本是不方便的,rc.d 脚本是管理,初始化,自启动进程的工具,但是编写这些脚本非常困难,并且也难以维护。另外,rc.d 脚本在进程崩溃之后也不会自动重启,而且很多应用在崩溃之后也不会自动重启,这就可能导致程序在崩溃后进程丢失。Supervisord 将管理的程序作为子进程启动,并且可以配置在崩溃后自
Read more ...