大小公司都适用的架构选型工具箱(涵盖上百个组件)( 三 )
对于spring cloud来说 , zuul系列推荐使用zuul2 , zuul1是多线程阻塞的 , 有硬伤 。 spring-cloud-gateway是spring cloud亲生的 , Spring Cloud 大力支持 , 基于 Spring5.0 的新特性 WebFlux 进行开发 。 底层网络通信框架采用的是 Netty , 吞吐量高 。
七、分布式工具
文章插图
大家都知道分布式系统zookeeper能用在很多场景 , 与其类似的还有基于raft协议的etcd和consul 。
由于它们能够保证极高的一致性 , 所以用作协调工具是再好不过了 。 用途集中在:配置中心、分布式锁、命名服务、分布式协调、master选举等场所 。
对于分布式事务方面 , 则有阿里的fescar工具进行支持 。 但如非特别的必要 , 还是使用柔性事务 , 追寻最终一致性 , 比较好 。
八、监控系统
推荐:prometheus + grafana + telegraf
日志收集:大量ELKB , 小量loki
文章插图
监控系统组件种类繁多 , 目前 , 最流行的大概就是上面四类 。
zabbix在主机数量不多的情况下 , 是非常好的选择 。
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 , 未来可期 。
时序数据库方面 , opentsdb用在超大型监控系统多一些 。 druid和kudu , 在处理多维度数据实时聚合方面 , 更胜一筹 。
cassandra在刚出现时火了一段时间 , 虽然有facebook弃用的新闻 , 但生态已经形成 , 常年霸占数据库引擎前15名 。
十二、CI/CD
文章插图
为了支持持续集成和虚拟化 , 除了耳熟能详的docker , 我们还有其他工具 。
推荐阅读
- 三星公司发布2021款数字座舱 集成诸多高科技
- 可靠实用的最佳拍档 法翼T1执法记录仪体验评测
- 唐山四维智能科技有限公司:双臂机器人引领人机协作新纪元
- DeepMind巨亏42亿、独角兽惨遭3折贱卖,AI公司为何难有“好下场”?
- 美媒:美国拉小弟搞开放网络规范摆脱华为 但更多中国公司加入竞争搅黄美方计划
- 一汽解放青岛公司:每216秒制造一辆卡车,首台新能源轻卡今年10月下线
- 传统1/10大小 七彩虹发布最小的mini SSD硬盘:性能首次公开
- 北美新浪回应官网域名停用!停止更新因公司业务调整
- 深圳第一女首富:打败郭台铭,成为苹果公司金牌供应商
- 公司|“居民已习惯无人机送咖啡”澳媒称疫情中无人机需求量大增