mycat

【问题】mycat同步数据到zookeeper无法加载XmltoZkMain主类

左心房为你撑大大i 提交于 2020-12-07 17:58:27
问题 在配置好zookeeper后,输入了mycat/bin中的同步数据命令:init_zk_data.sh,出现如下问题。 问题探索 仔细看这个问题,set HOME_DIR下,第一行是Java8移除了对MaxPermSize的支持,只是个提醒,不用管,主要问题在第二行,找不到这个主类,那么就来找一下这个类,看是否存在。 路径:首先在lib下找到mycat的核心包: 打开它,按照错误提示中的路径找主类 可以看到,这个类是存在的。那么为什么错误提示找不到?最有可能的原因,就是路径有问题,回到命令的执行文件,打开它我们可以看到他的结构: 看完这个之后,有点思路了,pwd保存的是当前的路径,其后所使用的所有路径都是变量替代的,所以出现问题的矛头指向了pwd。我们来输出一下这个MYCAT_HOME: 问题原因出来了,在根目录下运行这个命令,他的MYCAT_HOME路径是根目录的上级目录,命令文件里复制路径那里就出问题了。因为这个主类包是在MYCAT的lib文件夹中的,它连lib都找不到,更不到主类了。 解决办法 研究到现在,解决办法也就有了,定位启动目录,在bin目录下启动: 总结 这篇博客存在的意义并不是这个问题解决起来有多难,而是发现问题了从什么地方去考虑。不要一有问题就直接粘贴到百度,多想想它为什么会出这样的错,多看日志,会成长的更快。 来源: oschina 链接: https:

分库分表方案

元气小坏坏 提交于 2020-11-27 02:29:28
阅读文本大概需要3分钟。 一、数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值。 在业务Service来看就是,可用数据库连接少甚至无连接可用。 接下来就可以想象了吧(并发量、吞吐量、崩溃)。 1、IO瓶颈 第一种: 磁盘读IO瓶颈,热点数据太多,数据库缓存放不下,每次查询时会产生大量的IO,降低查询速度 -> 分库和垂直分表 。 第二种: 网络IO瓶颈,请求的数据太多,网络带宽不够 -> 分库 。 2、CPU瓶颈 第一种: SQL问题,如SQL中包含join,group by,order by,非索引字段条件查询等,增加CPU运算的操作 -> SQL优化,建立合适的索引,在业务Service层进行业务计算。 第二种: 单表数据量太大,查询时扫描的行太多,SQL效率低,CPU率先出现瓶颈 -> 水平分表 。 二、分库分表 1、水平分库 1.概念: 以 字段 为依据,按照一定策略(hash、range等),将一个 库 中的数据拆分到多个 库 中。 2.结果: 每个 库 的 结构 都一样; 每个 库 的 数据 都不一样,没有交集; 所有 库 的 并集 是全量数据; 3.场景: 系统绝对并发量上来了,分表难以根本上解决问题,并且还没有明显的业务归属来垂直分库。 4.分析: 库多了

常用分库分表方案汇总

此生再无相见时 提交于 2020-11-26 03:36:48
来源:rrd.me/g9zP3 一、数据库瓶颈 不管是IO瓶颈,还是CPU瓶颈,最终都会导致数据库的活跃连接数增加,进而逼近甚至达到数据库可承载活跃连接数的阈值。在业务Service来看就是,可用数据库连接少甚至无连接可用。接下来就可以想象了吧(并发量、吞吐量、崩溃)。 1、IO瓶颈 第一种:磁盘读IO瓶颈,热点数据太多,数据库缓存放不下,每次查询时会产生大量的IO,降低查询速度 -> 分库和垂直分表。 第二种:网络IO瓶颈,请求的数据太多,网络带宽不够 -> 分库。 2、CPU瓶颈 第一种:SQL问题,如SQL中包含 join ,group by,order by,非索引字段条件查询等,增加CPU运算的操作 -> SQL优化,建立合适的索引,在业务Service层进行业务计算。 第二种:单表数据量太大,查询时扫描的行太多,SQL效率低,CPU率先出现瓶颈 -> 水平分表。 二、分库分表 1、水平分库 概念: 以字段为依据,按照一定策略(hash、range等),将一个库中的数据拆分到多个库中。 结果: 每个库的结构都一样; 每个库的数据都不一样,没有交集; 所有库的并集是全量数据; 场景: 系统绝对并发量上来了,分表难以根本上解决问题,并且还没有明显的业务归属来垂直分库。 分析: 库多了,io和cpu的压力自然可以成倍缓解。 2、水平分表 概念: 以字段为依据,按照一定策略

凭什么同窗好友Java开发都是三年,他能进大厂,工资还是我的双倍?

