一图来看你需要拥有那些知识储备
技术实践
数据
关系型数据
- MySQL
- SQLServer
- Oracle
- PostgrSQL
- DB2
大数据存储
- Redis
- Memcache
- MongoDB
- HBase
- Hive
大数据处理
- Hadoop
数据报表看板
- DataGear
- Grafana
- Kibana
- MetaBase
消息对列
- Rabbit MQ
- Rock MQ
- Active MQ
- Kafka
大数据搜索
- Solr
- ElasticSearch
- Lucen
- Hive
服务提供商
国内云服务
- 华为云
- 阿里云
- 腾讯云
- 百度云
- 天翼云
文件存储
- OBS(华为)
- OSS(阿里)
- COS(腾讯)
国外云服务
- Google云
- 亚马逊云
- 微软云
- IBM云
服务支持
服务中心
- Eurak
- Zookper
- Consul
- Nacos
- Apollo
定时任务框架
- shardingsphere-elasticjob
- tb-schedule
服务监控
- Kotime
- Pinpoint
- Sentinel
- Springboot Admin
- Phoenix
日志采集工具
-
springboot admin
- 服务日志输出信息实时查看
-
Graylog
- 开源的日志聚合、分析、审计、展现和预警工具。
-
logstash
- 一根具备实时数据传输能力的管道,负责将数据信息从管道的输入端传输到管道的输出端;与此同时这根管道还可以让你根据自己的需求在中间加上滤网,Logstash提供里很多功能强大的滤网以满足你的各种应用场景。
研发管理工具
-
Worktile
- 易成星光科技
-
Teambition
- 里巴巴集团
-
TAPD
- 腾讯敏捷协作平台
-
JIRA
- 澳大利亚Atlassian公司
-
禅道
-
Gitee
- 奥思网络科技
-
Trello
- 开发商Atlassian收购
技术选型
前端技术
- Vue
- Node Js
- React
- Boot Strap
后端服务
- Java
- Go
- Scala
手机端技术
- H5
- Flutter
脚本语言
- Shell
- Python
人工智能
- MXNET(亚马逊)
- TensFlow(Google)
- PyTorch(FaceBook)
- CNTK(微软)
- PaddlePaddle(百度)
- Angle(腾讯)
应用服务
缓存
-
简介
- 提供一个存储缓存的容器,该容器实现了存放(Put)和读取(Get)缓存的接口供外部调用。 缓存通常以<key,value>的形式存在,通过key来从缓存中获取value。当然容器的大小往往是有限的(受限于内存大小),需要为它设置清除缓存的策略。
-
实例
-
Guava(Google)
-
特点
- GuavaCache中缓存的容器被定义为接口Cache<K, V>的实现类,这些实现类都是线程安全的,因此通常定义为一个单例。并且接口Cache是泛型,很好的支持了不同类型的key和value
-
-
Ecache
-
特点
-
- 够快。
-
-
-
-
够简单。
3.够袖珍。 -
够轻量。
5.好扩展。
6.监听器。-
Caffeine
-
特点
- Java8对Guava缓存的重写版本,性能有了较大的提升,兼容Guava与其API基本保持一致
-
-
轻量级数据库
-
简介
- 内存数据库(MMDB:Main Memory Database,也叫主存数据库)技术,就是干脆重新设计一种数据库管理系统,对查询处理、并发控制与恢复的算法和数据结构进行重新设计,以更有效地使用CPU周期和内存,这种技术近乎把整个数据库放进内存中,因而会产生一些根本性的变化。
-
实例
-
SQLite
-
优点
- 1、易于管理。
2、易于使用。
3、易于嵌入其他大型程序。
4、易于维护和配置。
- 1、易于管理。
-
最佳试用场合
- · 1、网站。
· 2、应用程序文件格式。
· 3、替代某些特别的文件格式。
· 4、内部的或临时的数据库。
· 5、命令行数据集分析工具。
· 6、在Demo或测试版的时候作为企业级数据库的替代品。
· 7、数据库教学。
· 8、试验SQL语言的扩展。
- · 1、网站。
-
-
H2 Database
-
特性
- 1、非常速的数据库引擎。
2、开源、免费数据库。
3、支持 JDBC和ODBC API,支持SQL。
4、支持嵌入式,服务器和集群模式。支持内存数据库。
5、提供基于浏览器的管理控制台。
6、整个应用本身只有1MB左右。
- 1、非常速的数据库引擎。
-
简介
- h2是Thomas Mueller提供的一个开源的、纯java实现的关系数据库。
-
其他
- 1、基于磁盘或内存的数据库、表,支持只读数据库、临时表。
2、两段式事务支持
3、支持多个连接。表级别的锁。
4、基于成本的优化,为复杂查询使用遗传算法,零管理。
5、滚动的、可修改的result set支持。支持大结果集、外部结果排序。
6、加密数据库(AES或XTEA),SHA-256密码加密。
- 1、基于磁盘或内存的数据库、表,支持只读数据库、临时表。
-
-
服务打包
-
简介
- · 1、编译源代码。
· 2、运行单元测试或者集成测试。
· 3、生成执行分析的报告。
· 4、创建发布版本。
· 5、部署到目标环境。
- · 1、编译源代码。
-
实例
-
Ant
- 早期的Ant(Another Neat Tool),开始主要用来构建著名的Tomcat,产生的动机是由于作者James Duncan Davidson受不了Makfile的语法格式
- Ant全部要自己处理。
-
Maven
- Maven的产生,也是由于厌倦了日复一日的手工构建工作,对各个项目风格迥异的构建系统感到麻烦.Maven的依赖管理以及项目构建规则重用性等特点,让Maven几乎成为Java构建工具的事实标准
- Maven有自己的单一仓库坐标格式
-
Gradle
- Gradle作为新的构建工具,基于Groovy语言的构建工具,既保持了Maven的优点,通过使用Groovy定义,克服了 Maven中使用XML繁冗以及不灵活等缺点。
- Gradle可以使用Ivy仓库和Maven仓库。
-
服务构建工具
-
简介
- 持续构建,快速响应部署
-
实例
-
Jekins
- Jenkins是一款用Java编写的开源的CI工具。当Oracle收购Sun Microsystems时,它作为Hudson的分支被开发出来。Jenkins是一个跨平台的CI工具,它通过GUI界面和控制台命令进行配置
- Jenkins非常灵活,因为它可以通过插件扩展功能。Jenkins插件非常好用,同时你可以容易地添加自己的插件。除了它的扩展性之外,Jenkins还有另一个非常好的功能——它可以在多台机器上进行分布式地构建和负载测试。Jenkins是根据MIT许可协议发布的,因此可以自由地使用和分发。Cloudbees还提供Jenkins in Cloud形式的托管解决方案。
-
Hudson
- Hudson是一款用来监控类似软件项目构建或Cron任务执行过程这样重复性工作执行情况的工具
- 1、易安装:只需执行java –jar hudson.war命令就能测试,或者将它部署到一个servlet容器中并用于生产环境。没有其他内容需要安装,也无需数据库。
2、易配置:由于有大量的动态错误检查机制和内置的帮助文档,Hudson完全可以通过友好的Web界面就完成所有配置而无需手动编辑XML配置文件,当然如果你更喜欢那么做,我们也支持XML文件配置。
3、支持变更记录:Hudson可以生成一个列表,它记录了从CVS、SVN、Git等软件配置管理(SCM)系统中所产生的对版本构建的变更影响。
4、永久链接:对于大多数页面,Hudson都给出了清晰可读的URL地址,包括一些像“最近构建版本”、“最近成功构建版本”的永久链接。这样就能很容易的从别的地方链接到它了。
集成了RSS、电子邮件、即时通讯:当构建失败时监控结果会以RSS或者电子邮件的形式实时提醒。
5、事后标记:构建在完成之后的很长时间内都可以被标记。
支持Junit、TestNG测试:Junit测试报告可以和历史信息一起被制成表格、总结并展示出来。
6、分布式构建:Hudson可以将构建、测试分布式地负载到多台电脑上进行。这使得你能够最大限度的利用那些开发人员桌子下面的空闲工作站。
7、文件指纹:Hudson可以记录哪次构建产生了哪些jar包或者哪次构建在使用哪个版本的jar包等等。这个功能甚至同样适用于在Hudson之外产生的jar包,这是追踪一个项目依赖的理想方法。
8、插件扩展支持:Hudson可以通过第三方插件来进行扩展。你也可以为Hudson编写插件,使其能支持你们项目所用到的工具。
-
应用服容器
-
实例
-
jetty
- 1、jetty更灵活,体现在其可插拔性和可扩展性,更易于开发者对Jetty本身进行二次开发,定制一个2、适合自身需求的WebServer。
相比之下,重量级的Tomcat原本支持过多特征,要对齐瘦身的成本远大于丰富Jetty的成本。
- 1、jetty更灵活,体现在其可插拔性和可扩展性,更易于开发者对Jetty本身进行二次开发,定制一个2、适合自身需求的WebServer。
-
tomcat
- Tomcat除遵循JavaServlet规范之外,自身还扩展大量JEE特性以满足企业级应用的需求,所以Tomcat是较重量级的。
-
resin
-
简介
- Resin是CAUCHO公司的产品,是一个非常流行的支持servlets和jsp的引擎,速度非常快。
- Resin也可以 和许多其他的WEB服务器一起工作。
- Resin支持 负载均衡(Load balancing),可以增加WEB站点的可靠性。
-
-
Undertow
- 在相同的机器配置下,模拟相等的请求数,Undertow 在性能和内存使用方面都是最优的。并且 Undertow 新版本默认使用持久连接,这将会进一步提高它的并发吞吐能力。所以,如果是高并发的业务系统,Undertow 是最佳选择。
-
netty
- 1、并发高。
2、传输快。
3、封装好。
- 1、并发高。
-
性能测试工具
-
简介
- 服务端系统的并发模型,而为了能测试到这样的服务器系统的并发能力,性能测试工具也需要支持与之相应的并发包能力。
-
实例
- ab
- jemeter
负载均衡
-
实例
-
apache
- 开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩展,将Perl/Python等解释器编译到服务器中。
-
nginx
- 1、Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。2011年6月1日,nginx 1.0.4发布。
2、Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强。
3、Nginx 是高性能的 HTTP 和反向代理的web服务器,处理高并发能力是十分强大的,能经受高负 载的考验。
Nginx支持热部署,启动简单。
- 1、Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。2011年6月1日,nginx 1.0.4发布。
-
openresty
- 1、一个基于NGINX的可伸缩的WEB平台,由中国人章亦春发起,提供了很多高质量的第三方模块。
2、OpenResty 是一个强大的 Web 应用服务器,Web 开发人员可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,更主要的是在性能方面,OpenResty可以 快速构造出足以胜任 10K 以上并发连接响应的超高性能 Web 应用系统。
- 1、一个基于NGINX的可伸缩的WEB平台,由中国人章亦春发起,提供了很多高质量的第三方模块。
-
XMind - Trial Version