- 博客(19)
- 资源 (2)
- 收藏
- 关注
原创 3种分布式锁方案详细解析----MySQL/Redis/ZooKeeper
为什么需要分布式锁有时我们需要保证同一时间只有一个线程能执行某项操作.在单机环境下,我们可以使用java中的synchronized或Lock来实现,但是在分布式场景下,涉及到多个服务多个JVM环境,这个时候我们上述方案就不适用了,我们需要一个能协调多个服务来依次逐个执行的方案,分布式锁就是来解决这样问题的一种方案.举个例子:假如有多个线程,要将自己的ThreadName写入到共同的一个文件中,每个线程将自己的ThreadName拼接在文件已有内容之后.在这种场景下,必须要求线程逐个执行才能完成这个需
2020-07-23 22:54:56 331
原创 RocketMQ从入门到精通——消息发送
消息发送概述RocketMQ支持三种方式发送消息——同步,异步,Oneway。同步发送及producer消息发送后,同步等待直至broker响应;异步发送即需要消息发送成功后立即返回不等待,等待发送结束后回调函数会被调用。Oneway方式发送完成后不等待结果返回,也不不指定回调函数,消息有可能发送失败。从性能方面来讲,三种发送方式从高到低依次是Oneway发送,异步发送,同步发送。从可靠性方面来讲,三种发送方式从高到低依次是同步发送,异步发送,Oneway发送。消息结构消息类Message中包含t
2020-07-19 20:42:21 604
原创 RocketMQ从入门到精通——NameServer
NameServer的职责NameServer在RocketMQ集群中起到了服务注册,服务发现,topic路由管理的作用,producer,consumer,Broker在启动后,都需要将自身的信息注册到NameServer,为什么不适用Zookeeper原理分析首先我们看NamesrvStartup.java这个类...
2020-07-19 17:29:44 817
原创 RocketMQ从入门到精通——概览
主要特性高性能高可用低延迟消息可靠功能丰富支持订阅者横向扩展等亿级消息堆积能力主要组成RocketMQ中的由四部分组成,包括Producer、Consumer、Broker、Name Server。Producer顾名思义,是消息的生产者。Broker是消息存储的地方,接收Producer发出的消息并存储,供后续consumer消费。Consumer是消息的消费者,消费来自broker的消息。producer,broker,consumer之间为了能发现彼此,需要借助注册中心,
2020-07-18 00:04:56 1464
原创 Spring原理知识点
ApplicationContext是BeanFactory子接口,有几种实现类,如FileSystemXmlApplicationContext和ClassPathXmlApplicationContext,成为Spring容器,可以管理被Spring管理的bean的生命周期; 2. ...
2018-06-26 16:22:51 270
原创 深入理解JVM
使用jvm原生工具方式jstat -gcutil 查看内存各区域使用情况,jmap -histo:live 进程id 查看对象存活情况jconsole 实时分析dump出堆快照,利用工具进行分析利用jprofile实时分析...
2018-06-25 10:25:52 308
原创 异常处理
1.ExceptionHandler,此形式只对本身controller有效 @Controller public class MyExceptionHandler{ protected final Logger logger = LoggerFactory.getLogger(this.getClass()); @Exception...
2018-04-04 10:01:48 180
原创 nginx学习笔记
nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态、静态页面的分离,可以按照轮询、ip哈希、URL哈希、权重等多种方式对后端服务器做负载均衡,同时还支持后端服务器的健康检查。如果只有一台服务器时,这个服务器挂了,那么对于网站来说是个灾难.因此,这时候的负载均衡就会大显身手了,它会自动剔除挂掉的服务器.下面简单的介绍下我使用Ngi...
2018-04-04 09:56:00 215
原创 centos安装nginx
安装命令: 1.安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 2.安装pcre-devel解决问题 yum -y install pcre-devel 3. 安装“zlib-devel” yum install -y zlib-devel 4.安装nginx cd nginx-1.10.1 ...
2018-04-04 09:55:04 197
原创 微信授权详细步骤
注意: 1. redirect_uri要经过urlencode加密,并且要使用带有https的域名 2. 尤其注意:由于公众号的secret和获取到的access_token安全级别都非常高,必须只保存在服务器,不允许传给客户端。后续刷新access_token、通过access_token获取用户信息等步骤,也必须从服务器发起。 3. code最多五分钟过期 ...
2018-04-04 09:50:31 2816
原创 Mysql索引不生效场景总结
key(name,age,pos)1. 跳过列,where a = 1 and c = 3,最多用到索引列a;where b = 2 and c = 3,一个也用不到,必须从最左列开始2. 前面是范围查询,where a = 1 and b > 2 and c = 3,最多用到 a, b两个索引列;3. 顺序颠倒,where c = 3 and b = 2 and a = 1,一...
2018-04-04 09:41:55 3153
原创 redis学习笔记
* http://www.jianshu.com/p/68d214f09032* * 安装/启动 * 解压 编译make * 设置redis-conf文件中的daemonize属性为yes可以使用如下命令,把redis-server和redis-cli拷贝到合适的位置(/usr/local/bin/):sudo cp src/redis-server /usr/loc...
2018-04-04 09:40:17 175
原创 RocketMQ入门知识点
1. 优先级: 1. 消息可以设置优先级 2. 每个消息都是持久化的,所以如果按照优先级排序,开销会比较大,可以通过设置两个队列,一个优先级高,一个优先级低 3. 可以使用不同优先级对应不同topic实现,这种实现方式对业务经度有损失2. 有序: RocketMQ可以实现严格的保证先发送的消息先被消费3. Filter过滤: 通过topic和tag细化过滤,也可以通...
2018-04-04 09:34:16 284
原创 Linux中tomcat启动超慢
阿里云安装tomcat过程中,出现tomcat启动超慢,有时达到8分钟的现象 原因是Tomcat7/8都使用了org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom类产生安全随机类SecureRandom的实例作为会话ID,这里要花费很长时间。 解决办法: 在catalina.sh中加入这么一行:JAVA_OP...
2018-04-02 13:29:05 257
原创 centos7常用运维命令
立即关机 shutdown -h now 立即重启 shutdown -r now查看剩余磁盘空间 df -lh安装jdk 草考文章 https://www.cnblogs.com/Dylansuns/p/6974272.html查看端口被哪个进程占用 netstat -tunlp|grep 8080systemctl start firewalld # 启动,sy...
2018-03-30 11:17:55 3515
原创 centos7中防火墙设置
防火墙官方文档介绍地址:https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Security_Guide/sec-Using_Firewalls.html#sec-Introduction_to_firewalld1一、firewall介绍CentOS 7中防火墙是一个非常的强大...
2018-03-30 09:51:14 31788
原创 安装vmvare后不能上网问题
安装vmvare后不能上网问题不能上网的原因是因为centos7默认网卡未激活。 现象不能上网不识别ip addr命令,并且网卡名称也不是eth0了,而是改成eno16777736了解决 激活网卡:在文件 /etc/sysconfig/network-scripts/ifcfg-enp0s3 中 进入编辑模式,将 ONBOOT=no 改为 ONBOOT=yes,就OK ...
2018-03-26 16:35:33 378
原创 java爬虫环境库
package com.thesys.spider.util.http.bean;import java.util.Random;/** * 环境库 * 该Bean仅配置偶尔变动的 * @author Erciyns */public class VbBean { /** * 是否自动转发 * 例如:HTTP : 301 */ p...
2018-03-20 10:30:42 533
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人