- 博客(48)
- 问答 (2)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Hadoop3部署+笔记
Hadoop基本概念大数据处理最典型应用: 公司产品运营情况分析 电商推荐系统 精准广告推送系统基本概念1.有海量数据 .2.有对海量数据进行挖掘的需求.3.对海量数据进行挖掘的软件工具(hadoop、spark、storm、flink、tez、impala ...)海量数据 存储、运算 =====分布式 存储、运算 ------已经有大量的框架存储框架---> HDFS 分布式文件存储系统 (各种文件结构)hadoop 提供的存储框架 ---.........
2021-03-10 11:13:46
372
1
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 elasticsearch-7.9.2 集群安装
1. 单机node1安装测试通过后,可以拷贝安装好的文件到node2、node3机器上https://blog.csdn.net/Aoico/article/details/108908713 (单机安装步骤)[root@node1 data]# scp -r elasticsearch-7.9.2/ node2:/data/2.修改配置cluster.name: my-es #节点集群名字要一致 node.name: node1 #node2 此处改为 node2,...
2020-12-04 15:29:30
274
1
原创 MySQL事务(学习)
事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。事务包含了4个特性ACID。
2024-04-16 22:19:07
298
原创 JVM学习
线程私有的,每个线程一份,内部保存的字节码的行号。用于记录正在执行的字节码指令的地址。线程共享的区域。主要用来保存对象实例,数组等,当堆中没有内存空间可分配给实例,也无法再扩展时,则抛出OutOfMemoryError异常。Java堆Jdk1.7和1.8的区别1.7中有有一个永久代,存储的是类信息、静态变量、常量、编译后的代码1.8移除了永久代,把数据存储到了本地内存的元空间中,防止内存溢出年轻代。
2024-03-20 17:08:07
753
原创 MySQL的索引
索引是通过某种算法,构建出一个数据模型,用于快速找出在某个列中有一特定值的行,不使用索引,MySQL必须从第一条记录开始读完整个表,直到找出相关的行,表越大,查询数据所花费的时间就越多,如果表中查询的列有一个索引,MySQL能够快速到达一个位置去搜索数据文件,而不必查看所有数据,那么将会节省很大一部分时间。索引是存储引擎用来快速查找记录的一种数据结构,按照实现的方式类分,主要有Hash索引和B+Tree索引。按照功能划分,索引划为以下分类:单列索引。
2024-03-18 22:48:48
999
原创 Nacos 如何实现配置文件动态更新的
Nacos 如何实现配置文件动string:简单动态字符串SDS,Redis 的字符串是动态字符串,是可以修改的字符串,内部结构实现上类似于ArrayList,采用预分配冗余空间的方式来减少内存的频繁分配。list:列表相当于 LinkedList,注意它是链表而不是数组。这意味着 list 的插入和删除操作非常快,时间复杂度为 O(1),但是索引定位很慢,时间复杂度为 O(n)。在列表元素较少的情况下会使用一块连续的内存存储,这个结构是 ziplist。它将所有的元素紧挨着一起存储,分配的是一块
2024-03-17 20:38:39
419
原创 ThreadLocal-内存泄露问题
(弱引用,内存不太够的时候,优先回收)其中key为使用弱引用的ThreadLocal实例,value为线程变量的副本。案例:使用JDBC操作数据库时,会将每一个线程的Connection放入各自的ThreadLocal中,从而保证每个线程都在各自的 Connection 上进行数据库的操作,避免A线程关闭了B线程的连接。1. ThreadLocal 可以实现【资源对象】的线程隔离,让每个线程各用各的【资源对象】,避免争用引发的线程安全问题。key 会被GC 释放内存,关联 value 的内存并不会释放。
2024-03-17 16:12:42
537
原创 Hadoop3.3.1 Windows环境配置
1.解压hadoop-3.3.1.tar.gz 到windows安装路径 D:\IdeaPro\hadoop-3.3.1。2.检查Windows jdk是否安装正常。3.下载winutils。
2023-05-04 17:04:28
1036
原创 Akka demo
1.服务端demopackage com.base.bucket.scalaimport akka.actor.{Actor, ActorRef, ActorSystem, Props}import com.typesafe.config.ConfigFactory/*** * 答疑机器人 */class SiriServer extends Actor{ override def receive: Receive = { case ClientMessage(msg) =
2022-01-07 11:09:36
2077
原创 支付系统-对账系统
在支付系统中,资金对账在对账中心进行,将系统保存的账务流水与银行返回的清算流水和清算文件进行对账,核对系统账务数据与银行清算数据的一致性,保证支付机构各备付金银行账户每日的预计发生额与实际发生额一致。一、清算对账系统 支付公司提供的所有金融服务是建立在银行资金体系之上的,支付公司账务系统内账户的资金都与其在银行的存款资金一一对应,为了保证真实的资金账户和虚拟账户的资金转换正确,支付公司必须及时与银行进行各类业务的资金核对,所有资金核对都依赖于银行的系统。1.1、资金流入与银行的对账...
2022-01-04 15:31:52
230
原创 SBT构建Scala项目
1.配置sbt环境变量 a. 解压sbt-1.5.5.zip 到D:\scala\ b. 配置环境变量c.配置sbtconfig在sbt/bin下有个sbt.bat,查看该bat文件。可以了解到该文件依赖于conf/sbtconfig.txt。在conf/sbtconfig.txt中添加:-Dfile.encoding=UTF8-Dsbt.boot.directory=d:/sbt_repo/boot/-Dsbt.ivy.home=d:/sbt_repo/&...
2021-11-16 16:04:37
969
转载 RDS MySQL读写分离如何确保数据读取的时效性
阿里云内部网络会确保同步日志在主实例和只读实例间的实时传输,正常情况下只读实例不会有延迟产生。但受限于MySQL本身的复制机制,若同步日志的应用时间较久,会产生数据同步的延迟,这个是MySQL尚无法在技术手段上规避的问题。为减小延迟,建议您的只读实例规格不小于主实例,从而确保有足够高的性能来应用同步日志。RDS支持用户设置延迟阈值,当某个只读实例的延迟超过该阈值时,系统会不再转发任何请求至该实例。当所有只读实例均超过延迟阈值时,请求直接路由到主库,不管主库的读权重是否开启。在使用读写分离过程中,若您
2021-11-16 11:33:59
339
原创 nexus 添加本地jar依赖POM
1.登录2.上传本地jar3.项目pom 添加私服仓库<repositories> <repository> <id>maven-ali</id> <url>http://maven.aliyun.com/nexus/content/groups/public//</url> <releases> <enabled>true</enabled> .
2021-11-15 17:29:36
675
原创 MySQL 有几种join其底层实现原理是什么?
MySQL只支持一种join算法:Nested-Loop Join(嵌套循环连接),但Nested-Loop Join有三种变种:1.Simple Nested-Loop Join:如下图,r为驱动表,s为匹配表,可以看到从r中分别取出r1、r2、......、rn去匹配s表的左右列,然后再合并数据,对s表进行了rn次访问,对数据库开销大2.Index Nested-Loop Join(索引嵌套):这个要求非驱动表(匹配表s)上有索引,可以通过索引来减少比较,加速查询。在查询时.
2021-11-04 10:03:35
154
原创 JAVA面试题(增强部分)
java大厂面试题进程和线程,区别,哪个效率高,为什么死锁的条件,如何解决java的基本数据类型和字节数mysqI索引结构,特点,为什么使用这个聚集索引和非聚集索引String,StringBuffer, StringBuilder区别HashMap,为什么使用红黑树垃圾回收机制GC, cms, G1,垃圾回收的算法字节二面部分考题:谈谈项目?子类和父类的实例变量和方法有什么区别重载和覆盖区别,返回值类型不同,可以重载吗,为什么java泛型悲观锁和乐观锁.
2021-10-20 15:37:59
256
原创 Nginx架构及基本数据结构分析
Nginx全程是什么?Nginx ("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。daemon守护线程 nginx在启动后,在unix系统中会以daemon的方式在后台运行,后台进程包含一个master进程和多个worker进程。 当然nginx也是支持多线程的方式的,只是我们主流的方式还是多进程的方式,也是nginx的默认方式。 master进程主要用来管理worker进程,包含:接收来自外界的信号...
2021-02-22 10:59:17
144
原创 Java类加载器 — classloader 的原理及应用
什么是classloaderclassloader顾名思义,即是类加载。虚拟机把描述类的数据从class字节码文件加载到内存,并对数据进行检验、转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。了解java的类加载机制,可以快速解决运行时的各种加载问题并快速定位其背后的本质原因,也是解决疑难杂症的利器。因此学好类加载原理也至关重要。▐classloader的加载过程类从被加载到虚拟机内存到被卸载,整个完整的生命周期包括:类加载、验证、准...
2021-02-22 10:51:41
588
原创 线程间到底共享了哪些进程资源
进程和线程这两个话题是程序员绕不开的,操作系统提供的这两个抽象概念实在是太重要了。关于进程和线程有一个极其经典的问题,那就是进程和线程的区别是什么?相信很多同学对答案似懂非懂。记住了不一定真懂关于这个问题有的同学可能已经“背得”滚瓜烂熟了:“进程是操作系统分配资源的单位,线程是调度的基本单位,线程之间共享进程资源”。可是你真的理解了上面最后一句话吗?到底线程之间共享了哪些进程资源,共享资源意味着什么?共享资源这种机制是如何实现的?对此如果你没有答案的话,那么这意味着你几乎很难写出能正确.
2021-01-14 16:57:06
396
原创 高并发场景下,到底先更新缓存还是先更新数据库
在大型系统中,为了减少数据库压力通常会引入缓存机制,一旦引入缓存又很容易造成缓存和数据库数据不一致,导致用户看到的是旧数据。为了减少数据不一致的情况,更新缓存和数据库的机制显得尤为重要,接下来带领大家踩踩坑。Cache asideCache aside也就是旁路缓存,是比较常用的缓存策略。(1)读请求常见流程Cache aside 读请求应用首先会判断缓存是否有该数据,缓存命中直接返回数据,缓存未命中即缓存穿透到数据库,从数据库查询数据然后回写到缓存中,最后返回数据给客户端。
2021-01-13 10:19:52
753
原创 MySQL主从延迟分析
主从常见架构一主多从、级联复制、多主一从,主主复制。主从复制原理对于主从来说,通常的操作是主库用来写入数据,从库用来读取数据。这样的好处是通过将读写压力分散开,避免了所有的请求都打在主库上。同时通过从库进行水平扩展使系统的伸缩性及负载能力也得到了很大的提升。但是问题就来了,读从库时的数据要与主库保持一致,那就需要主库的数据在写入后同步到从库中。如何保持主库与从库的数据一致性,主库又是通过什么样的方式将数据实时同步到从库的?MySQL中主从复制时有两个很重要的日志文件: bin.
2021-01-11 17:57:48
125
原创 Redis为什么是单线程,高并发快
Redis的高并发和快速原因1.redis是基于内存的,内存的读写速度非常快;2.redis是单线程的,省去了很多上下文切换线程的时间;3.redis使用多路复用技术,可以处理并发的连接。非阻塞IO 内部实现采用epoll,采用了epoll+自己实现的简单的事件框架。epoll中的读、写、关闭、连接都转化成了事件,然后利用epoll的多路复用特性,绝不在io上浪费一点时间。为什么Redis是单线程的1.官方答案因为Redis是基于内存的操作,CPU不是Redis的瓶颈,Redis的瓶
2020-10-12 14:19:55
260
原创 OkHttpClient 使用
1. pom依赖<dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>3.3.1</version></dependency>2.封装工具方法package com.base.core.util;import java.io.IOException;i
2020-10-10 17:27:56
1391
原创 JAXBContext单例+工厂模式避免频繁GC
1.JAXBContextFactory 工厂方法package com.bsd.assets.util;import java.util.Map;import java.util.concurrent.ConcurrentHashMap;import javax.xml.bind.JAXBContext;import javax.xml.bind.JAXBException;public class JAXBContextFactory { private static JAXBC
2020-10-10 16:03:23
411
原创 crontab 实现FTP上传 /下载(shell)加强版
1.centos7下安装使用lftpyum install -y lftp2.登录ftplftp 用户名:密码@ftp地址:传送端口(默认21)lftp xx:xx@172.27.20.60:213.基本命令使用ls 查看文件与改变目录cd 进入ftp 目录lcd 进入本地目录。在lftp终端中,前面带一个l的命令例如lcd,指的是local,就是在本机的操作,而对应的没有这个l的,都是对ftp site的操作。还有就是要执行本地终端命令,也可以用前面带一个!的方
2020-10-10 10:48:45
455
原创 RocketMQ事务消息
Message<String> msg = MessageBuilder .<String>withPayload(user.getName()) .setHeader(RocketMQHeaders.TRANSACTION_ID,UUID.randomUUID().toString()) .build(); TransactionSendResult sendResult = rocketMQTemplate.sendMessageInTransaction...
2020-08-26 17:36:53
181
1
原创 SpringMVC文件下载到本地
public ResponseEntity<byte[]> getContractFileV2(HttpServletRequest request, @PathVariable("orderCode") String orderCode) { byte[] cont = service.getContractFileV2(orderCode); HttpHeaders headers = new HttpHeaders(); headers....
2020-07-16 10:52:23
238
hadoop-3.3.1 windows + apache-hadoop-3.1.0-winutils-master.zip
2023-05-08
html select 下拉列表的问题js
2017-08-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人