work hard work smart

专注于Java后端开发。 不断总结,举一反三。
随笔 - 1158, 文章 - 0, 评论 - 153, 阅读 - 186万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

04 2020 档案

摘要:1、下载源码 下载 xxx-job源码 https://github.com/xuxueli/xxl-job 里面包含了xxl-job调度中心服务,xxl-job执行器服务 下载后的源码结构 xxl-job-admin: 调度中心服务 xxl-job-executor-sample-springbo 阅读全文

posted @ 2020-04-30 17:49 work hard work smart 阅读(1242) 评论(0) 推荐(0) 编辑

摘要:原来的环境: 假设单个数据库有t_user表,t_article表,随着数据量的增加,需要使用MyCat对这两张表进行分库分表操作 表结构如下: 分库分表后的结构: forum_basic, forum_bj,forum_sh,forum_hz四个数据库。第一个数据库forum_basic有用户表, 阅读全文

posted @ 2020-04-28 18:16 work hard work smart 阅读(365) 评论(0) 推荐(0) 编辑

摘要:1、下载MyCAT https://github.com/MyCATApache/Mycat-download 选择1.6版本 Mycat-server-1.6-RELEASE-20161028204710-linux.tar.gz 2、安装JDK 我这里安装的是1.7.0_80 3、创建mycat 阅读全文

posted @ 2020-04-27 21:51 work hard work smart 阅读(341) 评论(0) 推荐(0) 编辑

摘要:MyCat是服务端的分库分表,对程序透明。客户端的分库分表技术有Sharding-Jdbc 1、MyCAT介绍 MyCAT是数据库的中间层,可以帮助我们在高并发场景下的分库分表操作,以提升数据库的整体性能。 MyCAT是基于阿里的Cobar开发,每年双11的高并发场景。 对于数据库工程师来说 MyC 阅读全文

posted @ 2020-04-26 13:35 work hard work smart 阅读(234) 评论(0) 推荐(0) 编辑

摘要:1、创建索引,定义mappings属性。 类型为keyword是不会被分词的。 index: 默认为true,设置为false,那么这个字段就不会被索引,不会被查询到。 创建好后,在http://localhost:9100/ 中查看索引的信息 类型为keyword,就不会被分词,如手机号,QQ号。 阅读全文

posted @ 2020-04-25 21:38 work hard work smart 阅读(834) 评论(0) 推荐(0) 编辑

摘要:1、查看集群的健康情况 http://localhost:9200/_cluster/health/ 2、创建索引 index_temp 为索引名称 3、查看索引信息 4、查询所有索引 显示索引的详细信息 index: 索引名称 store.size 索引所占的存储空间 5、删除索引 DELETE 阅读全文

posted @ 2020-04-25 20:30 work hard work smart 阅读(153) 评论(0) 推荐(0) 编辑

摘要:一、安装ElasticSearch 1、Widows下ElasticSearch的安装 下载ElasticSearch版本,我这里使用的是elasticsearch-7.6.2-windows-x86_64.zip 安装目录为:C:\Tools\elasticsearch\elasticsearch 阅读全文

posted @ 2020-04-25 20:01 work hard work smart 阅读(138) 评论(0) 推荐(0) 编辑

摘要:1、Lucene, Solr, ElasticSearch的关系 Lucene是类库(Java开发) Solr基于lucene(Java开发) ES基于lucene (支持PB级别的查询 PB=1024T) 2、ES核心术语与数据库的对应 ES核心术语 数据库 索引index 表 类型type(7. 阅读全文

posted @ 2020-04-24 21:40 work hard work smart 阅读(306) 评论(0) 推荐(0) 编辑

摘要:1、现在mongodb curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz 2、解压 tar -zxvf mongodb-linux-x86_64-3.0.6.tgz 3、将bin下的可执行文件位于bin目录 阅读全文

posted @ 2020-04-24 17:19 work hard work smart 阅读(114) 评论(0) 推荐(0) 编辑

摘要:Semaphore: 信号量,用于控制访问某一公共资源的并发线程数 Semaphore信号量介绍 官方的解释为 1)Semaphore是一个计数信号量2)从概念上将,Semaphore包含一组许可证3)如果有需要的话,每次调用acquire()方法都会阻塞,直到获取一个可用的许可证4)每次调用rel 阅读全文

posted @ 2020-04-21 21:44 work hard work smart 阅读(139) 评论(0) 推荐(0) 编辑

摘要:作者:知乎用户 链接:https://www.zhihu.com/question/41609070/answer/191965937 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 这个问题其实是有理解误区的,首先 http 和 rpc 并不是一个并行概念。 rp 阅读全文

posted @ 2020-04-16 21:28 work hard work smart 阅读(656) 评论(0) 推荐(0) 编辑

摘要:转自: https://blog.csdn.net/star1210644725/article/details/91899117 一、并发性 并发性是oltp数据库最重要的特性,但并发涉及到资源的获取、共享与锁定。 mysql:mysql以表级锁为主,对资源锁定的粒度很大,如果一个session对 阅读全文

posted @ 2020-04-16 21:12 work hard work smart 阅读(412) 评论(0) 推荐(0) 编辑

摘要:1、RabbitMQ是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的应用之间共享数据,RabbitMQ是使用Erlang语言编写的,并且RabbitMQ是基于AMQP协议的 2、为什么使用RabbitMQ? 1) 滴滴、美团、头条、去哪儿、艺龙... 都在使用RabbitMQ 2) 开 阅读全文

