风姿-懒人
码龄12年
关注
提问 私信
  • 博客:1,909
    社区:525
    问答:34,074
    36,508
    总访问量
  • 2
    原创
  • 975,759
    排名
  • 1
    粉丝
  • 0
    铁粉

个人简介:一直在深圳市懒人在线公司工作,从事工作8年。 跟随公司一起成长,从最开始的超级菜鸟,到现在还算入眼吧。见证了公司业务从无到有,在技术总监的带领下一起参与各种技术搭建引进等。 当前主要负责公司非懒人app的java业务:儿童,结算,声创,阅读等项目负责人。

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:湖南省
  • 加入CSDN时间: 2012-07-12
博客简介:

skyboertao的博客

查看详细资料
个人成就
  • 获得3次点赞
  • 内容获得0次评论
  • 获得4次收藏
创作历程
  • 2篇
    2020年
成就勋章
TA的专栏
  • mysql
    2篇
  • java
    2篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 搜索
    elasticsearch
  • 服务器
    linux
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

357人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

canal原理解析

目录1原理2.整体架构2.重点解释 2.1instance 2.2 server,client 集群关系和原理 2.3 spring配置文件区别上文已经介绍过canal的基本安装和使用,现在来看看canal的实现原理吧。1原理首先看一张图,这是canal官网上的mysql master-slave原理图。canal就是将自己伪装成slave,所以原理类似。1.Mysql-master 将数据变更保存到 二进制日志Binary lo...
原创
发布博客 2020.07.19 ·
1554 阅读 ·
3 点赞 ·
0 评论 ·
3 收藏

canal 入门介绍

1 canal简介 1.1 canal是什么 canal是阿里巴巴开源的一款 基于DB数据增量变更的日志解析工具,简单点就是能监控所有DB的变更操作。例如:你往一张表插入一条数据成功,如果你使用了canal,那么你在canal-client中就立马会知道有这么一条数据插入了。 1.2 canal有什么用 阿里巴巴最开始是用来作为跨机房数据同步的,但很多小伙伴可能会说这么高...
原创
发布博客 2020.07.19 ·
355 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

使用jenkins进行自动化部署到tomcat deploy-to 插件,未打印任务后续操作日志?

发布问题 2019.01.03 ·
1 回答

mysql导入报错问题,新库导入报错,

答:

你既然做每天自动导入一次数据,脚本自动化,那你就要做好表结构变更自动变。
就是要保证源库跟新库的表结构始终一致。要不然你解决了这个字段太长的问题,下次可能还有其他问题。

回答问题 2018.12.22

mysql查询字段里面的key对应的值

答:

为什么要这样查?你当前这个字段基本上相当一个文本存储了。如果你要提供条件查询,建议把这个字段独立成一张表进行重新设计。
如果你非要查 那可以模糊查询: select *(自己转成字段) from table where variables like ''%key="WebPassword"%;

回答问题 2018.12.22

为啥web.xml加了ContextLoaderListener页面就404了

答:

你不加这个那返回的是啥?加这个404 应该是找不到你请求的地址。看下你的地址映射是否正确哈。

回答问题 2018.12.22

#Java web#麻烦大佬帮我看一下,出现下面异常的问题是什么啊

答:

500 属于服务器异常。那应该就是你/Admin/admin.do?method=browseAdmin 这个请求中存在处理不正确的地方。可以把服务端异常日志输出来看下。

回答问题 2018.12.22

如何让一个线程读写完成以后再让另外一个线程可以读取

答:

1.使用读写锁
2.sychronized
3.使用线程安全的集合 concurrent等。
4.volatite关键字修饰集合内的值,然后对集合的写枷锁。(性能忧 类似concurrentHashMap 就是以这种原理在实现。)

回答问题 2018.12.21

java问题一个系统的操作日志怎么推送给另一个系统,有什么设计思路吗

答:

