架构师不会架构选型,能行吗?( 三 )
目前 , 开源中做的最好的要数 Apollo , 并提供了对 Spring Boot 的支持 。
Disconf 使用也较为广泛 。 相对来说 , Spring Cloud Config 功能就局限了些 , 用的很少 。
网关方面 , 使用最多的就是 Nginx , 在 Nginx 之上 , 有基于 Lua 脚本的 Openrestry 。 由于 Openresty 的使用非常繁杂 , 所以有了 Kong 这种封装级别更高的网关 。
对于 Spring Cloud 来说 , Zuul 系列推荐使用 Zuul2 , Zuul1 是多线程阻塞的 , 有硬伤 。
Spring-Cloud-Gateway 是 Spring Cloud 亲生的 , Spring Cloud 大力支持 , 基于 Spring 5.0 的新特性 WebFlux 进行开发 。 底层网络通信框架采用的是 Netty , 吞吐量高 。
分布式工具
本文插图
大家都知道分布式系统 Zookeeper 能用在很多场景 , 与其类似的还有基于 Raft 协议的 etcd 和 Consul 。
由于它们能够保证极高的一致性 , 所以用作协调工具是再好不过了 。 用途集中在:配置中心、分布式锁、命名服务、分布式协调、Master 选举等场所 。
对于分布式事务方面 , 则有阿里的 Fescar 工具进行支持 。 但如非特别的必要 , 还是使用柔性事务 , 追寻最终一致性 , 比较好 。
监控系统
本文插图
推荐:
- Prometheus+Grafana+Telegraf 。
- 日志收集:大量 ELKB , 小量 Loki 。
Prometheus 来势凶猛 , 大有一统天下的架势 。 它也可以使用更加漂亮的 Grafana 进行前端展示 。
Influxdata 的 Influxdb 和 Telegraf 组件 , 都比较好用 , 主要是功能很全 。 使用 ES 存储的 ELKB 工具链 , 也是一个较好的选择 。 我所知道的很多公司 , 都在用 。
调度
本文插图
推荐:XXL-Job 。
大家可能都用过 Cron 表达式 。 这个表达式 , 最初就是来自 Linux 的 Crontab 工具 。
Quartz 是 Java 中比较古老的调度方案 , 分布式调度采用数据库锁的方式 , 管理界面需要自行开发 。
Elastic-Job-Cloud 应用比较广泛 , 但系统运维复杂 , 学习成本较高 。 相对来说 , XXL-Job 就更加轻量级一些 。 中国人开发的系统 , 后台都比较漂亮 。
入口工具
本文插图
推荐:LVS 。
为了统一用户的访问路口 , 一般会使用一些入口工具进行支持 。 其中 , Haproxy、LVS、Keepalived 等 , 使用非常广泛 。
服务器一般采用稳定性较好的 Centos , 并配备 Ansible 工具进行支持 , 那叫一个爽 。
OLT(A)P
本文插图
推荐:ES 。
现在的企业 , 数据量都非常大 , 数据仓库是必须的 。 搜索方面 , Solr 和 Elasticsearch 比较流行 , 它们都是基于 Lucene 的 。 Solr 比较成熟 , 稳定性更好一些 , 但实时搜索方面不如 ES 。
列式存储方面 , 基于 Hadoop 的 Hbase , 使用最是广泛;基于 LSM 的 LevelDB 写入性能优越 , 但目前主要是作为嵌入式引擎使用多一些 。
TiDB 是国产新贵 , 兼容 MySQL 协议 , 公司通过培训向外输出 DBA , 未来可期 。
推荐阅读
- 日日看点|这个表演看起来就不会有被骗钱的感觉了
- 菏泽|乐山一企业研发了一款“不会生花的泡菜坛”
- 食品|零食大人-怎样吃休闲食品才不会伤害身体革命的本钱
- 给你说个车|都不会考虑四驱,这是为什么呢?,多数人在买SUV时
- 美国|一旦美国衰落,世界会不会就此太平,专家:将有两个国家无法控制
- 骚狐君|TES史诗级让二追三!PDD复盘直言不敢看,阿水不会再装杯了
- 热点游戏|英雄联盟:PDD复盘TES让二追三,还好赢了,阿水不会再装了
- 热点游戏|还好赢了,阿水不会再装了,英雄联盟:PDD复盘TES让二追三
- 鸡蛋|为什么鸡看到鸡蛋被人类拿走了,却不会生气?
- 桃夭之华|王者峡谷出场率最低的装备,如果没有人提起,根本不会有人记起
