随笔分类 -  java

摘要:package com.test.chain; import java.util.ArrayList; import java.util.List; public class BizFilterChain { /** * 执行器集合 */ public List<BizFilter> bizFilt 阅读全文
posted @ 2020-12-17 17:15 我是代码的搬运工 阅读(92) 评论(0) 推荐(0)
摘要:使用zookeeper实现分布式锁是分布式锁的实现方式的一种,相对于redis的实现,zookeeper的显现能够实现锁的获得顺序,不出现死锁等特点,关于zookeeper分布式锁的实现原理大致总结如下: 客户端向zookeeper的某一个持久节点下注册临时有序节点 获取该父节点下的所有临时有序节点 阅读全文
posted @ 2020-05-24 16:11 我是代码的搬运工 阅读(764) 评论(0) 推荐(0)
摘要:有时候我们进行开发调试时需要用到https,那么我们本地怎么搭建https呢? 1. 打开终端(使用git终端或cmder),使用openssl生成密钥privkey.pem: openssl genrsa -out privkey.pem 1024/2038 2. 使用密钥privkey.pem生 阅读全文
posted @ 2020-04-08 16:43 我是代码的搬运工 阅读(1647) 评论(0) 推荐(0)
摘要:LRU原理 LRU的设计原理就是,当数据在最近一段时间经常被访问,那么它在以后也会经常被访问。这就意味着,如果经常访问的数据,我们需要然其能够快速命中,而不常访问的数据,我们在容量超出限制内,要将其淘汰。 实现代码为 package com.cw.demo.algorithm; import jav 阅读全文
posted @ 2019-12-17 16:24 我是代码的搬运工 阅读(543) 评论(0) 推荐(0)
摘要:要了解Java垃圾收集机制,先理解JVM内存模式是非常重要的。今天我们将会了解JVM内存的各个部分、如何监控以及垃圾收集调优。 Java(JVM)内存模型 正如你从上面的图片看到的,JVM内存被分成多个独立的部分。广泛地说,JVM堆内存被分为两部分——年轻代(Young Generation)和老年 阅读全文
posted @ 2019-03-12 14:04 我是代码的搬运工 阅读(4053) 评论(0) 推荐(0)
摘要:HTML5 WebSocket WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。 WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者 阅读全文
posted @ 2019-02-13 11:02 我是代码的搬运工 阅读(3482) 评论(0) 推荐(0)
摘要:前言:关于消息队列应该大家都不陌生,在实际的项目中消息队列也无处不在,今天我和大家分享一下关于消息队列的问题。 1、消息队列定义 消息队列大家又经常称为MQ(message queue),从字面的含义来看就是一个存放消息的容器。 2、消息队列应用场景 2.1、异步处理 2.2、系统解耦 2.3、流量 阅读全文
posted @ 2018-11-01 13:46 我是代码的搬运工 阅读(552) 评论(0) 推荐(0)
摘要:前几天在看redis的集群方案,在redis3.0以后支持的服务器端的集群方案。不过,在客户端也有成熟的redis集群。实现思想是采用一致性hash算法,将redis节点散列,将存取的key也进行散列,从而找到该从哪个节点上操作数据。下面先来了解下一致性hash算法。 使用场景 现在我们假设有100 阅读全文
posted @ 2018-05-09 17:17 我是代码的搬运工 阅读(574) 评论(0) 推荐(0)
摘要:加入httpclient依赖 代码 阅读全文
posted @ 2018-05-09 14:52 我是代码的搬运工 阅读(336) 评论(0) 推荐(0)
摘要:数据抽取简单的来说,就是将一个表的数据提取到另一个表中。有很多的ETL工具可以帮助我们来进行数据的抽取和转换,ETL工具能进行一次性或者定时作业抽取数据,不过canal作为阿里巴巴提供的开源的数据抽取项目,能够做到实时抽取,原理就是伪装成mysql从节点,读取mysql的binlog,生成消息,客户 阅读全文
posted @ 2018-05-09 12:26 我是代码的搬运工 阅读(10306) 评论(0) 推荐(0)
摘要:建立三台虚拟服务器 wget zookeeper.tar.gz tar zookeeper.tar.gz cd zookeeper/conf cp zoo_sample.cfg zoo.cfg 复制配置的样例文件来配置zookeeper wq退出 拷贝配置文件到其他两台服务器 scp 需要拷贝的文件 阅读全文
posted @ 2018-05-09 11:29 我是代码的搬运工 阅读(78) 评论(0) 推荐(0)
摘要:相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额。那究竟它有什么作用呢?可能很多人未必了解。 相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额。那究竟它有什么作用呢?可能很多人未必了解。 相信很多人都听过nginx,这个小巧的东西慢慢地 阅读全文
posted @ 2018-05-09 11:26 我是代码的搬运工 阅读(428) 评论(0) 推荐(0)
摘要:这也许是目前最为完整的Java OOM异常的解决指南。 1、java.lang.OutOfMemoryError:Java heap space Java应用程序在启动时会指定所需要的内存大小,它被分割成两个不同的区域:Heap space(堆空间)和Permgen(永久代): JVM内存模型示意图 阅读全文
posted @ 2018-05-09 11:25 我是代码的搬运工 阅读(501) 评论(0) 推荐(0)
摘要:一。在linux服务器上 top :找到cup或者内存占用过高的那个进程pid 二。top -Hp 【进程pid】 可以继续跟踪该进程中的所有线程信息,找到cup或者内存过高的那个线程,将该线程id转化为16进制,以便在后面的线程堆栈信息中用该关键字查看 三。jstack 【进程pid】> jsta 阅读全文
posted @ 2018-05-09 11:24 我是代码的搬运工 阅读(734) 评论(0) 推荐(0)
摘要:随着大型网站的各种高并发访问、海量数据处理等场景越来越多,如何实现网站的高可用、易伸缩、可扩展、安全等目标就显得越来越重要。 为了解决这样一系列问题,大型网站的架构也在不断发展。提高大型网站的高可用架构,不得不提的就是分布式。在《分布式系统的一致性探讨》一文中主要介绍了分布式系统中存在的一致性问题。 阅读全文
posted @ 2018-05-09 11:23 我是代码的搬运工 阅读(229) 评论(0) 推荐(0)