简介
这里安装最新版本3.0,有以下新特性:
客户端
1. 生态体系完善
CAT3.0推出多种语言的客户端,基本覆盖了主流开发语言。目前支持:
Java
C
C++
Python
Go
Node.js
.NET
2. 消息采样聚合
CAT3.0支持采样聚合,当采样命中或者内存队列已满时都会经过采样聚合上报。采样聚合是对消息树拆分归类,利用本地内存做分类统计,将聚合之后的数据进行上报,这样可以减少客户端的消息量以及降低网络开销。3. 精简依赖
CAT客户端3.0大幅精简了依赖,避免了依赖冲突。服务端
1. 自研二进制序列化协议
CAT 序列化协议自定义文本协议升级为自定义二进制协议,在大规模数据实时处理场景下性能提升显著。2. 全新文件存储引擎
CAT3.0采用了全新文件存储引擎,大幅度降低了文件数量,减少了随机IO,显著提升IO性能。
安装
1,安装前的准备
安装jdk(1.8),maven(3.5),tomcat(8.5),mysql(5.6)
2,下载源码后,通过maven编译打包(master分支的代码就是3.0)
[cat@conf122 cat]$ mvn clean package -Dmaven.test.skip=true...[INFO] --- maven-source-plugin:2.2:jar-no-fork (attach-sources) @ cat-home ---[INFO] Building jar: home/cat/cat/cat-home/target/cat-home-3.0.0-sources.jar[INFO] ------------------------------------------------------------------------[INFO] Reactor Summary:[INFO][INFO] parent ............................................. SUCCESS [ 38.234 s][INFO] cat-client ......................................... SUCCESS [02:59 min][INFO] cat-core ........................................... SUCCESS [ 26.448 s][INFO] cat-hadoop ......................................... SUCCESS [03:50 min][INFO] cat-consumer ....................................... SUCCESS [ 9.150 s][INFO] cat-alarm .......................................... SUCCESS [ 31.788 s][INFO] cat-home ........................................... SUCCESS [ 36.419 s][INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESS[INFO] ------------------------------------------------------------------------[INFO] Total time: 09:12 min[INFO] Finished at: 2019-02-23T11:06:31+08:00[INFO] Final Memory: 49M/598M
3,建应用要求的目录,/data/appdatas/cat
和/data/applogs/cat
mkdir -p /data/appdatas/cat && mkdir -p /data/applogs/cat
4,配置tomcat
1),修改中文乱码,在server.xml中修改为如下配置:<Connector port="4040" address="10.1.2.102" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="4443" URIEncoding="utf-8"/>2),在cat.service中,修改堆的大小参数Environment='CATALINA_OPTS=-Xms4096M -Xmx4096M -server -XX:+UseG1GC'
5,配置clent.xml配置文件,2280是默认的CAT服务端接受数据的端口,不允许修改,http-port是Tomcat启动的端口,这里修改为4040
<?xml version="1.0" encoding="utf-8"?><config mode="client"><servers><server ip="10.1.2.102" port="2280" http-port="4040"/></servers></config>
6,初始化数据库,数据库名建立为cat,并导入源码scripts/CatApplication.sql,注意数据库编码使用utf8mb4
mysql> create database cat DEFAULT CHARACTER SET = utf8mb4;mysql> create user cat@'10.%.2.%' identified by 'password';mysql> grant all on cat.* to cat@'10.%.2.%';mysql> flush privileges;修改部分表的字符集为utf8mb4及 ROW_FORMAT=COMPRESSED,并导入:mysql -ucat -p -h 10.1.2.100 -Dcat < CatApplication.sql
7,配置/data/appdatas/cat/datasources.xml
<?xml version="1.0" encoding="utf-8"?><data-sources><data-source id="cat"><maximum-pool-size>3</maximum-pool-size><connection-timeout>1s</connection-timeout><idle-timeout>10m</idle-timeout><statement-cache-size>1000</statement-cache-size><properties><driver>com.mysql.jdbc.Driver</driver><url><![CDATA[jdbc:mysql://10.1.2.100:3306/cat]]></url> <!-- 请替换为真实数据库URL及Port --><user>cat</user> <!-- 请替换为真实数据库用户名 --><password>password</password> <!-- 请替换为真实数据库密码 --><connectionProperties><![CDATA[useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&socketTimeout=120000]]></connectionProperties></properties></data-source></data-sources>
8,将war包拷贝到tomcat目录下:
cp cat/cat-home/target/cat-alpha-3.0.0.war /data/servers/tomcat-cat/webapps/cat.war
9,重启tomcat
[root@conf122 ~]# systemctl restart cat
10,访问http://ip:4040/cat/s/config?op=routerConfigUpdate,进行客户端配置

默认用户名:admin 默认密码:admin
配置如下:
<?xml version="1.0" encoding="utf-8"?><router-config backup-server="10.1.2.102" backup-server-port="2280"><default-server id="10.1.2.102" weight="1.0" port="2280" enable="true"/><network-policy id="default" title="default" block="false" server-group="default_group"></network-policy><server-group id="default_group" title="default-group"><group-server id="10.1.2.102"/></server-group></router-config>
11,访问http://ip:4040/cat/s/config?op=serverConfigUpdate,进行服务端配置,配置如下:
<?xml version="1.0" encoding="utf-8"?><server-config><server id="default"><properties><property name="local-mode" value="false"/><property name="job-machine" value="false"/><property name="send-machine" value="false"/><property name="alarm-machine" value="false"/><property name="hdfs-enabled" value="false"/><property name="remote-servers" value="10.1.2.102:4040"/></properties><storage local-base-dir="/data/appdatas/cat/bucket/" max-hdfs-storage-time="15" local-report-storage-time="7" local-logivew-storage-time="7"><hdfs id="logview" max-size="128M" server-uri="hdfs://10.1.77.86/user/cat" base-dir="logview"/><hdfs id="dump" max-size="128M" server-uri="hdfs://10.1.77.86/user/cat" base-dir="dump"/><hdfs id="remote" max-size="128M" server-uri="hdfs://10.1.77.86/user/cat" base-dir="remote"/></storage><consumer><long-config default-url-threshold="1000" default-sql-threshold="100" default-service-threshold="50"><domain name="cat" url-threshold="500" sql-threshold="500"/><domain name="OpenPlatformWeb" url-threshold="100" sql-threshold="500"/></long-config></consumer></server><server id="10.1.2.102"> <!-- 本机模式这个IP替换为cat拿到的内网IP,此IP是看transaction报表下cat的自己上报的IP,用127.0.0.1是没用的。 --><properties><property name="job-machine" value="true"/><property name="alarm-machine" value="true"/><property name="send-machine" value="true"/></properties></server></server-config>