如果是两家不同的公司,自己写就好了。这个还是很简单的。
1.如果是推送的话,就写个aop 拦截到日志后直接http 调用接口推送给对方。
2.如果是拉取的话,可以自己存到db里面或者其他存储中都可以。每条日志生成一个id,然后对方第一次拉取给id=0,之后给以拉取的最大id来拉取更多的日志即可哈。

如果是一家公司,两个不同的系统可以使用消息中间件发送消息给对方。类似kafka之类的。

回答问题 2018.12.21

搭建canal 客户端代码 出现不监听数据库的变动的问题 是哪个环节有问题

答:

检查下你的canal配置 是否有设定对这个表的监控。

回答问题 2018.12.21

java web在进行管理员操作的时候,抛出了下面的异常,怎么解决啊

答:

根据报错看,你是缺少一个类。造成这种原因有2种:
1.你未导入Apache common lang jar包
2.你已经导入了这个jar包,但是你的版本不对,可能和其他版本存在冲突,如果是maven可以查看这个jar有多少个,然后排除一个。

回答问题 2018.12.21

Spring MVC 接收参数总是多一个逗号??

答:

直接先看后端提交。打开f12 看network 找到你提交的请求,看是否前端就多了个,号 spring mvc 不会给你自动增加。
假设前端未传递,可以检查下license 这个bean中的set方法是否有自定义多加个,号。

回答问题 2018.12.20

springboot启动时一直卡在Could not find key 'SERVER_address' in any property source

答:

你这是做什么?要自己读出配置文件吗? 可以直接使用@value进行读取哈。

回答问题 2018.12.20

mysql 一张超级大表,加字段很慢怎么办

答:

1.升级mysql5.7 在线ddl 可以了解下 https://blog.csdn.net/carry9148/article/details/52640440
2.5000万的表本身已经不正常了,如果是一个在线提供服务给用户的表,不会允许5000万的。一般6-8百万。这时候会进行分表。
3.分表后还有600-800 增加一个字段还需要1分钟,那么选择使用此表人数最少的时候,写一个自动执行脚本。类似凌晨3点。
4.加字段并不需要停止服务。

回答问题 2018.12.20

Error querying database. Cause: java.lang.NullPointerException

答:

像sqlmap存在转换问题。类似selectOne 未知,是否未对应上。把查询的sqlmap贴出来下。

回答问题 2018.12.20

mysql 单表数据行10亿

答:

必须分表。大概每张表600-800万数据性能会比较好。
针对频繁查询的创建索引,或者联合索引。
读写分离肯定也要做。
频繁的查询,修改,删除,还数据这么大,那些数据是否都真的有用哈?如果没用可以考虑垂直分表,把不用的数据丢一边去。
另外这么大数据可以考虑使用elasticsearch等搜索引擎来做查询。

回答问题 2018.12.19

java打jar包的问题 服务器找不到这个类

答:

https://www.cnblogs.com/dzblog/p/6913809.html 这里有解决方案

回答问题 2018.12.19

多个controller写到一个方法里会影响性能么?

答:

不建议这样使用。可读性太差,效验复杂,代码杂乱,容易出问题。
首先你这个接口得参数可以有无数种变化,假设你想写个接口文档给后面开发的人看,那太比较蛋疼。
其次,你不可能参数一过来就开始查询db,正常业务中,肯定要效验参数,然后有一些其他业务。这样的话你这个controller中的方法
会变的无限复杂,没有可读性。
另外假设你这个controller中有处理异常的地方。可能导致整个controller不可用,如果一个controller的话只会影响一个接口,
而你这相当全部,除非你就当做路由使用,但已经有路由了,又何必多此一举呢!

回答问题 2018.12.19

java ee#网上下载的javaweb项目怎么在myeclipse中使用啊,带mysql的

答:

可以截图上去看下用什么工具管理的项目。如果是maven的话 直接导入:导入(import)→搜索maven→existing maven project→选择你的项目即可
普通java项目可以:new → java project → 在user default local 去掉勾选,然后选择你的普通java项目即可

回答问题 2018.12.19

redis 客户端分片方案 升级为cluster官方方案

发布问题 2016.12.06 ·
1 回答
加载更多