work hard work smart

专注于Java后端开发。 不断总结,举一反三。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 59 下一页

2020年11月10日

摘要: 1、垂直切分 按业务去区分,每一种业务一个数据库,不同的业务之间禁止join联查 例如:业务库切分为订单库和商品库 优点: 拆分后业务清晰、拆分规则明确 系统之间容易扩展和整合 数据维护简单 缺点: 部分业务表无法join,只能通过接口调用,提升了系统的复杂度。 夸库事务难以处理 垂直切分后,某些业 阅读全文

posted @ 2020-11-10 16:43 work hard work smart 阅读(136) 评论(0) 推荐(0)

2020年9月27日

摘要: Sonar主要作用 检查代码是否遵循编程标准:如命名规范,编写的规范等检查设计存在的潜在缺陷:SonarQube通过插件Findbugs、Checkstyle等工具检测代码存在的缺陷检测代码的重复代码量:SonarQube可以展示项目中存在大量复制粘贴的代码检测代码中注释的程度:源码注释过多或者太少 阅读全文

posted @ 2020-09-27 13:53 work hard work smart 阅读(243) 评论(0) 推荐(0)

2020年8月1日

摘要: 1、主备模式: 实现RabbitMQ的高可用集群,一般在并发和数据量不高的情况下,这种模型非常的好用且简单。主备模式也称之为Warren模式 主备模式架构图 HaProxy配置 备注: rabbitmq集群节点配置 inter 每隔5秒对mq集群做健康检查, 2次正确证明服务器可用, 2次失败证明服 阅读全文

posted @ 2020-08-01 14:08 work hard work smart 阅读(320) 评论(0) 推荐(0)

摘要: 一、创建生产者服务 1、创建生产者服务 rabbit-producer spring boot版本为 2.1.16.RELEASE 2、pom.xml 引入spring-boot-starter-amqp <dependencies> <dependency> <groupId>org.spring 阅读全文

posted @ 2020-08-01 11:19 work hard work smart 阅读(235) 评论(0) 推荐(0)

摘要: 1、在海量订单产生的业务高峰期,如何避免消息的重复消费问题? 消费端实现幂等性: 即消费端永远不会消费多次,即使收到了多条一样的消息。 2、业界主流幂等性操作 唯一ID + 指纹码机制,利用数据主键去重 利用Redis的原子性去实现 1) 唯一ID + 指纹码机制 唯一ID + 指纹码机制,利用数据 阅读全文

posted @ 2020-08-01 11:09 work hard work smart 阅读(6172) 评论(0) 推荐(0)

2020年7月29日

摘要: 一、消息如何保障100%的投递成功 1、什么是生成端的可靠性投递 保障消息的成功发出 保障MQ节点的成功接收 发送端收到MQ节点(Broker)确认应答 完善的消息进行补偿机制 方案1: 消息信息入库,对消息状态进行标记 BIZ DB: 业务DB MSG DB: 消息DB 这两个DB可以放在一个DB 阅读全文

posted @ 2020-07-29 15:40 work hard work smart 阅读(425) 评论(0) 推荐(0)

摘要: 使用腾讯云服务器 Linux Centos版本为: CentOS Linux release 7.5.1804 1、安装基础软件包 yum install build-essential openssl openssl-devel unixODBC unixODBC-devel make gcc g 阅读全文

posted @ 2020-07-29 14:21 work hard work smart 阅读(170) 评论(0) 推荐(0)

2020年7月20日

摘要: 1、将MySql中修改的数据同步到ES中 修改mysql中的数据 logstash中看到日志,修改的数据已经同步。 查看elasticsearch的数据 可以看到,ES中已经同步了MySql中的数据修改。 补充问题: 1、Logstash时间不是标准时间 2、Logstash与数据库时间相差8小时 阅读全文

posted @ 2020-07-20 10:53 work hard work smart 阅读(289) 评论(0) 推荐(0)

2020年7月19日

摘要: 1、准备: 1) 启动前面搭建的ES集群, 192.168.127.130, 192.168.127.128, 192.168.127.129 2) 准备要同步的数据库和数据 数据库所在的服务器IP为192.168.1.104 数据库端口为3306 数据库名shop,表名items items的表结 阅读全文

posted @ 2020-07-19 21:14 work hard work smart 阅读(325) 评论(0) 推荐(0)

2020年7月18日

摘要: 1、ES写操作原理(增加,修改,删除) 2、文档的读原理 阅读全文