posted @ 2020-04-15 23:40 work hard work smart 阅读(141) 评论(0) 推荐(0) 编辑

摘要:使用场景较少 /** * 使用场景较少 */ @Slf4j public class LockExample3 { private final Map<String, Data> map = new TreeMap<>(); private final ReentrantReadWriteLock 阅读全文

posted @ 2020-04-13 17:31 work hard work smart 阅读(173) 评论(0) 推荐(0) 编辑

摘要:Actuator是Spring Boot提供的对应用系统的自省和监控的集成功能,可以查看应用配置的详细信息,例如自动化配置信息、创建的Spring beans以及一些环境属性等。 1、创建Spring Boot工程,pom.xml的配置如下 <parent> <groupId>org.springf 阅读全文

posted @ 2020-04-13 16:27 work hard work smart 阅读(168) 评论(0) 推荐(0) 编辑

摘要:一、java子线程中获取父线程的threadLocal中的值 threadLocal可以做线程级的数据隔离,那如何在子线程中获取父线程的值呢? 可以使用InheritableThreadLocal /** * Java子线程获取父线程的threadLocal中的值 */ public class T 阅读全文

posted @ 2020-04-12 20:39 work hard work smart 阅读(2608) 评论(0) 推荐(0) 编辑

摘要:1、String源码结构 public final class String implements java.io.Serializable, Comparable<String>, CharSequence { /** The value is used for character storage 阅读全文

posted @ 2020-04-12 12:29 work hard work smart 阅读(199) 评论(0) 推荐(0) 编辑

摘要:1、JDK和JRE的区别 JDK:Java Development Kit,Java开发工具包,提供了Java开发环境和运行环境 JRE:Java Runtime Environment,Java运行坏境,为Java提供运行所需要的环境。 具体来说JDK其实包含了JRE,同事还包含了编译Java源码 阅读全文

posted @ 2020-04-09 10:26 work hard work smart 阅读(215) 评论(0) 推荐(0) 编辑

摘要:Lambda原理 在Java8中每一个表达式必须有一个函数式接口与之对应。 什么函数式接口? 简单的说就是只包含一个抽象方法的普通接口 Lambda表达式的使用。 我们定义了一个IMath接口,加上@FunctionalInterface注解 public class LambdaTest { @F 阅读全文

posted @ 2020-04-08 15:03 work hard work smart 阅读(2331) 评论(0) 推荐(0) 编辑

摘要:135、Rabbit MQ的使用场景有哪些? 1) 抢购活动,削峰填谷,防止系统崩溃。 2) 延迟信息处理,比如10分钟之后给下单未付款的用户发送邮件提醒 3) 解耦系统,对于新增的功能可以单独写模块扩展,比如用户确认评价之后,新增了给用户返回积分的功能,这个时候不用业务代码里添加新的增加积分功能, 阅读全文

posted @ 2020-04-05 20:30 work hard work smart 阅读(211) 评论(0) 推荐(0) 编辑

摘要:JDK实现锁的方式有两类:Synchronized和CAS CAS的使用中,有直接使用的,比如AtomicInterger; 有间接使用的,比如ReentrantLock 1、CAS介绍 CAS是Compare and Swap(比较并交换)的简称 CAS有三个操作数: 内存值V, 旧的预期值A, 阅读全文

posted @ 2020-04-05 13:41 work hard work smart 阅读(203) 评论(0) 推荐(0) 编辑

摘要:前面介绍的Stack是新进后出,而Queue是先进先出的 1、Queue结构 public interface Queue<E> extends Collection<E> { boolean add(E e); boolean offer(E e); E remove(); E poll(); E 阅读全文

posted @ 2020-04-05 12:53 work hard work smart 阅读(402) 评论(0) 推荐(0) 编辑

摘要:Stack介绍 Stack(栈),它具有先进后出的特性 1、Stack的源码结构 public class Stack<E> extends Vector<E> { public Stack() { } } Stack继承了Vector,而Vector又是线程安全的ArrayList,所以底层仍然是 阅读全文

posted @ 2020-04-04 21:20 work hard work smart 阅读(131) 评论(0) 推荐(0) 编辑

摘要:前面介绍的ArrayList和LinkedList, 在多线程的场景中就不适合了。JDK提供了线程安全的List。 Vector和CopyOnWriteArrayList是线程安全的 1、Vector 这个类属性和方法同ArrayList,主要区别是Vector在其主要方法上都加上了synchron 阅读全文

posted @ 2020-04-04 20:37 work hard work smart 阅读(291) 评论(0) 推荐(0) 编辑

摘要:Object的源码结构如下,Objec有以下方法 public class Object { private static native void registerNatives(); static { registerNatives(); } public final native Class<? 阅读全文

posted @ 2020-04-03 17:30 work hard work smart 阅读(170) 评论(0) 推荐(0) 编辑

摘要:1、LinkedList的结构如下 public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>, Cloneable, java.io.Serializable { transie 阅读全文

posted @ 2020-04-02 18:24 work hard work smart 阅读(130) 评论(0) 推荐(0) 编辑

摘要:1、进入Java的JDK ArrayList源码 public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable { private 阅读全文

posted @ 2020-04-02 15:47 work hard work smart 阅读(149) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示