List学习 ArrayList and LinkedList联系与区别线程安全:都是线程不安全 底层实现: arraylist 是数组,linkedlist是双向链表 复杂度问题:对于插入来说,若ArrayList直接add 添加到最后一个,则复杂度为O(1),若指定位置插入和删除元素则复杂度为O(n-i),而LinkedList采用链表,插入和删除的复杂度接近O(1)。 是否支持快速随机访问: Linked 2021-02-18 java
ER图学习 简介ER图,全名实体(Entity)关系(relation)关系,主要用于数据库设计的结构图,表示系统内的主要实体及其属性以及实体之间的关系。 主要组成 实体,可以理解类 属性,实体具有的特性,类的字段 关系,类之间的关系 主要画法 2021-01-12 开发工具
zookeeper学习笔记 ZooKeeper是一个开源的分布式服务框架,为分布式应用提供协调服务,用来解决分布式应用中的数据管理问题,如:配置管理、域名服务、分布式同步、集群管理等 zookeeper应用场景配置管理在开发过程中需要获取一些配置,如果这些配置发生了改变的话,那么需要每一台的服务都去修改配置,针对这个问题,我们将一些公共的配置放在zookeeper的节点中,然后应用程序连接到zookeeper上,并监听配置的 2020-12-30 zookeeper 分布式
一些有价值的站点 Sonar wiki https://wiki.sei.cmu.edu/confluence/display/java/SEI+CERT+Oracle+Coding+Standard+for+Java java language specification https://docs.oracle.com/javase/specs/jls/se8/html/index.html 2020-11-30 学习笔记
hiveSQL hive SQL文件格式AvroSerDe ORC Files Parquet 压缩文件 在某些情况下,保持在 Hive 表中压缩数据可以提供比未压缩存储更好的 performance;在磁盘使用和查询 performance 方面。 DDL 建表语句 1CREATE TABLE pokes (foo INT, bar STRING); 创建名为poke的表,包含两列 整数型foo和字符型的b 2020-10-03 大数据
hadoop 简介hadoop是一个分布式系统的基础架构,广义的hadoop指的是一整个大数据处理的生态系统 hadoop本体主要包括 分布式文件系统HDFS,分布式计算架构mapreduce,分布式调度系统yarn,和一些工具组件。 1.hadoop 1.x和2.x的区别:在1.x时代,mapreduce同时处理资源调度和业务逻辑运算,在2.x版本,hadoop加入了yarn负责资源调度,mapreduce只 2020-10-01 大数据
分布式事务 什么是分布式事务分布式事务指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。 简单的说,就是一次大的操作由不同的小操作组成,这些小的操作分布在不同的服务器上,且属于不同的应用,分布式事务需要保证这些小操作要么全部成功,要么全部失败。 本质上来说,分布式事务就是为了保证不同数据库的数据一致性。 CAP理论在分布式系统中,一致性(Consistency) 2020-09-20 分布式
日志系统 JAVA日志框架日志门面框架和日志实现框架的区别目前的日志框架有JDK自带的logging,log4j1、log4j2、logback ,这些框架都自己定制了日志 API ,并且有相应的实现;目前用于实现日志统一的框架 Apache commons-logging、slf4j ,遵循面向接口编程的原则,这两大框架可以让用户在程序运行期间去选择具体的日志实现系统(log4j1\log4j2\logb 2020-08-29 Java
redis study redis studyredis的一些笔记(个人向) 详细文档参见 http://redisdoc.com/string/index.html redis原理单线程,用队列处理并发访问,由于是内存型数据库 用来当作缓存,读写比较快。单机10左右tps 与memcache比较 redis的优势:可以持久化,数据类型多样,支持事务 redis 数据类型 string 常用命令: set,get,dec 2020-07-30 Java redis
rabbitMQ笔记 相关概念使用消息队列的原因 不同进程(process)之间传递消息时,两个进程之间耦合程度过高,改动一个进程,引发必须修改另一个进程,为了隔离这两个进程,在两进程间抽离出一层(一个模块),所有两进程之间传递的消息,都必须通过消息队列来传递,单独修改某一个进程,不会影响另一个; 不同进程(process)之间传递消息时,为了实现标准化,将消息的格式规范化了,并且,某一个进程接受的消息太多,一下子无法 2020-06-01 中间件 MQ