首页   注册   登录
Rush9999

Rush9999

V2EX 第 325722 号会员,加入于 2018-06-29 18:01:35 +08:00
今日活跃度排名 19009
Rush9999 最近回复了
application.properties 里全都读环境变量 只写在 docker-compose.yml 里
热点事件日历一直请求超时
这个我遇到过,当时在 ipad 上买出现这种问题,找 b 站客服截图能退款的,只要 ios 那面生成订单 就可以找那面退款,只不过贼慢
120 天前
回复了 damon0097 创建的主题 问与答 做国际化,用哪个地图服务比较稳?
leaflet
https://dbaplus.cn/news-11-2397-1.html
MySQL 数据同步到 ES 中,大致总结可以分为两种方案:



# 方案 1:监听 MySQL 的 Binlog,分析 Binlog 将数据同步到 ES 集群中。



优点:业务与 ES 数据耦合度低,业务逻辑中不需要关心 ES 数据的写入;

缺点:Binlog 模式只能使用 ROW 模式,且引入了新的同步服务,增加了开发量以及维护成本,也增大了 ES 同步的风险。



# 方案 2:直接通过 ES API 将数据写入到 ES 集群中。



优点:简洁明了,能够灵活的控制数据的写入;

缺点:与业务耦合严重,强依赖于业务系统的写入方式。



考虑到订单系统 ES 服务的业务特殊性,对于订单数据的实时性较高,显然监听 Binlog 的方式相当于异步同步,有可能会产生较大的延时性。且方案 1 实质上跟方案 2 类似,但又引入了新的系统,维护成本也增高。所以订单中心 ES 采用了直接通过 ES API 写入订单数据的方式,该方式简洁灵活,能够很好的满足订单中心数据同步到 ES 的需求。



由于 ES 订单数据的同步采用的是在业务中写入的方式,当新建或更新文档发生异常时,如果重试势必会影响业务正常操作的响应时间。



所以每次业务操作只更新一次 ES,如果发生错误或者异常,在数据库中插入一条补救任务,有 Worker 任务会实时地扫这些数据,以数据库订单数据为基准来再次更新 ES 数据。通过此种补偿机制,来保证 ES 数据与数据库订单数据的最终一致性。
https://www.elastic.co/guide/en/elasticsearch/reference/7.3/docs-reindex.html
POST _reindex
{
"source": {
"index": "twitter",
"query": {
"term": {
"user": "kimchy"
}
}
},
"dest": {
"index": "new_twitter"
}
}
t_class
买彩票
238 天前
回复了 a154312237 创建的主题 分享创造 我们又做了个直男移动电源。(福利)
好多人 这里发生什么了
299 天前
回复了 utf16 创建的主题 问与答 Java 编程问题 求解决。。
不能直接 new 一个对象吗?没有构造方法还是什么。。。。没看懂需求是什么
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1317 人在线   最高记录 5168   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 9ms · UTC 17:04 · PVG 01:04 · LAX 09:04 · JFK 12:04
♥ Do have faith in what you're doing.