大小公司都适用的架构选型工具箱(涵盖上百个组件)( 三 )


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 , 我们还有其他工具 。
jenkins是打包发布的首选 , 毕竟这么多年了 , 一直是老大哥 。 当然 , 写Idea的那家公司 , 还出了一个叫TeamCity的工具 , 操作界面非常流畅 。
solor不得不说是一个神器 , 用了它之后 , 小伙伴们的代码一片飘红 , 我都快被吐沫星子给淹没了 。
对于公司内部来说 , 一般使用gitlab搭建git服务器 。 其实 , 它里面的gitlab CI , 也是非常好用的 。
Harbor , 在 docker registry 基础上扩展了权限控制 , 审计 , 镜像同步 , 管理界面等治理 能力 , 推荐使用 。
调度方面 , k8sGoogle 开源 , 社区的强力推动 , 有大量的落地方案 。 Rancher对k8s进行了功能的拓展 , 实现了和k8s集群交互的一些便捷工具 , 包括执行命令行 , 管理多个 k8s集群 , 查看k8s集群节点的运行状态等 , 推荐集成 。
十三、问题排查
大小公司都适用的架构选型工具箱(涵盖上百个组件)文章插图
java经常发生内存溢出问题 。 使用jmap导出堆栈后 , 我一般使用mat进行深入分析 。
如果在线上实时分析 , 有arthas和perf两款工具 。 当然 , 有大批量的linux工具进行支持 。
十四、本地工具
大小公司都适用的架构选型工具箱(涵盖上百个组件)文章插图
本地使用的jar包和工具 , 那就多了去了 。 下面仅仅提一下最最常用的几个 。
数据库连接池方面 , 国内使用druid最多 。 目前 , 有号称速度最快的hikari数据库连接池 , 以及老掉牙的dbcp和c3p0 。
json方面 , 国内使用fastjson最多 , 三天两头冒出个漏洞;国外则使用jackson多一些 。 它们的api都类似 , jackson特性多一些 , 但fastjson更加容易使用 。 工具包方面 , 虽然有各种commons包 , guava首选 。
End
这种文章 , 每一年我都会整理一次 。 有些新面孔 , 也有些被我个人t出局 。 架构选型 , 除了你本身对某项技术比较熟悉 , 用起来更放心 。 更多的是需要进行大量调研、对比 , 直到掌握 。
技术日新月异 , 新瓶装旧酒 , 名词一箩筐 , 程序员很辛苦 。 唯有那背后的基础原理 , 大道至简的思想 , 经久不衰 。
作者丨小姐姐味道
来源丨小姐姐味道(ID:xjjdog)
dbaplus社群欢迎广大技术人员投稿 , 投稿邮箱:editor@dbaplus.cn
2020 DAMS中国数据智能管理峰会即将于10月30日在上海举办 , 部分精彩议题先睹为快: