前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >优秀的技术选型(摘选)

优秀的技术选型(摘选)

作者头像
老梁
发布2019-09-11 17:28:35
6620
发布2019-09-11 17:28:35
举报
文章被收录于专栏:Java工程师成长之路

1. 优秀的技术选型(摘选)

1.1. 缓存

  • redis因为是单线程,不适合高耗时操作,对数据量比较大的缓存还是memcached比较合适

1.2. 分库分表

  • sharding-jdbc,驱动层,不需要额外机器
  • mycat,代理层,如果有运维团队,又舍得机器可以用这个

1.3. 数据同步

  • mysql在分库分表时,要做的一个重要操作,数据迁移
  • 对mysql来说,canal是国内用的最多的方案,其次databus
  • canal、maxwell等支持将要同步的数据写入mq,后续处理方便
  • ETL(抽取,清洗,转换),使用source,task,sink路线,常用工具datax,logstash,gobblin,sqoop等

1.4. 微服务

  • 注册中心通常用 consul、nacos、eureka、zookeeper
  • 熔断组件 sentinel、resilience4j、hystrix
  • 调用链 jaeger、skywalking、sleuth+zipkin、cat
  • 配置中心 apollo、disconf、spring-cloud-config
  • 网关 nginx(openresty、kong)、zuul2、traefik

1.5. 分布式工具

  • 协调工具 consul、etcd、zookeeper
  • 事务 seata(前fescar)

1.6. 监控系统

  • zabbix 在主机数量不多时是非常好的选择
  • prometheus 最流行的配合grafana进行前端展示
  • influxdata的influxdb和telegraf
  • elkb使用es存储的工具链(elasticsearch、logstash、kibana、beats)同样比较流行

1.7. 调度

  • quartz比较老的调度方案,分布式调度采用数据库锁的方式,界面需要自行开发
  • elastic-job-cloud应用比较广泛,但系统运维复杂,学习成本高
  • xxl-job国人开发,可以后台配置,学习成本较低

1.8. 入口工具

  • centos + haproxy + lvs + keepalived + ansible

1.9. OLT(A)P

  • 当数据量到达一定程度,需要建立数据仓库
  • 搜索方面solr和elasticsearch,后者实时性更好
  • 列式存储方面,基于Hadoop的hbase,使用最广泛
  • tidb国产新贵,兼容mysql协议
  • 时序数据库方面,opentsdb用在超大型监控系统多些,druid和kudu,在处理多维度数据实时聚合方面更胜一筹

1.10. CI/CD

  • 支持持续集成和虚拟化 jenkins是打包发布首选,idea的公司还写了一个TeamCity也可参考
  • gitlab搭建的git服务器中,gitlab CI也可以用

1.11. 问题排查

  • 发生内存溢出,可以用jmap导出堆栈后用mat分析
  • 线上实时分析可以用 arthas和perf

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-08-14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 优秀的技术选型(摘选)
    • 1.1. 缓存
      • 1.2. 分库分表
        • 1.3. 数据同步
          • 1.4. 微服务
            • 1.5. 分布式工具
              • 1.6. 监控系统
                • 1.7. 调度
                  • 1.8. 入口工具
                    • 1.9. OLT(A)P
                      • 1.10. CI/CD
                        • 1.11. 问题排查
                        相关产品与服务
                        云数据库 SQL Server
                        腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档