ELK 搭建成功过程

ELK 搭建成功过程ELK 就是通过 logstashgrok 正则将 web 日志过滤出来 输出到 Elasticsearc 搜索引擎里 通过 Kibana 前端展示 环境 ELK 就是通过 logstashgrok 正则将 web 日志过滤出来 输出到 Elasticsearc 搜索引擎里 通过 Kibana 前端展示 环境 主机 服务 192 168 231 133 Elasti

ELK 就是通过logstash grok正则将web日志过滤出来,输出到Elasticsearch 搜索引擎里,通过Kibana前端展示。

环境

ELK 就是通过logstash grok正则将web日志过滤出来,输出到Elasticsearch 搜索引擎里,通过Kibana前端展示。

环境

主机

服务

192.168.231.133

Elasticsearch、 Kibana

192.168.231.130

Logstash 、Filebeat

ELK7.4.2安装教程ELK简介

“ELK”是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。Elasticsearch 是一个搜索和分析引擎。Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等“存储库”中。Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化。

建议Elasticsearch、 Kibana  安装环境使用 2G   4核 配件以上环境

本教程所用系统为 CentOS Linux release 7.5.1804 (Core) ,建议使用 CentoOS7.4 及以上版本  ELK版本为6.6

安装JKD1.8开发环境

虽然es7.x及以后版本自带JDK,此处安装是logstash也要用。如果不装logstash的话可选择跳过此步。

一、jdk安装

yum安装JKD1.8

查看版本

java  -version

yum install java-1.8.0-openjdk-devel  net-tools -y

设置环境变量(无脑粘贴即可)

jh_pwd=`ls -d /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.*`

JAVA_HOME=’$JAVA_HOME’

cat >> /etc/profile <

#set java environment

JAVA_HOME=$jh_pwd

JRE_HOME=$JAVA_HOME/jre

CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

export JAVA_HOME JRE_HOME CLASS_PATH PATH

EOF

使环境变量生效

source /etc/profile

修改文件与线程数限制limits.conf

cat >> /etc/security/limits.conf <

*               soft    nofile          65536

*               hard    nofile          65536

*               soft    nproc           4096

*               hard    nproc           4096

EOF

修改vm.max_map_count

sed -i ‘$a vm.max_map_count=’ /etc/sysctl.conf

使用 wget 下载

https://artifacts.elastic.co/downloads/kibana/kibana-6.6.0-linux-x86_64.tar.gz

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.0.tar.gz

https://artifacts.elastic.co/downloads/logstash/logstash-6.6.0.tar.gz

2、环境

192.168.231.133 部署Kibana、elasticsearch

192.168.231.130 部署Logstash

二、Kibana安装

将安装包放到/usr/local目录下然后解压

cd /usr/local

tar zvxf kibana-6.6.0-linux-x86_64.tar.gz

mv kibana-6.6.0-linux-x86_64 kibana-6.6.0

修改kibana配置文件

vim /usr/local/kibana-6.6.0/config/kibana.yml

server.port: 5601

server.host: “0.0.0.0”

