记录一次生产环境构筑

国庆前要构筑好云心办公的生产环境,nginx+tomcat(多个host)+mariaDB(multiple replications)

tomcat多个host配置好了,检查下日志,额,项目的日志没生成? 没有。 tomcat自己的日志大段大段。

神码情况?

把tomcat本身的日志换成了log4j,然后项目的日志还是没有,tomcat自己的日志,哇,似乎所有lib日志都是trace等级了。

下面是尝试的步骤:

  1. 检查tomcat的log4j.properties,log等级都没问题;
  2. 项目日志设置问题? 项目采用了slf4j+logback。jar libs 都全了,logback.xml也ok。项目在开发环境的日志是正常的;
  3. tomcat和项目结合的问题? tomcat可以正常启动,项目也能正常访问。开发和生产环境的差异:生产为了节省内存,把所有libs放tomcat的lib目录下,几个host共用,libs和项目分离了!!! 难道logback的jar 检测不到logback.xml?
  4. 试试把slf4j和logback的jar libs 冗余的放到每个工程,去, 日志正常了。
  5. libs 冗余不喜欢, 参考了下 tomcat 日志切换的办法,在tomcat的lib目录下 放了logback.xml,果然,日志正常了。
  6. 上述的4.5. 比较了下,还是采用的5;一个logback.xml能为几个不同的项目服务吗?
时间: 2024-10-06 17:42:39

记录一次生产环境构筑的相关文章

记录一次生产环境OOM

生产环境突然频繁挂掉,查看日志报错OOM 光看日志没法确定原因,于是想把内存dump下来分析 首先来看看tomcat的启动脚本startup.sh,在tomcat的bin目录下(这里的版本是tomcat8.5) 启动过程中会去执行catalina.sh,以下是catalina.sh的部分内容 如果setenv.sh脚本存在的话,启动tomcat就会去执行这个脚本,这里很适合添加自定义的参数 vim setenv.sh 创建这个文件 写入:JAVA_OPTS="-Dfile.encoding=UT

Django 生产环境部署-记录 nginx+uwsgi+Django

这几天一直研究django生产环境的部署,看了很多文章,都写的很好,有些时候只是环境不太一样,配置过程中出现了很多的问题,例如: uwsgi  ---module   一直运行不起来,,加--file参数才可以... ----亲测可以运行----- 1.安装DJANGO,创建工程项目,确保python manage.py runserver 0.0.0.0:8080 能够正常启动 2.安装uwsgi , 在你的机器上写一个test.py # test.pydef application(env,

redis的单机安装与配置以及生产环境启动方案

简单介绍一下redis的单机安装与配置,方便自己记录安装步骤的同时方便他人获取知识. 首先,从官网下载最新版的(稳定版)的redis安装包.官网地址如下:https://redis.io/download 下载源码包后,redis需要编译安装.需要安装gcc和tcl,gcc用于编译tcl用于测试. 使用命令安装gcc,yum install gcc,一路选择yes,gcc就可以安装成功. 接下来安装tcl,首先获取tcl源码包(见百度云盘)或者使用命令:wget http://downloads

生产环境部署squid服务

网络拓扑 该实验使用虚拟机模拟搭建,准备开启2台虚拟机,客户端用本记代替. 1.Squid服务器使用2块网卡.如下图显示: 2.Web服务器与squid服务器配置在同一个网段即可.如下图显示: 3.客户端IP与squid服务器网卡1是在同一网段上即可.如下图显示: 4.查看squid服务器上的eth0和eth1网卡ip地址 5.查看web服务器的ip地址 6.先测试客户端能否ping通squid服务器的网卡1. 7.测试客户端能否ping通web服务器,ping不通正常. 8.安装squid软件

redis概述,特点,与Memached的不同,生产环境主从配置,redis配置文件解析

Redis概述: 是一个基于Key-Value的持久化数据库存储,支持丰富的数据类型,用C语言编写,可基于内存又可持久化的日志型.Key-Value数据库,并提供多种语言的API Redis特点 1.Key-Value健值类型存储 2.支持数据可靠存储及落地 3.单进程单线程高性能服务器 4.单机qps(每秒查询率)可以达到10w 5.适合小数据量高速读写访问 Redis跟Memached的不同 1.Redis可以持久化数据存储 2.性能高很,Redis能支持超过10W每秒的读写频率 3.丰富的

生产环境使用Nginx+uwsgi部署Django

在本地运行django应用相对来说还是挺方便的,使用自带的runserver启动即可.如果在生产环境部署django,就要多考虑一些问题了.比如静态文件处理,安全,效率等等 在网上找到了不错的部署的教程,讲解的还是很详细的,我就不重新再整理了. 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(上) – Django中国社区五步教你实现使用Nginx+uWSGI+Django方法部署Django程序(下) – Django中国社区 但是作为记录,我还是要记录下部署中遇

生产环境遇到的hashMap非线程安全问题java.lang.thread.waiting

写在前面:工作有几年了,从入门到现在,遇到也解决了一些问题.(当然,框架级别的暂时还没有)一直以来,都是从博客园以及其他各大社区搜罗出来的各种fix方法.目前稍有闲暇时间,在看过大V沈剑的博文后,我也鼓起勇气来书写博客,记录工作中遇到和解决的问题(其中当然也包括我在博园获取的各种解决方法:能找到原博文的小弟一定会注明出处.)因为总觉得自己水平不够,怕写出来的文章误导了别人.以下是这周生产环境遇到的一个问题,写出来供大家参考. 现象 周五一大早,车子都没停稳(电动车),群里就开始在询问谁最近的代码

生产环境使用 pt-table-checksum 检查MySQL数据一致性

公司数据中心从托管机房迁移到阿里云,需要对mysql迁移(Replication)后的数据一致性进行校验,但又不能对生产环境使用造成影响,pt-table-checksum 成为了绝佳也是唯一的检查工具. pt-table-checksum 是 Percona-Toolkit 的组件之一,用于检测MySQL主.从库的数据是否一致.其原理是在主库执行基于statement的sql语句来生成主库数据块的checksum,把相同的sql语句传递到从库执行,并在从库上计算相同数据块的checksum,最

生产环境跑PHP动态程序

Nginx + PHP5(FastCGI)生产环境跑PHP动态程序可超过“700次请求/秒” 我生产环境下的两台Nginx + PHP5(FastCGI)服务器,跑多个一般复杂的纯PHP动态程序,从Nginx的日志可以统计出,单台Nginx + PHP5(FastCGI)服务器跑PHP动态程序的处理能力已经超过“700次请求/秒”,相当于每天可以承受6000万(700*60*60*24=60480000)的访问量: 服务器①:DELL PowerEdge 1950(两颗 Intel(R) Xeo