- 博客(127)
- 资源 (28)
- 收藏
- 关注
原创 Hadoop伪分布式集群搭建(二)
修改3个配置文件:core-site.xml(Hadoop集群的特性,作用于全部进程及客户端)、hdfs-site.xml(配置HDFS集群的工作属性)、mapred-site.xml(配置MapReduce集群的属性)-修改3个配置文件:core-site.xml、hdfs-site.xml、mapred-site.xml,指定NameNode和JobTraker的位置和端口,设置文件的副本等参数。使用当前的用户启动相关进程,对于opt目录,当前用户得有读写权限,对于/data目录也需要读写权限。
2024-07-30 11:35:01
995
原创 Hadoop(四)HDFS集群详解
1)HDFS集群分为两大角色:NameNode、DataNode2)NameNode负责管理整个文件系统的元数据3)DataNode负责管理用户的文件数据块4)文件会按照固定的大小(blocksize)切成若干块后分布式存储在若干台datanode上5)每一个文件块可以有多个副本,并存放在不同的datanode上6)DataNode会定期向NameNode汇报自身保存的block信息,而namenode则会负责保持文件的副本数量。
2024-07-30 11:31:52
853
原创 MySQL主从同步
执行完此步骤后不要再操作主服务器MYSQL,防止主服务器状态值变化。在主机中执行以下SQL,在从机中查看数据库、表和数据是否已经被同步。slave会从master读取binlog来进行数据同步。错误日志,根据日志中显示的错误信息在网上搜索解决方案即可。下面两个参数都是Yes,则说明主从配置成功!需要的时候,可以使用如下SQL语句。启动主从同步后,常见错误是。的情况,此时查看下方的。,防止主服务器状态值变化。上执行以下SQL操作。
2024-07-11 10:15:07
722
原创 MySQL三大日志binlog、redo log和undo log
redo log(重做日志)是InnoDB存储引擎独有的,它让MySQL拥有了崩溃恢复能力。比如MySQL实例挂了或宕机了,重启时,InnoDB存储引擎会使用redo log恢复数据,保证数据的持久性与完整性。MySQL中数据是以页为单位,你查询一条记录,会从硬盘把一页的数据加载出来,加载出来的数据叫数据页,会放入到中。后续的查询都是先从中找,没有命中再去硬盘加载,减少硬盘IO开销,提升性能。更新表数据的时候,也是如此,发现里存在要更新的数据,就直接在里更新。
2024-07-04 17:23:29
770
原创 智能编码助手TONGYI Lingma
1. 简介 通义灵码,是阿里云出品的一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码注释生成、代码解释、研发智能问答、异常报错排查等能力,并针对阿里云 SDK/OpenAPI 的使用场景调优,助力开发者高效、流畅的编码。2.功能介绍详见:通义灵码产品介绍_智能编码助手_AI编程_云效(Apsara Devops)-阿里云帮助中心(1)打开IDEA,File-->Settings-->Plugins,切换到Marketplace选项卡下,输入“
2024-05-24 14:44:12
1730
原创 Mysql查询优化
一个好的web应用,最重要的一点是有着优秀的访问性能。数据库MySQL是web应用的组成部分,也是决定其性能的重要部分。所以提升MySQL的性能至关重要。MySQL性能的提升可分为三部分,包括硬件、网络、软件。其中硬件、网络取决于公司的财力,需要白哗哗的银两,这里就不说啦。软件又细分为很多种,在这里我们通过MySQL的查询优化从而达到性能的提升。最近看了一些关于查询优化的书籍,同时也在网上看一些前辈们写的文章。
2024-04-26 20:17:31
792
原创 MySQL 高可用:mysql+mycat实现数据库分片(分库分表)
- 设置表的存储方式.schema name="TESTDB" 与 server.xml中的 TESTDB 设置一致 -->-- mycat 逻辑主机dataHost对应的物理主机.其中也设置对应的mysql登陆信息 -->-- 设置dataNode 对应的数据库,及 mycat 连接的地址dataHost -->#访问 mycat (凭据参考 /usr/local/mycat/conf/server.xml)-- 任意设置登陆 mycat 的用户名,密码,数据库 -->
2024-04-26 20:12:49
1290
原创 MySQL下载与安装
4.配置完环境变量之后,在F:\mysql\mysql-5.7.24-winx64\mysql-5.7.24-winx64目录下新增加一个配置文件mysql.ini ,同时在bin的同级目录下创建一个data文件夹(用于存放数据库数据)修改密码(必须先启动mysql),执行如下命令回车,enter password也回车,密码一般设置为root123,方便记忆。启动服务,输入如下命令 net start mysql ,回车,启动成功后如下图。3.我的电脑->属性->高级->环境变量。
2024-04-26 20:02:09
519
原创 分布式ID大型互联网公司方案总结
ID是数据的唯一标识,传统的做法是利用UUID和数据库的自增ID,在互联网企业中,大部分公司使用的都是Mysql,并且因为需要事务支持,所以通常会使用Innodb存储引擎,UUID太长以及无序,所以并不适合在Innodb中来作为主键,自增ID比较合适,但是随着公司的业务发展,数据量将越来越大,需要对数据进行分表,而分表后,每个表中的数据都会按自己的节奏进行自增,很有可能出现ID冲突。这时就需要一个单独的机制来负责生成唯一ID,生成出来的ID也可以叫做分布式ID,或全局ID。下面来分析各个生成分布式ID的机制
2021-01-22 14:13:21
183
原创 Java中的锁原理、锁优化、CAS、AQS详解
无锁、偏向锁、轻量级锁、重量级锁,这四种锁状态分别代表什么,为什么会有锁升级?其实在 JDK 1.6之前,synchronized 还是一个重量级锁,是一个效率比较低下的锁,但是在JDK 1.6后,Jvm为了提高锁的获取与释放效率对()进行了优化,引入了偏向锁 和 轻量级锁,从此以后锁的状态就有了四种(无锁、偏向锁、轻量级锁、重量级锁),并且四种状态会随着竞争的情况逐渐升级,而且是不可逆的过程,即不可降级,也就是说只能进行锁升级(从低级别到高级别),不能锁降级(高级别到低级别)
2020-12-22 11:42:29
855
1
转载 JVM性能优化 (一) 初识JVM
一、我们为什么要对JVM做优化在本地开发环境中我们很少会遇到需要对JVM进行优化的需求,但是到了生产环境,我们可能会有下面的需求:运行的应用“卡住了”,日志不输出,程序没有反应 服务器的CPU负载突然升高 在多线程应用下,如何分配线程的数量?本次使用的JDK版本为1.8二、JVM的运行参数在jvm中有很多的参数可以进行设置,这样可以让jvm在各种环境中都能够高效的运行,绝大部分的参数保持默认即可。2.1 三种参数类型jvm的参数类型分为三类,分别是: 标准参数 -
2020-12-16 13:06:39
291
原创 MyBatis中#{}和${}的区别
一、在MyBatis 的映射配置文件中,动态传递参数有两种方式:#{}占位符${}拼接符二、#{}和${}的区别区别1、1)#{}为参数占位符?,即sql 预编译2)${}为字符串替换,即sql 拼接区别2、1)#{}:动态解析 ->预编译-> 执行2)${}:动态解析 ->编译-> 执行区别3、1)#{}的变量替换是在DBMS中2)${}的变量替换是在DBMS外区别4、1)变量替...
2020-10-29 12:19:38
249
原创 SpringBoot读写分离与事务dynamic-datasource
因为在Spring管理下, 获取到数据库连接后, 会和当前线程进行绑定, 如果后面的方法被判断为不需要新建连接, 则复用之前与线程绑定的连接, 那么即使有。可以发现框架是通过维护一个栈结构进行对应数据源的切换, 类似方法的栈, 因为方法间可能嵌套调用, 所以使用此结构便于管理。注解即可切换数据源,在被DS注解标记的方法上, 会被此拦截器拦截, 获取到注解上定义的值, 并存入栈结构中。该方法也会进行事务管理, 但功能比较简陋。贴心的是, 框架还与Seata进行了整合。的功能: 解决多数据源的事务问题.
2020-04-13 21:46:16
1129
1
原创 MySQL Explain执行过程
MySQL Explain执行过程-- 查看SQL执行过程,前面加上explain即可explain select * from table_name where 条件;expain查询出来的信息有12列,分别是id、select_type、table、partitions、type、possible_keys、key、key_len、ref、rows、filtered、Extra...
2019-12-06 16:09:25
481
原创 IDEA中SpringBoot与JSP整合路径正确找不到JSP页面
IDEA 2017.3 版本运行项目,项目能正常运行,但是使用Debug时,出现 java.lang.NoClassDefFoundError: com/intellij/rt/debugger/agent/CaptureStorage 这个问题。在IDEA中SpringBoot与JSP整合,项目启动后找不到jsp页面,但是在eclipse中是正常的,网上说的jar的作用域问题都不行,最后终于找到问题所在。3、IDEA中将WEB-INF\lib下的Jar包添加到项目中。2.1、没有解决之前报404。
2019-11-26 10:47:49
1544
原创 Memory Analyzer Tool MAT内存分析
1 安装MATMAT是有两种安装方式的,这一点与其他eclipse插件略有不同。一种安装方式是将MAT当做eclipse的插件进行安装:启动Eclipse --> Help --> Eclipse Marketplace,然后搜索Memory Analyzer,安装,重启eclipse即可。另外一种安装方式是将MAT作为一个独立的软件进行安装:去官网http://www.e...
2019-10-30 19:12:48
616
原创 Linux top命令的用法详解
一、top中一些字段的含义:VIRT:virtual memory usage 虚拟内存1、进程“需要的”虚拟内存大小,包括进程使用的库、代码、数据等2、假如进程申请100m的内存,但实际只使用了10m,那么它会增长100m,而不是实际的使用量RES:resident memory usage 常驻内存1、进程当前使用的内存大小,但不包括swap out2、包含其他进程的共享3、...
2019-10-29 15:30:12
385
原创 windows环境搭建Vue开发环境安装
windows环境搭建Vue开发环境安装一、安装node.js(http://nodejs.cn/download/)下载完毕后,可以安装node,建议不要安装在系统盘(如C:)。二、设置nodejs prefix(全局)和cache(缓存)路径(可以不设置)1、在nodejs安装路径下,新建node_global和node_cache两个文件夹2、设置缓存文件夹...
2019-04-15 15:52:59
358
原创 Docker使用
一、CentOS Docker 安装Docker支持以下的CentOS版本:CentOS 7 (64-bit)CentOS 6.5 (64-bit) 或更高的版本前提条件目前,CentOS 仅发行版本中的内核支持 Docker。Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。Docker 运行在 CentOS-6.5 或更高的版本的 Ce...
2019-01-22 16:56:58
153
原创 Linux下Rabbitmq安装及配置
rabbitMq是erlang编写的,安装mq前先安装erlang一、Erlang的安装yum:erlang下载wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm rpm -Uvh erlang-solutions-1.0-1.noarch.rpmerlang安装yum insta...
2019-01-18 20:49:51
4997
原创 Spring Cloud Sleuth+Zipkin
二、SpringBoot 2.X整合Sleuth+Zipkin在微服务系统中,各个服务之间的调用关系比较复杂。一个 HTTP 请求可能会调用多个不同的微服务来处理,在调用过程中可能因为某个服务异常(网络延迟过高或发送错误)导致请求失败,所有需要有服务追踪来监控,方便快速定位问题点。Spring Cloud Sleuth 提供了分布式服务链路监控的解决方案。1、简介Zipkin(是Twitt...
2019-01-18 18:30:47
2219
原创 Spring Cloud Gateway
1、Spring Cloud Gateway1.1、简介Spring Cloud Gateway是Spring Cloud官方推出的第二代网关框架,功能上比Zuul更加强大,性能也更好,随着Spring Cloud的版本迭代,官方有用Gateway取代Zuul网关的趋势。网关作为一个系统的流量的入口,有着举足轻重的作用,大致功能如下:路由转发、协议转换流量聚合,对流量进行监控,日志输出限...
2019-01-12 16:43:53
1206
原创 一、服务的注册与发现Eureka
一、Spring Cloud简介Spring Boot版本2.1.1.RELEASE,Spring Cloud版本为Greenwich.RC2。Greenwich版本的官方文档如下:http://cloud.spring.io/spring-cloud-static/Greenwich.RC2/single/spring-cloud.htmlSpring Cloud为开发人员提供了快速构建分...
2019-01-09 20:55:36
239
原创 SpringBoot @DS注解 和 DynamicDataSource自定义实现多数据源的2种方式
最后,通过自定义注解@DataSource(value = DataSourceType.ORACLE)来标记需要切换数据源的方法或类,利用AOP切面编程,在方法执行前根据注解值设置当前线程的数据源类型,从而实现动态数据源切换的功能。在实际的项目中,会遇到需要操作多个数据源的情况,SpringBoot为我们提供了多种实现多数据源的方式。数据源切换: 在需要访问数据库的地方,根据路由策略选择合适的数据源,并将该数据源设置为当前线程的数据源上下文中,以确保后续的数据库操作都使用选定的数据源。
2018-12-06 11:08:05
658
1
原创 CentOS6-HAProxy安装与配置
1、Haproxy下载地址(下载1.7.9版本):http://www.haproxy.org/ 2、将haproxy-1.7.9.tar.gz上传至Centos下 3、安装<span style="color:#000000">yum install -y gcc #安装gcc(CentOS没有安装gcc则需要先安装gcc,安装过gcc则忽略)tar zxvf hapro...
2018-11-29 14:14:57
1173
1
原创 Kafka环境的搭建(Windows)
1、安装JDK2、安装Zookeeper Kafka的运行依赖于Zookeeper,所以在运行Kafka之前我们需要安装并运行Zookeeper 2.1、下载安装文件(zookeeper-3.4.9): http://mirror.bit.edu.cn/apache/zookeeper/ 2.2、解压zookeeper-3.4.9(解压到 E:\develop\Kafka\zookee...
2018-11-29 14:11:51
225
原创 Eclipse插件安装
eclipse的插件安装有3种方式。一、通过eclipse的SoftwareUpdates / Find and install... search for new features... 的二、下载插件文件,将其解压缩到eclpise对应的目录中。三、links文件方式。在eclipse目录中新建links目录。【推荐】第三种方式采用了无入侵的插件安装方式我们SVN为例采用第三种方...
2018-11-29 13:49:00
400
原创 HttpClient4.5 简单入门实例(一)
一、所需要的jar包 httpclient-4.5.jar httpcore-4.4.1.jar httpmime-4.5.jar二、实例package cn.tzz.apache.httpclient;import java.io.File;import java.io.IOException;import java.net.URL;import j...
2018-11-29 12:31:26
1447
原创 Sharding-JDBC读写分离
对于同一时刻有大量并发读操作和较少写操作类型的应用系统来说,将数据库拆分为主库和从库,主库负责处理事务性的增删改操作,从库负责处理查询操作,能够有效的避免由数据更新导致的行锁,使得整个系统的查询性能得到极大的改善。使用多主多从的方式,不但能够提升系统的吞吐量,还能够提升系统的可用性,可以达到在任何一个数据库宕机,甚至磁盘物理损坏的情况下仍然不影响系统的正常运行。在主从复制中数据在主节点写入从节点读出,主从节点数据同步可能存在一定的延时,这导致主节点和从节点的数据不一致。配置一个主节点,两个从节点。
2018-11-28 23:17:31
520
原创 JavaWeb开发中防止表单重复提交
第一种方式:可以在客户端利用Javascript对表单重复提交作验证,主要实现手段是在这个表单触发表单提交事件的时候调用一个Javascript编写的函数,这个函数:<script>var isCommitted = false;function checkPost(){if(!isCommitted){ isCommitted = true;...
2018-11-28 23:17:14
347
原创 设计 REST 风格的 MVC 框架
简介: 传统的 JavaEE MVC 框架如 Struts 等都是基于 Action 设计的后缀式映射,然而,流行的 Web 趋势是 REST 风格的架构。尽管使用 Filter 或者 Apache mod_rewrite 能够通过 URL 重写实现 REST 风格的 URL,为什么不直接设计一个全新的 REST 风格的 MVC 框架呢?本文将讲述如何从头设计一个基于 REST 风格的 Java ...
2018-11-28 23:16:57
141
原创 log4j日志配置
1、配置根Logger:log4j.rootLogger = [ level ] , appenderName, appenderName2level:日志的级别,指定这条日志信息的重要性。分为ALL < DEBUG < INFO < WARN 一般常用的为 DEBUG , INFO ,WARN ,ERROR四种,分别对应Logger类的四种方法debug(Object ...
2018-11-28 23:16:20
154
原创 CentOS 搭建JDK环境
1、下载JDK1.8 2、将下载好的jdk包通过ssh上传到centos操作系统 3、解压安装包tar -vxzf jdk-8u151-linux-x64.tar.gz4、编辑系统环境变量vi /etc/profile并在文件最后添加:export JAVA_HOME=/usr/java/jdk8/jdk1.8.0_151 export PATH=$...
2018-11-27 20:23:27
153
原创 Linux常用命令
系统信息arch 显示机器的处理器架构(1)uname -m 显示机器的处理器架构(2)uname -r 显示正在使用的内核版本dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)hdparm -i /dev/hda 罗列一个磁盘的架构特性hdparm -tT /dev/sda 在磁盘上执行测试性读取操作cat /proc/cpuinfo 显示C...
2018-11-27 20:23:17
323
原创 Eclipse关联GitHub实现版本控制
1、检查Eclipse中是否已安装Git插件,菜单栏Help -> About Eclipse,查看是否有Git插件的图标。 2、现在的Eclipse下载后一般都提供Git插件了,若是没有Git插件,可使用菜单栏Help -> Install New Software...,在Work with中输入http://download.eclipse.org/egit/upda...
2018-11-26 20:59:14
332
原创 Eclipse下svn的创建分支/合并/切换使用
在svn主干上创建分支,用分支来进行程序的bug修改,而主干上进行新功能的开发。分支上的bug修改完,发布后,可以合并到主干上。项目程序可以在主干和分支之间进行切换,来实现主干和分支的同时维护。1.创建分支创建分支实际上就是将程序copy一份到指定的分支目录,如下图示:在项目名称上点击右键,弹出菜单,选择“Team”,再选择“Branch/Tag”,弹出下面的页面: 上图...
2018-11-26 20:58:27
639
原创 EhCache 整合Spring 使用页面缓存
Ehcache对质页面、对象、数据缓存,同时支持集群/分布式缓存。整合Spring、Hibernate也非常的简单,spring对Ehcache的支持也非常好。EHCache支持内存和磁盘的缓存,支持LRU、LFU和FIFO多种淘汰算法,支持分布式的Cache,可以作为Hibernate的缓存插件。同时它也能提供基于Filter的Cache,该Filter可以缓存响应的内容并采用Gzi...
2018-11-26 20:55:56
187
原创 Redis+Sentinel集群安装与配置
1、安装环境集群机器 redis服务 哨兵(sentinel) 描述虚拟机:10.202.107.207 redis服务端口6379 sentinel服务端口26379 主节点虚拟机:10...
2018-11-26 20:55:36
381
原创 Redis+Jedis简单应用
一、jedis的简单应用1、导入jar包(jedis-2.3.0.jar)2、实例package cn.tzz.redis.simple;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import org.junit.Before...
2018-11-26 20:55:27
134
原创 Redis安装
1、安装1.1、Window 安装下载地址:https://github.com/dmajkic/redis/downloads。下载到的Redis支持32bit和64bit。根据自己实际情况选择打开一个cmd窗口 使用cd命令切换目录到 E:\sf-work\JAR\redis\32bit 运行 redis-server.exe redis.conf 。运行之后,会显示如下界...
2018-11-23 12:22:40
275
1
FusionCharts数据库实例
2012-12-07
java工厂系列设计模式源码与文档
2011-08-24
commons-fileupload-1.2.1
2011-03-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人