posted @ 2020-07-18 22:36 work hard work smart 阅读(223) 评论(0) 推荐(0)

摘要: 1、什么是脑裂 如果服务器网络中断或者服务器宏机,那么集群会有可能被划分为两个部分,各自与自己的master来管理,这就是脑裂。 假设ES集群,刚开始服务器1是主节点,其它两台为从节点 然后假设Master受到影响,挂机了。此时假设服务器2成为主节点,服务器2和服务器3成为一个新的集群。 接着服务器 阅读全文

posted @ 2020-07-18 22:28 work hard work smart 阅读(794) 评论(0) 推荐(0)

摘要: 1、es-node1是五角星,代表是主节点。圆圈代表从节点 2、创建索引 粗体的正方形代表主分片。 3、集群宏机测试 1) 停掉node-2 IP为128结尾 集群健康值变成黄色 然后Node-2恢复, 集群健康值变成绿色 2) 停掉IP130结尾 es-node1 主节点 这里node-3选为了主 阅读全文

posted @ 2020-07-18 22:06 work hard work smart 阅读(200) 评论(0) 推荐(0)

摘要: 1、ElasticSearch集群 单机ES可以用,但是一旦Down机,将导致ES不可用。这时候可以考虑ES集群,两台以上的ES就可以搭建集群。 主分片和副本分片不能分布在同一个服务器中,否则一个服务器宏机,该分片就没了 2、集群的安装 三台服务器的IP 192.168.127.130 (之前使用的 阅读全文

posted @ 2020-07-18 21:38 work hard work smart 阅读(202) 评论(0) 推荐(0)

摘要: 1、什么是深度分页 深度分页其实就是搜索的深浅度,比如第1页,第2页,第10页,第20页,是比较浅的;第10000页,第20000页就是很深了。 假设我们要搜索9999到10009的10条数据 假设shard数有3个,每个shard有10万条数据 如此一来,搜索得太深,就会造成性能问题,会消耗内存和 阅读全文

posted @ 2020-07-18 16:53 work hard work smart 阅读(650) 评论(0) 推荐(0)

摘要: 1、准备数据 1) 创建索引 2) 创建mapping JSON数据如下 { "properties": { "id": { "type": "long" }, "age": { "type": "integer" }, "username": { "type": "keyword" }, "nic 阅读全文

posted @ 2020-07-18 12:39 work hard work smart 阅读(239) 评论(0) 推荐(0)

2020年7月17日

摘要: 一、建立ik中文分词器 1、下载ik中文分词器 进入https://github.com/medcl/elasticsearch-analysis-ik 使用第一种方式安装,进入https://github.com/medcl/elasticsearch-analysis-ik/releases 选 阅读全文

posted @ 2020-07-17 17:49 work hard work smart 阅读(604) 评论(0) 推荐(0)

摘要: 1、什么是分词 把文本转换为一个个的单词,分词称之为analysis. ES默认只对英文语句做分词,中文不支持,每个中文汉字都会被拆分 2、获得分词 http://192.168.127.130:9200/_analyze ES内置分词器: analyzer standard: 默认标准分词器,大写 阅读全文

posted @ 2020-07-17 11:15 work hard work smart 阅读(315) 评论(0) 推荐(0)

摘要: 当有多个线程并发修改数据时,这时候使用乐观锁只能有一个修改成功 http://192.168.127.130:9200/my_doc/_doc/3001?if_seq_no=28&if_primary_term=1 28为上一次_seq_no的值 查询修改后的数据 版本元数据 _seq_no: 文档 阅读全文

posted @ 2020-07-17 10:48 work hard work smart 阅读(592) 评论(0) 推荐(0)

2020年7月16日

摘要: 1、创建索引 2、创建文档 使用PostMan调用 http://192.168.127.130:9200/my_doc/_doc/1 -> http://192.168.127.130:9200/{索引名称}/_doc/{索引ID} _doc 代表创建文档 1为索引ID,是指索引在ES中的id,而 阅读全文

posted @ 2020-07-16 17:50 work hard work smart 阅读(470) 评论(0) 推荐(0)

2020年7月13日

摘要: 一、ES的安装 1、解压 官网下载地址太慢,建议使用百度云盘下载地址: https://blog.csdn.net/weixin_37281289/article/details/101483434 这里使用的是es-7.4.2版本 elasticsearch-7.4.2-linux-x86_64. 阅读全文

posted @ 2020-07-13 15:25 work hard work smart 阅读(290) 评论(0) 推荐(0)

上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 59 下一页