こ雲淡風輕ζ 提交于 2020-11-25 14:50:28
刚毕业的前三年,你会觉得自己是在学习,于是无牵无挂。但三年以后, 如果年龄和能力不匹配,你能进入 BAT、TMD 这样的大厂的机会实在渺茫。 最近入职的几个 Java 新人,都是刚毕业没几年,但技术水平完全不输工作了 7、8 年的人,薪资轻松“倒挂”老开发。 年轻人学习能力强,精力充沛,也能在公司比较稳定地干下去,公司愿意多给一些钱。 一批又一批名校学生毕业,一代又一代程序员在冒头。根据拉勾网的数据统计, 目前 90 后已经成为程序员主力,30 岁以上的程序员已经不到两成。 处处皆危机,时刻作准备 其实 35 岁危机,不是你一个人的危机,而是一代人的危机。 这个危机也许不只是 35 岁,比如企业裁员、比如疫情、比如房贷、车贷、子女贷、父母贷。 任何一次危机,都会成为压倒你的最后一根稻草。 但凡事预则立,不预则废。时刻做好准备,迎接挑战的人,是永远不会等到危机来临前,才开始行动的。只有持续学习,精进技术,才有勇气迎战危机并战胜它。 所以,趁着自己年轻,抓紧提升技术能力。当你的技术能力 > 你的年龄,你会发现这个世界是如此美好,薪资是如此着迷,生活将充满希望。 如何让自己的技术能力 > 年龄呢?作为一个年薪50万+的Java程序员应该要掌握的技术是哪些?—对标阿里P7 转发+关注我获取一套完整的架构进阶视频资料 学习文档 Java架构师筑基必备技能 并发编程 JVM性能调优

阿里首发“架构技术攻略”限时开源!程序员一定要尽快确立发展方向和路线!从基础到源码,让你在大厂一站到底!

与世无争的帅哥 提交于 2020-11-23 20:44:39
前言 作为一名程序员,尽早确定自己的发展方向和路线是非常重要的,架构师则是其中的方向之一。很多程序员,奋斗大半辈子,是为了让自己成为一名合格且优秀的架构师,但是成为架构师并非一件易事,它对于技术方面的要求也是非常高的。 当然,大厂架构师更为值钱,那么想要进大厂做架构师,需要学习哪些技术呢?可能现在的你还比较迷茫,但实际上现在市面上有不少现成的架构技术路线,跟着路线学习起来则是非常容易的!今天要分享的,是看着一般,但读过之后会觉得真香的“架构技术攻略”,这套攻略由阿里技术官亲自推荐,从基础到源码,让你在大厂一站到底! 这套“Java架构技术攻略”包含A、B、C三个主题: A:性能直线提升架构技术 B:高效存储让项目起飞 C:设计思想解读开源框架 文章内容有限,不可能将这套攻略全部写出来,完整pdf版的架构攻略,扫下方二维码或添加下助理vx:YDT737 即可免费领取。 A.性能直线提升架构技术 1.Zookeeper 基础(入门+安装及应用+指令速解) 进阶(原生客户端解析+zkclient应用+curtor快速开发) 实战(集群选举+分布式) zk高级技能(底层+拜占庭将军问题+Paxos+解读Raft算法) 2.Nginx 基础(安装及使用+实现Nginx分流) 进阶(Nginx进程模型及配置详解+location规则+rewrite解析) 实战(动静分离,反向代理及跨域

mysql跨库查询

只愿长相守 提交于 2020-11-21 09:37:13
1. 若是不同服务不同库需要: 查看Federated引擎是否开启 mysql查询窗口输入指令:show engines 如果有FEDERATED引擎,但Support是NO,说明你的mysql安装了这个引擎,但没启用,去MySQL安装录下找到配置文件my.ini,在[mysqld]字段()文件末)添加一行federated ,重启mysql即可。 2.mycat等中间件 3.在同一个mysql服务器上的库,可以用sql 来制定库名查询 来源: oschina 链接: https://my.oschina.net/u/115867/blog/3050876

再见,MySQL!

