当前位置: 首页 > news >正文

建设网站 托管 费用网站建设导航栏变化

建设网站 托管 费用,网站建设导航栏变化,佛山网站改版,手机创建微信公众号前言: 之前在某大型保险公司担任技术经理#xff0c;负责优化话务系统模块#xff0c;由于系统已经运行10年之久#xff0c;尤其在话务系统中#xff0c;沉积了几十亿的话务信息表#xff0c;业务人员反馈#xff0c;话务系统历史数据查询部分已经完全查询不动#xff0…前言: 之前在某大型保险公司担任技术经理负责优化话务系统模块由于系统已经运行10年之久尤其在话务系统中沉积了几十亿的话务信息表业务人员反馈话务系统历史数据查询部分已经完全查询不动且数据增量仍然已每天200w以上数据库频繁报警优化迫在眉睫。在我接手之前该系统已经经历过几个版本的优化。1 冷热分离热表存储三个月内数据历史表存储历史数据每天凌晨通过oracle的存储过程迁移。同时通过修改业务页面上加了个按钮是否查询历史数据如果查询历史数据需要勾选上当然在如此大的数据量面前即使勾选上也是查询不出来的页面上无限转圈功能处于不可用状态。2 请了外援由某为公司优化当时给的方案是所有数据使用gaussdb存储通过设置分片分区键改动原有业务单独启动一个jar包提供接口服务集成了mybatils通过sql拦截器校验如果有sql没有带上分区或者分片键则不给查询。最后所有的查询就变成了 select * from xxx where 分区键 and 分片键 数据迁移部分利用过年放假期间采用停机迁移的方式。新版本改动较大虽然经历了较长时间的测试但是也不敢保证不出问题所以在业务测也保留了原有业务随时切换到原有业务业务代码变成了这样。if(开启新业务) {http.post(); } else {原有业务代码 }据老员工说这次改动性能确实不错相关查询处于可用的状态但是数据库稳定性不高经常报警也不是很稳定后来由于大领导们的某些不可控因素合作终止gaussdb没人维护自然这个方案也就被否决了。3 这时候我入职了这部分优化工作就落到了我的头上由于公司和腾讯合作免费提供了Tbase给我们应用这样的话我们就可以采用华为的思路用Tbase替代了gaussdb同时做了sql的适配。做了技术预研只分配了一个分片键的数据到数据库中大概4000多w的数据用时间做分区效果还是不理想业务侧需求是至少每次查询要查询一个月内的数据由于还要通过其他表的数据来做关联查询sql是这样的select * from a left join b left join c left join dabcd四张表都是上亿的数据虽然有分片分区键效果仍然很差只有时间范围精确到天的时候才能做到秒级响应也就是页面上的筛选条件需要由月 改成 天但是这样业务员是无法接受的。4 第四版优化由于第三版技术调研失败我们换了个思路利用大数据组件来做这部分优化。思路是 通过Elasticsearch来做条件筛选里面存储话务表的id然后通过id去Hbase做数据查询。通过技术调研将一个省分的全量数据放到es和hbase后通过省份做es的分片查询可以做到秒级返回。但是这样就涉及到了数据同步问题如果做到Tbase数据表 -》 es hbase因为我们在关系型数据库同步到eshbase的时候由于数据类型以及业务逻辑不一样是需要做比较重的逻辑处理所以这部分只能通过代码实现于是写了一个数据同步组件。数据同步组件包含两部分一部分是离线历史数据同步还有实时数据同步实时数据同步架构如下。注意这里由于数据同步需要保证顺序性需要保证kafka的同一个partition只有一个消费者在消费这里kafka的分区设置策略需要设置成range代码如下import org.apache.kafka.clients.consumer.*;import java.util.*;public class MyConsumer {public static void main(String[] args) {Properties props new Properties();props.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, localhost:9092);props.put(ConsumerConfig.GROUP_ID_CONFIG, my_consumer_group);props.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, org.apache.kafka.common.serialization.StringDeserializer);props.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, org.apache.kafka.common.serialization.StringDeserializer);props.put(ConsumerConfig.PARTITION_ASSIGNMENT_STRATEGY_CONFIG, range);KafkaConsumerString, String consumer new KafkaConsumer(props);consumer.subscribe(Arrays.asList(my_topic));try {while (true) {ConsumerRecordsString, String records consumer.poll(Duration.ofMillis(100));for (ConsumerRecordString, String record : records) {System.out.println(Received message: record.value());}}} catch (Exception e) {e.printStackTrace();} finally {consumer.close();}} } 这个架构在很多场景都得到了验证例如上百亿的保单表也是这么存储的Hbase存储保单详情es存储查询条件。至此问题得到了比较完善的解决这里面还存在很多细节问题比如数据同步组件包含两个方面一个是离线同步一个是实时同步。离线数据同步部分要支持不停机同步这部分内容比较多下一篇在介绍吧。
http://www.hkea.cn/news/14452774/

相关文章:

  • 网页设计培训的课程微信seo
  • 建设网站的企业名称介绍北京的网站html
  • 全站仪建站视频门户网站的基本特征多选题
  • 郑州网站运营专业乐云seo提供常州网站优化
  • 学佛网站开发项目需求分析社交网站设计
  • 视频类网站开发经验做家居用品亚马逊看哪些网站
  • 小米网站制作花店网站建设
  • 顺庆区城乡规划建设局门户网站什么网站能接单做网站
  • iis7站长工具聊城网架公司
  • 贵阳做网站的公司上海今天出什么大事件了
  • wordpress整站手机端企业响应式网站建设报价
  • 企业网站建立答辩问题中国电商平台排行榜前100
  • 怎么做网站栏目义乌品牌网站建设
  • 化工类网站建设推广网站是怎么赢利的
  • 做网站一定要买主机吗网站建设需求分析调研表
  • 网站导航栏设计要求大渡口的网站开发公司电话
  • 网站开发专业课程网站推广计划至少包括
  • flash网站优缺点广元市网站建设
  • 个人怎么建网站最权威的品牌排行榜网站
  • 制作网站软件作品人力资源公司网站建设
  • 专业建站开发自己做网站stri
  • 安庆市网站建设公司中山微信网站
  • vs做网站开发吗农业门户网站建设目标
  • 仿搜狐视频网站源码网站建设保障方案
  • 律师所网站建设创建一个公司网站需要多少钱
  • 做网站建设重庆牌联盟官网网站
  • 手机网站 等比缩放南京网站推广哪家便宜
  • 互动网站欣赏丽水房产网站建设
  • 灵溪网站建设成都装修设计公司推荐
  • 搜索网站的软件购物网站怎么做推广