0%

升级nodejs版本

前段时间部署一个开源项目,结果服务器上的nodejs版本与开源项目所需的版本不符,故而需要进行nodejs升级

有两种方式

方式一:使用n进行nodejs升级

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 清除npm缓存
npm cache clean -f

# 全局安装n
npm install -g n

# 安装对应版本
n v7.6.0

# 切换使用版本(和安装对应版本命令一样)
n 7.6.0

# 删除指定版本
n rm 5.9.1

# 如果不想切换默认环境,可以使用指定版本执行脚本
n use 7.6.0 app.js

这里可能会有修改之后版本没生效的情况,是因为node的默认安装目录和n安装的目录不同导致的,可以指定N_PERFIX变量来修改n的默认node安装目录

阅读全文 »

编解码器

数据在网络中传输时都是二进制字节码数据,在发送数据时需要编码,接收数据时需要解码,所以就需要解码器(decoder)和编码器(encoder)来完成该操作

encoder编码器是将指定的消息对象转为二进制流,负责处理出站数据;decoder解码器是将二进制流转为指定的消息对象,负责处理入站数据

Netty本身提供了一些编解码器

  • StringEncoder、StringDecoder 对字符串数据进行编解码
  • ObjectEncoder、ObjectDecoder 对java对象进行编解码

Netty本身提供的ObjectEncoder、ObjectDecoder 底层使用的是Java序列化技术,而Java序列化技术本身效率不高,序列化后太大,且无法跨语言,所以可以使用Protobuf

编解码器本身也是ChannelHandler

阅读全文 »

数据仓库的概念

数据仓库提供集成化的和历史化的数据,它集成种类不同的应用系统,数据仓库从事物发展和历史的角度来组织和存储数据,以提供信息化和分析处理之用,是面向主题的、集成的、具有时间特征的、稳定的数据集合,用以支持经营管理中的决策制定过程

特征

  • 数据仓库的数据是面向主题的。传统数据库是面向应用而设计的,它的数据为了处理具体应用而组织到一起的。而主题是一个在较高层次将数据进行归类的标准,每个主题基本对应一个宏观的分析领域,满足该领域分析决策的需要。因此,主题的抽取是按照分析的要求来确定的,数据在进入数据仓库之前必须要经历加工和集成,将原始数据结构做一个从面向应用到面向主题的转变
  • 数据仓库的数据是集成性的。数据仓库中的数据来自于多个应用系统,要将这些数据统一到数据仓库的数据模式中来
  • 数据仓库的数据具有时间特征。数据仓库随着时间变化要不断增加新的内容,将数据库的数据变化追加到数据仓库中
  • 数据仓库的数据是相对稳定的。数据仓库是随时间而变化的,但又是相对稳定的。这种稳定是指数据仓库中的数据主要供企业决策分析之用,决策人员所涉及的数据操作主要是数据查询,一般情况下并不进行数据修改
阅读全文 »

URL访问工具

有时候想在命令行下通过http访问接口/网页,可以使用curl来进行操作

发起请求

1
curl www.baidu.com

会返回网页内容

参数选项

-i参数

使用-i参数,会返回响应header

1
curl -i www.baidu.com

-I参数

使用-I参数,只会返回响应header

1
curl -I www.baidu.com
阅读全文 »

SpringBoot打成jar包的结构

springboot通常会打成jar包,然后使用java -jar来进行执行,那么这个jar包里的结构是什么样的呢

springboot打成jar包的结构

其中

阅读全文 »