与世无争的帅哥 提交于 2020-11-10 06:42:41
MySQL 作为主流的数据库,是各大厂面试官百问不厌的知识点,但是需要了解到什么程度呢?仅仅停留在 建库、创表、增删查改等基本操作的水平可不够。在面试后端开发的时候,一连几个问题,简直会被问到一脸懵逼。 MySQL 语句怎么优化?分库,分表都适合哪些场景?讲讲 InnoDB 如何使用 B+ 树存储的? 一般来说,准备 MySQL 面试 ,无非要从这几块进行准备: 查询、存储、事务、锁和性能调优 。不少朋友苦于搜集资料耗时耗力,很难 cover 住面试官的考核角度。为了能让大家在准备面试时少走弯路,这里特别推荐一个限时福利——开课吧历时三个月打造的 MySQL 实战训练营 内容对本公众号免费开放 5 天。 本次训练营的讲师都源于国内知名互联网公司,花费了近三个月的时间,调研精选各大厂 MySQL 面试题的主流考点,经过多次迭代,最终形成了这套课程内容来帮助正在求职的同学们。听下来,你可以: 收获完整的 MySQL 学习路径 针对实际场景分析数据库问题,进行性能调优 吸收业界专家的经验分享,加速 MySQL 技能进阶 加深 MySQL 底层和核心技术的理解 轻松应对面试中 MySQL 问题 导师将结合多年从事推荐系统、搜索引擎、大数据开发等业务经验,从工作中的应用场景出发,引入相关概念和原理剖析,然后分析各种方案的利弊,最后总结和答疑。训练营主要分为三大部分: 索引原理以及优化

Mycat搭建

本小妞迷上赌 提交于 2020-11-08 20:56:33
进入Mycat 官网, 点击 点击 点击下载Linux版本 上传至服务器并解压, tar -zxvf Mycat-server-1.6.7.3-release-20190927161129-linux.tar.gz 进入config目录, 修改配置server.xml配置文件 cd mycat/conf/ vim server.xml 可以修改账户密码, 以及修改为自己需要访问的数据库名 修改schema.xml的配置: vim schema.xml 上图中用到的路由规则,如果对应表的主键不是id,或者不存在该路由规则, 需要在rule.xml进行更改 进入mycat的bin目录下进行启动 // 后台启动 ./mycat start // 控制台启动 ./mycat console 来源: oschina 链接: https://my.oschina.net/u/2954646/blog/4708323

公布半小时下载量达10W:阿里大牛出品【MyCat笔记】真香

泪湿孤枕 提交于 2020-11-06 08:50:35
前言 如今随着互联网的发展,数据的量级也是成指数式的增长,从GB到TB到PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求,这个时候NoSQL的出现暂时解决了这一危机。它通过降低数据的安全性,减少对事务的支持,减少对复杂查询的支持,来获取性能上的提升。 但是,在有些场合NoSQL一些折衷是无法满足使用场景的,就比如有些使用场景是绝对要有事务与安全指标的。这个时候NoSQL肯定是无法满足的,所以还是需要使用关系性数据库。如何使用关系型数据库解决海量存储的问题呢? 此时就需要做数据库集群,为了提高查询性能将一个数据库的数据分散到不同的数据库中存储,为应对此问题就出现了——MyCat 。 在前不久,我偶然翻到了一个MyCat笔记,那是我向一个阿里大神求得的。 笔记比较详细的介绍了他对于MyCat的理解,结合了实战进行分析讲解。 对MyCat感兴趣的朋友可以拿去看看。 下面将这份文档的内容以图片的形式展现出来,但篇幅有限只能展示部分,如果你需要**“高清完整的pdf版” ,可以直接 点击「 MyCat 」备注:CSDN** 即可免费领取。 这份笔记从:MyCat简介→MyCat入门→MyCat配置文件详解→MyCat分片→MyCat高级→MyCat高可用集群搭建→MyCat架构剖析→MyCat综合案例 进行了详细的分析讲解。 MyCat 简介

2006-京淘Day11

萝らか妹 提交于 2020-11-02 17:16:17
1.关于tomcat服务器脚本 1.1 问题说明 如果通过命令: java -jar xxx.war 的方式启动服务器时,如果远程的终端关闭之后,那么tomcat服务器也会随之关闭.影响用户的使用. 上述的命令 表示前台运行. 1.2 线上部署的命令 说明: 一般在Linux系统中部署服务器 一般采用后端运行的方式 启动tomcat服务器.并且指定日志文件输出. 命令: nohup java -jar 8081.war -> 8081.log & 1.3 关于文件查看的说明 cat 输出文件所有的内容 more 输出文档所有的内容,分页输出,空格浏览下一屏,q退出 less 用法和more相同,只是通过PgUp、PgOn键来控制 q退出 tail 用于显示文件后几号,使用频繁 tail -10 nginx.conf 查看nginx.conf的最后10行 tail –f nginx.conf 动态查看日志,方便查看日志新增的信息 ctrl+c 结束查看 1.4 Linux 脚本说明 说明: Linux中的"脚本"(外挂-荒野行动)的后缀为.sh 创建文件: vim start.sh 执行脚本: 2 数据库代理说明 2.1 数据库结构的优化 说明:由于需要用户同时链接2台甚至多台数据库时需要引入代理,所以有如下的部署. 注意事项: 用户链接代理服务器 端口号一般:8066端口 2.2