elasticsearch.hosts: [“http://192.168.231.133:9200”]   此写elasticsearch ip

指定访问端口 5601

server.host改为0.0.0.0方便等等使用浏览器访问

连接elasticsearch的地址为http://192.168.231.133:9200,如果后面elasticsearch中配置文件中的地址不为localhost而是为主机IP地址的话,这里也要改为IP地址。

启动kibana

前台启动方式

/usr/local/kibana-6.6.0/bin/kibana

后台启动方式

nohup /usr/local/kibana-6.6.0/bin/kibana >/tmp/kibana.log 2>/tmp/kibana.log &

可写脚本

”””’

#!/bin/bash

ps  -aux  | grep  “kibana” |  grep -v  grep  | awk  ‘{print “kill -9 ” $2}’ | sh

nohup /usr/local/src/kibana-6.6.0/bin/kibana >/tmp/kibana.log 2>/tmp/kibana.log &   log 日志位置可以自行定义

”””’

kibana的安全说明

默认无密码,谁都可以访问

如果使用云厂商,可以在安全组控制某个IP的访问

建议借用Nginx实现用户名密码登录

三、Elasticsearch安装

     使用 Elasticstack-head 插件工具管理

      安装Elasticstack-head 建议使用docker安装

      

      安装docker 和部署

      (1) docker pull mobz/elasticstack-head:5

      (2) docker create –name elasticstack-head -p 9100:9100  mobz/elasticstack-head:5

      (3) docker start   elasticstack-head

   

1、解压

1、tar zvxf elasticsearch-6.6.0.tar.gz

mkdir /usr/local/elasticsearch-6.6.0/data

touch /usr/local/elasticsearch-6.6.0/logs

2、修改配置文件

设置数据存放目录和日志存放目录,监听的IP和端口

vim /usr/local/elasticsearch-6.6.0/config/elasticsearch.yml

path.data: /usr/local/elasticsearch-6.6.0/data

path.logs: /usr/local/elasticsearch-6.6.0/logs

network.host: 127.0.0.1

http.port: 9200

http.cors.enabled: true

http.cors.allow-origin: “*”

3、启动Elasticsearch

Elasticsearch的启动需要使用普通用户,创建一个elk用户,然后修改其目录所属用户为elk,切换到elk用户下然后启动程序。

[root@elk-node1-50 local]# useradd -s /sbin/nologin elk

[root@elk-node1-50 local]# chown -R elk:elk /usr/local/elasticsearch-6.6.0/

[root@elk-node1-50 local]# su – elk -s /bin/bash

[elk@elk-node1-50 ~]$ /usr/local/elasticsearch-6.6.0/bin/elasticsearch -d

4、访问页面

这个时候再访问kibana的页面http://192.168.231.133:5601

5、Elasticsearch启动注意事项

如果监听在127.0.0.1的话,可以启动成功

如果跨机器通讯,需要监听在真实网卡上

监听在真实网卡需要调整系统参数才能正常启动

默认情况下,Elasticsearch 仅仅绑定回环地址,比如127.0.0.1 和[::1],只允许本机访问。为了与其他服务器上的节点进行通信并形成集群,你的节点将需要绑定到非环回地址。通常只需要配置一下 network.host,设成0.0.0.0让任何人都可以访问,线上服务不要这样设置,要设成具体的 IP。

监听在非127.0.0.1时:

监听在0.0.0.0或者内网地址

以上两种 监听都需要调整系统参数

最大文件打开数调整/etc/security/limits.conf

nofile 65536

最大打开进程数调整/etc/security/limits.d/20-nproc.conf

nproc 10240

内核参数调整/etc/sysctl.conf

vm.max_map_count=

监听网卡建议

如果学习。建议监听在192.168.231.133

如果是云服务器的话,一定要把9200和9300公网入口在安全组限制一下

线上环境建议监听在内网网卡,监听在公网容易被入侵

6、监听192.168.231.133端口测试。

修改network.host为192.168.231.133,然后kill进程后重新启动elasticsearch

6、监听192.168.231.133端口测试。

修改network.host为192.168.231.133,然后kill  java  进程后重新启动elasticsearch

vim /usr/local/elasticsearch-6.6.0/config/elasticsearch.yml

修改 network.host为192.168.231.133

此时可写脚本

“”

#!/bin/bash

ps  -aux  | grep  “java” |  grep -v  grep  | awk  ‘{print “kill -9 ” $2}’ | sh

su – elk -s /bin/bash  <

/usr/local/elasticsearch-6.6.0/bin/elasticsearch -d;

exit;

EOF

“”

查看ES 进程 PID 并杀进程;

命令:    jps

3285  elasticsearch

3288   jps

kill  3285

[root@elk-node1-50 local]# su – elk -s /bin/bash

[elk@elk-node1-50 ~]$ /usr/local/elasticsearch-6.6.0/bin/elasticsearch -d

查看日志有报错

[elk@elk-node1-50 ~]$ tail /usr/local/elasticsearch-6.6.0/logs/elasticsearch.log

[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least []

使用root用户设置最大文件打开数

/etc/security/limits.conf

查看添加

* – nofile 65536

内核参数调整

#查看内核参数

[root@elk-node1-50 ~]# sysctl -a | grep max_map_count

sysctl: reading key “net.ipv6.conf.all.stable_secret”

sysctl: reading key “net.ipv6.conf.default.stable_secret”

sysctl: reading key “net.ipv6.conf.ens33.stable_secret”

sysctl: reading key “net.ipv6.conf.ens37.stable_secret”

sysctl: reading key “net.ipv6.conf.lo.stable_secret”

sysctl: reading key “net.ipv6.conf.virbr0.stable_secret”

sysctl: reading key “net.ipv6.conf.virbr0-nic.stable_secret”

vm.max_map_count = 65530

#修改内核参数

vim /etc/sysctl.conf

vm.max_map_count=

#使内核参数生效

[root@elk-node1-50 ~]# sysctl -p

vm.max_map_count =

查看监听端口,默认使用9200和9300端口

[elk@elk-node1-50 ~]$ netstat -tlunp | grep java

(Not all processes could be identified, non-owned process info

will not be shown, you would have to be root to see it all.)

tcp6       0      0 :::9200                 :::*                    LISTEN      5441/java           

tcp6       0      0 :::9300                 :::*                    LISTEN      5441/java

PS 关于 9200   9300 端口解释

9200作为Http协议,主要用于外部通讯

9300作为Tcp协议,jar之间就是通过tcp协议通讯

ES集群之间是通过9300进行通讯

插件安装

ES  安装分词器(IK)需要安装同版本的分词器,不然会出现版本不一致报错

插件ik分词器的安装

1.下载地址 Releases · medcl/elasticsearch-analysis-ik · GitHub

注:分词器版本一定要与ES版本保持一致

cd/usr/local/src/elasticsearch-6.6.0/plugins

mkdir ik

unzip elasticsearch-analysis-ik-6.6.0.zip -d  plugins/ik

安装完插件后再使用elk  用户去运行 ./elasticsearch

这个时候使用浏览器可以从外部访问elasticsearch,如果监听192.168.231.133访问不到这个页面。

五、Logstash安装

1、解压

tar zvxf logstash-6.6.0.tar.gz

2、最简单的配置

[root@elk-node2-51 local]# cat /usr/local/logstash-6.6.0/config/logstash.conf

input{

  stdin{}

}

output{

  stdout{

    codec=>rubydebug

  }

}

3、读取日志文件配置

[root@elk-node2-51 ~]# cat /usr/local/logstash-6.6.0/config/logstash.conf

input{

  file{

    path=>”/usr/local/nginx/logs/access.log”

  }

}

output{

  stdout{

    codec => rubydebug

  }

}

4、后台启动

nohup /usr/local/src/logstash-6.6.0/bin/logstash -f /usr/local/src/logstash-6.6.0/config/logstash.conf >/tmp/logstash.log 2>/tmp/logstash.log &

添加重启脚本

#!/bin/bash

ps  -aux  | grep  “logstash” |  grep -v  grep  | awk  ‘{print “kill -9 ” $2}’ | sh

hup /usr/local/src/logstash-6.6.0/bin/logstash -f /usr/local/src/logstash-6.6.0/config/logstash.conf 

>/tmp/logstash.log 2>/tmp/logstash.log &

注意:为了使Logstash后台运行,不管是nohub … &还是screen还是supervisord管理进程时千万不要把配置目录中的配置文件中的input {}区段设置为测试用的stdin {},否则进程运行一会儿就会自动退出。我一开始使用的上面的stdin {}最简单的配置,虽然后台启动成功但是一会儿就退出了。

5、Logstash默认使用9600端口

[root@elk-node2-51 ~]# netstat -tlunp | grep 9600

tcp6       0      0 127.0.0.1:9600          :::*                    LISTEN      945/java

ELK7.4.2安装教程ELK简介

“ELK”是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch、Logstash 和 Kibana。Elasticsearch 是一个搜索和分析引擎。Logstash 是服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到诸如 Elasticsearch 等“存储库”中。Kibana 则可以让用户在 Elasticsearch 中使用图形和图表对数据进行可视化。

建议Elasticsearch、 Kibana  安装环境使用 2G   4核 配件以上环境

本教程所用系统为 CentOS Linux release 7.5.1804 (Core) ,建议使用 CentoOS7.4 及以上版本  ELK版本为6.6

安装JKD1.8开发环境

虽然es7.x及以后版本自带JDK,此处安装是logstash也要用。如果不装logstash的话可选择跳过此步。

一、jdk安装

yum安装JKD1.8

查看版本

java  -version

yum install java-1.8.0-openjdk-devel  net-tools -y

设置环境变量(无脑粘贴即可)

jh_pwd=`ls -d /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.*`

JAVA_HOME=’$JAVA_HOME’

cat >> /etc/profile <

#set java environment

JAVA_HOME=$jh_pwd

JRE_HOME=$JAVA_HOME/jre

CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

export JAVA_HOME JRE_HOME CLASS_PATH PATH

EOF

使环境变量生效

source /etc/profile

修改文件与线程数限制limits.conf

cat >> /etc/security/limits.conf <

*               soft    nofile          65536

*               hard    nofile          65536

*               soft    nproc           4096

*               hard    nproc           4096

EOF

修改vm.max_map_count

sed -i ‘$a vm.max_map_count=’ /etc/sysctl.conf

使用 wget 下载

https://artifacts.elastic.co/downloads/kibana/kibana-6.6.0-linux-x86_64.tar.gz

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.0.tar.gz

https://artifacts.elastic.co/downloads/logstash/logstash-6.6.0.tar.gz

2、环境

192.168.231.133 部署Kibana、elasticsearch

192.168.231.130 部署Logstash

二、Kibana安装

将安装包放到/usr/local目录下然后解压

cd /usr/local

tar zvxf kibana-6.6.0-linux-x86_64.tar.gz

mv kibana-6.6.0-linux-x86_64 kibana-6.6.0

修改kibana配置文件

vim /usr/local/kibana-6.6.0/config/kibana.yml

server.port: 5601

server.host: “0.0.0.0”

elasticsearch.hosts: [“http://192.168.231.133:9200”]   此写elasticsearch ip

指定访问端口 5601

server.host改为0.0.0.0方便等等使用浏览器访问

连接elasticsearch的地址为http://192.168.231.133:9200,如果后面elasticsearch中配置文件中的地址不为localhost而是为主机IP地址的话,这里也要改为IP地址。

启动kibana

前台启动方式

/usr/local/kibana-6.6.0/bin/kibana

后台启动方式

nohup /usr/local/kibana-6.6.0/bin/kibana >/tmp/kibana.log 2>/tmp/kibana.log &

可写脚本

”””’

#!/bin/bash

ps  -aux  | grep  “kibana” |  grep -v  grep  | awk  ‘{print “kill -9 ” $2}’ | sh

nohup /usr/local/src/kibana-6.6.0/bin/kibana >/tmp/kibana.log 2>/tmp/kibana.log &   log 日志位置可以自行定义

”””’

kibana的安全说明

默认无密码,谁都可以访问

如果使用云厂商,可以在安全组控制某个IP的访问

建议借用Nginx实现用户名密码登录

三、Elasticsearch安装

     使用 Elasticstack-head 插件工具管理

      安装Elasticstack-head 建议使用docker安装

      

      安装docker 和部署

      (1) docker pull mobz/elasticstack-head:5

      (2) docker create –name elasticstack-head -p 9100:9100  mobz/elasticstack-head:5

      (3) docker start   elasticstack-head

   

1、解压

1、tar zvxf elasticsearch-6.6.0.tar.gz

mkdir /usr/local/elasticsearch-6.6.0/data

touch /usr/local/elasticsearch-6.6.0/logs

2、修改配置文件

设置数据存放目录和日志存放目录,监听的IP和端口

vim /usr/local/elasticsearch-6.6.0/config/elasticsearch.yml

path.data: /usr/local/elasticsearch-6.6.0/data

path.logs: /usr/local/elasticsearch-6.6.0/logs

network.host: 127.0.0.1

http.port: 9200

http.cors.enabled: true

http.cors.allow-origin: “*”

3、启动Elasticsearch

Elasticsearch的启动需要使用普通用户,创建一个elk用户,然后修改其目录所属用户为elk,切换到elk用户下然后启动程序。

[root@elk-node1-50 local]# useradd -s /sbin/nologin elk

[root@elk-node1-50 local]# chown -R elk:elk /usr/local/elasticsearch-6.6.0/

[root@elk-node1-50 local]# su – elk -s /bin/bash

[elk@elk-node1-50 ~]$ /usr/local/elasticsearch-6.6.0/bin/elasticsearch -d

4、访问页面

这个时候再访问kibana的页面http://192.168.231.133:5601

5、Elasticsearch启动注意事项

如果监听在127.0.0.1的话,可以启动成功

如果跨机器通讯,需要监听在真实网卡上

监听在真实网卡需要调整系统参数才能正常启动

默认情况下,Elasticsearch 仅仅绑定回环地址,比如127.0.0.1 和[::1],只允许本机访问。为了与其他服务器上的节点进行通信并形成集群,你的节点将需要绑定到非环回地址。通常只需要配置一下 network.host,设成0.0.0.0让任何人都可以访问,线上服务不要这样设置,要设成具体的 IP。

监听在非127.0.0.1时:

监听在0.0.0.0或者内网地址

以上两种 监听都需要调整系统参数

最大文件打开数调整/etc/security/limits.conf

nofile 65536

最大打开进程数调整/etc/security/limits.d/20-nproc.conf

nproc 10240

内核参数调整/etc/sysctl.conf

vm.max_map_count=

监听网卡建议

如果学习。建议监听在192.168.231.133

如果是云服务器的话,一定要把9200和9300公网入口在安全组限制一下

线上环境建议监听在内网网卡,监听在公网容易被入侵

6、监听192.168.231.133端口测试。

修改network.host为192.168.231.133,然后kill进程后重新启动elasticsearch

6、监听192.168.231.133端口测试。

修改network.host为192.168.231.133,然后kill  java  进程后重新启动elasticsearch

vim /usr/local/elasticsearch-6.6.0/config/elasticsearch.yml

修改 network.host为192.168.231.133

此时可写脚本

“”

#!/bin/bash

ps  -aux  | grep  “java” |  grep -v  grep  | awk  ‘{print “kill -9 ” $2}’ | sh

su – elk -s /bin/bash  <

/usr/local/elasticsearch-6.6.0/bin/elasticsearch -d;

exit;

EOF

“”

查看ES 进程 PID 并杀进程;

命令:    jps

3285  elasticsearch

3288   jps

kill  3285

[root@elk-node1-50 local]# su – elk -s /bin/bash

[elk@elk-node1-50 ~]$ /usr/local/elasticsearch-6.6.0/bin/elasticsearch -d

查看日志有报错

[elk@elk-node1-50 ~]$ tail /usr/local/elasticsearch-6.6.0/logs/elasticsearch.log

[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least []

使用root用户设置最大文件打开数

/etc/security/limits.conf

查看添加

* – nofile 65536

内核参数调整

#查看内核参数

[root@elk-node1-50 ~]# sysctl -a | grep max_map_count

sysctl: reading key “net.ipv6.conf.all.stable_secret”

sysctl: reading key “net.ipv6.conf.default.stable_secret”

sysctl: reading key “net.ipv6.conf.ens33.stable_secret”

sysctl: reading key “net.ipv6.conf.ens37.stable_secret”

sysctl: reading key “net.ipv6.conf.lo.stable_secret”

sysctl: reading key “net.ipv6.conf.virbr0.stable_secret”

sysctl: reading key “net.ipv6.conf.virbr0-nic.stable_secret”

vm.max_map_count = 65530

#修改内核参数

vim /etc/sysctl.conf

vm.max_map_count=

#使内核参数生效

[root@elk-node1-50 ~]# sysctl -p

vm.max_map_count =

查看监听端口,默认使用9200和9300端口

[elk@elk-node1-50 ~]$ netstat -tlunp | grep java

(Not all processes could be identified, non-owned process info

will not be shown, you would have to be root to see it all.)

tcp6       0      0 :::9200                 :::*                    LISTEN      5441/java           

tcp6       0      0 :::9300                 :::*                    LISTEN      5441/java

PS 关于 9200   9300 端口解释

9200作为Http协议,主要用于外部通讯

9300作为Tcp协议,jar之间就是通过tcp协议通讯

ES集群之间是通过9300进行通讯

插件安装

ES  安装分词器(IK)需要安装同版本的分词器,不然会出现版本不一致报错

插件ik分词器的安装

1.下载地址 Releases · medcl/elasticsearch-analysis-ik · GitHub

注:分词器版本一定要与ES版本保持一致

cd/usr/local/src/elasticsearch-6.6.0/plugins

mkdir ik

unzip elasticsearch-analysis-ik-6.6.0.zip -d  plugins/ik

安装完插件后再使用elk  用户去运行 ./elasticsearch

这个时候使用浏览器可以从外部访问elasticsearch,如果监听192.168.231.133访问不到这个页面。

ELK 搭建成功过程

ELK 搭建成功过程

五、Logstash安装

1、解压

tar zvxf logstash-6.6.0.tar.gz

2、最简单的配置

[root@elk-node2-51 local]# cat /usr/local/logstash-6.6.0/config/logstash.conf

input{

  stdin{}

}

output{

  stdout{

    codec=>rubydebug

  }

}

3、读取日志文件配置

[root@elk-node2-51 ~]# cat /usr/local/logstash-6.6.0/config/logstash.conf

input{

  file{

    path=>”/usr/local/nginx/logs/access.log”

  }

}

output{

  stdout{

    codec => rubydebug

  }

}

4、后台启动

nohup /usr/local/src/logstash-6.6.0/bin/logstash -f /usr/local/src/logstash-6.6.0/config/logstash.conf >/tmp/logstash.log 2>/tmp/logstash.log &

添加重启脚本

#!/bin/bash

ps  -aux  | grep  “logstash” |  grep -v  grep  | awk  ‘{print “kill -9 ” $2}’ | sh

hup /usr/local/src/logstash-6.6.0/bin/logstash -f /usr/local/src/logstash-6.6.0/config/logstash.conf 

>/tmp/logstash.log 2>/tmp/logstash.log &

注意:为了使Logstash后台运行,不管是nohub … &还是screen还是supervisord管理进程时千万不要把配置目录中的配置文件中的input {}区段设置为测试用的stdin {},否则进程运行一会儿就会自动退出。我一开始使用的上面的stdin {}最简单的配置,虽然后台启动成功但是一会儿就退出了。

5、Logstash默认使用9600端口

[root@elk-node2-51 ~]# netstat -tlunp | grep 9600

tcp6       0      0 127.0.0.1:9600          :::*                    LISTEN      945/java

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/178602.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月26日 下午4:55
下一篇 2026年3月26日 下午4:55


相关推荐

  • CSS3之border-radius圆角

    CSS3之border-radius圆角

    2021年9月21日
    55
  • Java线程池参数分析「建议收藏」

    Java线程池参数分析「建议收藏」线程池组成创建线程池创建线程池通过Executors的工厂方法来创建线程池实例。实际上Executors创建的线程池实例最终都是通过实例化配置不同参数的ThreadPoolExecutor对象。 publicstaticExecutorServicenewFixedThreadPool(intnThreads){returnnewThreadPoolEx…

    2022年6月3日
    37
  • 详解频分复用和正交频分复用及matlab实现

    详解频分复用和正交频分复用及matlab实现说明 最近看着多径衰落突然看到了频分复用 于是想着顺便把频分复用 时分复用搞搞清楚算了 码分复用暂时没看 于是乎又翻出了我的红宝书 樊大佬的 通信原理 文中所说的课本均为该教材 书有多经典就不说了 还参考了几个博客大佬的博文 部分图来自于这些博客 这里主要是我自己的理解以及一些细节困惑的思考 是其他博客不会介绍的 顺便也用 Matlab 实现一下 还是自己亲自对着原理跑一跑程序更踏实一些 该

    2026年3月19日
    2
  • Java学习之JDBC篇

    Java学习之JDBC篇0x00前言在一些web开发或者是数据存储的时候,肯定会使用到数据库来进行数据存储。而在Java里面需要调用JDBC来对数据库进行操作。0x01JDBC概念Jav

    2021年12月12日
    43
  • Windows 打开和关闭默认共享方法汇总

    [原文]在使用xcopy上传文件至远程windows服务器时,出现“Invaliddriverspecification”(无效驱动器规格),经过各种排查,最终发现是服务器“关闭默认共享”导致的。Windows启动时都会默认打开admin$ipc$和每个盘符的共享,对于不必要的默认共享,一般都会把它取消掉,可当又需要打开此默认共享时,又该从哪里设置呢。经过自己的验证,汇总出一下方法。一:查看window共享资源运行–>cmd–>输入netshare二:彻底关闭

    2022年4月7日
    54
  • 浮点数规格化表示例题_浮点数规格化阶码表示

    浮点数规格化表示例题_浮点数规格化阶码表示一、浮点数的表示格式浮点数表示法是指以适当的形式将比例因子表示在数据中,让小数点的位置根据需要而浮动。这样,在位数有限的情况下,既扩大了数的表示范围,又保持了数的有效精度。阶码:阶码是整数,阶符和m位阶码的数值部分共同反映浮点数的表示范围及小数点的实际位置,常用移码或补码表示。IEEE754标准中采用移码的表示形式。尾数:数符表示浮点数的符号,尾数的数值部分的位数n反映浮点…

    2025年6月15日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号