![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java架构组件使用
元澈
日月忽其不淹兮,春与秋其代序。
展开
-
在nginx的基础上安装lua模块,实现nginx执行shell脚本
nginx安装可以参考https://blog.csdn.net/ab7253957/article/details/85266493如果没有安装过nginx可以使用openresty,是对nginx的增强1.下载安装LuaJIT 2.1http://luajit.org/download.htmlwget http://luajit.org/download/LuaJIT-2....原创 2019-12-08 21:17:36 · 1260 阅读 · 0 评论 -
Docker基本命令
ubuntu: sudo apt-get##安装dockerapt-get -y install docker.io##查看已安装软件dpkg -l ##查看docker启动状态service docker.io status##启动dockerservice docker startCentOS7:##查看安装的程序原创 2017-05-16 09:27:16 · 333 阅读 · 0 评论 -
ffmpeg视频格式转换for windows and linux
背景: 项目架构:B/S 开发语言:Java 项目需要将dav格式的视频转换为mp4格式,实现在线观看,先进行安装步骤的描述,代码后面贴进来一、windows 1.ffmpeg for windows官方下载即可 2.笔者下载的是解压版的,无需安装,解压后配置环境变量path(例:D:\ffmpeg-win64\bin原创 2016-11-29 17:31:04 · 1593 阅读 · 1 评论 -
linux安装vsftp出现本地用户无法访问
删除这个文件 /etc/pam.d/vsftpd原创 2016-11-16 16:46:00 · 813 阅读 · 1 评论 -
ES集群并配置IK分词器
一、ES集群搭建,建议在单机部署时安装完IK分词器再copy到其他机器进行集群部署,省去安装IK分词器的时间1.单机部署,参照https://blog.csdn.net/ab7253957/article/details/85334259中搭建es的步骤,先搭建单机es再进行下面的步骤2.修改配置文件config/elasticsearch.yml,标红属性是需要修改或增加的属性,如果是在...原创 2019-01-12 15:02:25 · 2549 阅读 · 0 评论 -
APM系统实现原理
每个应用都是执行main方法启动,javaagent使应用在执行main方法之前调用premain方法,而在premain方法里classloader加载类时使用javassist对字节码进行改写,对原方法进行增强,这就形成了监控,类似Spring AOP,而Spring AOP的底层就是动态代理,CGLIB动态代理采用javassist实现。...原创 2019-01-18 10:07:14 · 1235 阅读 · 0 评论 -
当调用外部接口发生异常、服务器宕机或杀死进程时如何保证数据一致性
调用外部接口发生异常时数据一致性解决方案这里提供一个一劳永逸的解决方案设计思路:外部接口多采用交易接口+结果查询接口的方式,基于这种形式的接口提供以下解决方案。 1.根据流水号标识一笔交易请求,另外本地要提供rollback方法 2.模板类记录请求日志,日志状态在本地事务更新3.定时任务扫描日志表异常或超时记录,然后调用外部查询接口进行补偿,对成功请求更改日志状态...原创 2019-03-15 17:34:37 · 2937 阅读 · 0 评论 -
RabbitMq基本概念
ConnectionFactory、Connection、ChannelQueueExchange(fanout、direct、topic、headers)routing keyBindingBinding keyexchange与queue进行绑定形成binding(binding key),fanout: 忽略routing key,只要queue与绑定关系就...原创 2019-07-04 17:27:08 · 133 阅读 · 0 评论 -
Git Commit和pull的撤销
1.撤销commitgit reset --soft HEAD^HEAD^的意思是上一个版本,也可以写成HEAD~1如果你进行了2次commit,想都撤回,可以使用HEAD~22.撤销pullgit refloggit reset --hard HEAD@{n}...原创 2019-07-17 17:22:02 · 561 阅读 · 0 评论 -
Mongodb
环境centos71.官方下载 https://www.mongodb.com/download-center/communitywget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.5.tgz2.启动#创建数据目录tar -zxvf mongodb-linux-x86_64-4.0.5.tgzmk...原创 2019-01-17 11:13:53 · 143 阅读 · 0 评论 -
Tomcat配置详解
下面是tomcat-8.5.37原生server.xml配置,删除了所有自有注释Connector主要属性:protocol 监听的协议,默认是http/1.1 port 连接端口号 minThread 初始化线程数 maxThread 最大线程数,生产配置800-1000 minSpareThreads="100" 最大空闲线程 enableLookups="fals...原创 2018-12-26 12:38:31 · 323 阅读 · 0 评论 -
Tomcat整体架构及生产环境部署
一、tomcat组件及其关系tomcat组件完全展现在配置文件server.xml中,详细配置见https://blog.csdn.net/ab7253957/article/details/852602111、Connector 连接器,用于建立用户请求,将用户请求转化为Request (1) HTTP 1.1 (2) SSL (https) (3) AJP( Ap...原创 2018-12-26 09:50:45 · 481 阅读 · 0 评论 -
RocketMq事务消息遇到的问题
1、搭建2m-2s-sync集群测试RocketMq分布式事务,返回结果sendStatus=SLAVE_NOT_AVAILABLE,但是集群机器都正常,纠结了很长时间,后面把BrokerRole改为ASYNC_MASTER,一切都正常了。。。,那么可以这么说,事务消息只支持2m-2s-async集群模式2、发送的消息在rocketmq-console可视化界面查不到消息,原因查询时有时间参数...原创 2018-12-20 18:46:51 · 996 阅读 · 0 评论 -
Nginx安装
linux环境centos71.下载源码 及安装wget http://nginx.org/download/nginx-1.14.0.tar.gztar -zxvf nginx-1.14.0.tar.gz简单构建./configure基于参数构建./configure --prefix=/usr/local/nginx --with-http_stub_status_...原创 2018-12-26 18:06:57 · 183 阅读 · 0 评论 -
Kafka集群配置
1、Kafka概念: Topic: Kafka按照Topic分类来维护消息,每个Topic可以配置多个partition(分区),每个分区只能被一个消费者消费,每个partition对应一个commit log文件 Producer: 我们将发布(publish)消息到Topic的进程称之为生产者(producer) Consumer: 我们将订阅(subscribe...原创 2018-12-27 09:12:06 · 167 阅读 · 0 评论 -
RocketMq集群搭建
地址下载https://www.apache.org/dyn/closer.cgi?path=rocketmq/4.2.0/rocketmq-all-4.2.0-bin-release.zip 今天使用两台虚拟机搭建rocketmq集群,IP地址为192.168.21.128和192.168.21.129,遇到一个坑耗费了比较长的时间,防火墙的问题关闭防火墙systemc...原创 2018-12-17 17:57:08 · 278 阅读 · 0 评论 -
ELK搭建
1.准备环境:centos7、elasticsearch 2.4.6、kibana4.6.1 、logstash2.4.0、jdk1.7+elasticsearch不能在root账号下运行,需要新建一个用户(1)创建用户名为elk的用户 adduser elk(2)修改密码 passwd 或 echo root |passwd --stdin elk(...原创 2018-12-29 12:39:51 · 321 阅读 · 0 评论 -
centos7下Mysql安装及主从配置
一、mysql安装(根据官方步骤https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/)#查看可用的mysql包,如果没有进行第1、2步下载yum repolist all | grep mysql1.下载RPM包wget https://repo.mysql.com//mysql80-community-release-e...原创 2018-12-24 16:12:45 · 170 阅读 · 0 评论 -
Redis高可用集群搭建
redis集群需要至少要三个master节点,我们这里搭建三个master节点,并且给每个master再搭建一个slave节点,总共6个redis节点,在三台虚拟机上实现三主三从1.下载 && 解压 && 编译$ wget http://download.redis.io/releases/redis-5.0.3.tar.gz$ tar xzf redi...原创 2018-12-25 10:08:25 · 178 阅读 · 0 评论 -
Nginx生产环境配置
一.Nginx 反向代理与负载均衡二.Nginx 实现高速缓存三.Nginx 性能参数调优nginx调优1.worker_connections 1024(linux理论上支持十万,但是要除以工作进程数worker_processes)2.worker_processesworker_processes number(CPU核心数)3.进程和cpu绑定CPU核心数为4时,可以进...原创 2018-12-30 12:37:51 · 1043 阅读 · 0 评论 -
Mysql索引原理
1.mysql使用B+tree(B-tree(B树)的一种变种)数据结构存储索引,B+tree和B-tree的区别在于B+tree在非叶子节点不存储数据,只存储索引,而且mysql在设计的时候将节点的大小设计为4K,这是因为操作系统(windows为例)硬盘的页大小为4K,操作系统会进行预读(预读的大小为页大小的整数倍),将这个节点加载到内存里,在内存里进行顺序查找速度是很快的。2.Innod...原创 2018-11-21 16:34:27 · 120 阅读 · 0 评论