能力转型需要了解的技术栈

(1)Selenium:Web 自动化测试工具,工具直接运行在浏览器中,模拟用户在浏览器上的所有操作,包括点击、输入等;


(2)VM:虚拟机技术,使用软件模拟计算机硬件,在宿主计算机系统上模拟运行一个或多个操作系统的技术;


(3)Docker:是一种开源的应用容器引擎,开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到部署 Docker 的 Linux 机器上,实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口;


(4)Mongodb:一个基于分布式文件存储的数据库,是一个介于关系数据库和非关系数据库之间的产品,为 WEB 应用提供可扩展的高性能数据存储解决方案。


(5)MySql:和 Amoeba 或 MySQL Proxy 结合使用可扩展为分布式数据库;


(6)Amoeba:Amoeba 是一个以 MySQL 为底层数据存储,并对应用提供 MySQL 协议接口的 proxy,它集中地响应应用的请求,将 SQL 请求发送到特定的数据库上执行。基于此可以实现负载均衡、读写分离、高可用性等需求;


(7)MySQL Proxy:一个 MySql 中间层代理,MySQL Proxy 就是一个连接池,负责将前台应用的连接请求转发给后台的数据库,并且通过使用 lua 脚本,可以实现复杂的连接控制和过滤,从而实现读写分离和负载平衡;


(8)Scala:是一门多范式的编程语言,一种类似 java 的编程语言,并集成面向对象编程和函数式编程的各种特性;


(9)Golang:Go 是 Google 开发的一种编译型,可并行化,并具有垃圾回收功能的编程语言;


(10)Restful:一种软件架构风格,设计风格而不是标准,只是提供了一组设计原则和约束条件。它主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁、更有层次、更易于实现缓存等机制;


(11)Thrift:是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引擎,以构建在各种编程语言间无缝结合的、高效的服务;


(12)Hadoop:是一个分布式系统基础架构,Hadoop 能够对大量数据进行分布式处理的软件架构。以一种可靠、高效、可伸缩的方式进行数据处理;


(13)HDFS:全称为 Hadoop 分布式文件系统,它具备高容错性,且可以部署在低廉的硬件上,具有高吞吐率来访问应用程序数据。


(14)MapReduce:MapReduce 是一种编程模型,用于大规模数据集(大于 1TB)的并行运算,MapReduce 通过把计算量分配给不同的计算机群,能够解决大部分和大数据有关的分析问题;


(15)HBase:HBase 是一个分布式的、面向列的开源数据库,是一个适合于非结构化数据存储的数据库;


(16)Zookeeper:一个分布式的,开放源码的分布式应用程序协调服务,是 Hadoop 和 Hbase 的重要组件,为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等;


(17)Hive:Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的 sql 查询功能,可以将 sql 语句转换为 MapReduce 任务进行运行;


(18)Pig:一种操作 hadoop 的轻量级脚本语言,Pig 可以非常方便的处理 HDFS 和 HBase 的数据,和 Hive 一样,Pig 可以非常高效的处理其需要做的,通过直接操作 Pig 查询可以节省大量的劳动和时间;


(19)Ambari:一种基于 Web 的工具,支持 Apache Hadoop 集群的供应、管理和监控,是 5 个顶级 hadoop 管理工具之一;


(20)Sqoop:主要用于在 Hadoop (Hive) 与传统的数据库间进行数据的传递,可以将一个关系型数据库中的数据导进到 Hadoop 的 HDFS 中,也可以将 HDFS 的数据导进到关系型数据库中;


(21)Chubby:Google 在系统的可靠性方面提出了中心化的组件 Chubby —粗粒度锁服务,通过锁原语为其他系统实现更高级的服务;


(22)Memcache:是一套分布式的高速缓存系统,通过在内存里维护一个统一的巨大的 hash 表,它能够用来存储各种格式的数据;


(23)Redis:Redis 是一个高性能的 key-value 数据库,很大程度补偿了 memcached 这类 key/value 存储的不足,在部分场合可以对关系数据库起到很好的补充作用;


(24)Ehcache:是一种广泛使用的开源 Java 分布式缓存。主要面向通用缓存,Java EE 和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,缓存异常处理程序,一个 gzip 缓存 servlet 过滤器,支持 REST 和 SOAP api 等特点;


(25)Kafka:是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素;


(26)Beego:Beego 是一个快速开发 Go 应用的 http 框架,Beego 可以用来快速开发 API、Web、后端服务等各种应用,是一个 RESTFul 的框架;


(27)Spark:用 Scala 语言实现,Spark 是类似于 Hadoop MapReduce 的通用并行框架,拥有 Hadoop MapReduce 所具有的优点,Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法;


(28)Akka:Akka 是 JAVA 虚拟机 JVM 平台上构建高并发、分布式和容错应用的工具包和运行时。Akka 用 Scala 语言写成,同时提供了 Scala 和 JAVA 的开发接口;


(29)Elasticsearch:是一个基于 Lucene 的搜索服务器,它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口,设计用于云计算中,能够达到实时搜索,稳定、可靠、快速、安装使用方便;


(30)ExtJS:ExtJS 主要用来开发 RIA 富客户端的 AJAX 应用,主要用于创建前端用户界面,与后台技术无关的前端 ajax 框架。因此,可以把 ExtJS 用在 .Net、 Java、Php 等各种开发语言开发的应用中;


(31)Bootstrap:是目前很受欢迎的前端框架,Bootstrap 是基于 HTML、CSS、JAVASCRIPT 的,它可以对 Bootstrap 中所有的 CSS 变量进行修改,依据自己的需求裁剪代码;


(32)Eview:我司提供的一套前段控件,支撑我司 WebUI 功能的开发;


(33)AngularJS:是一款优秀的前端 JS 框架,AngularJS 有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等等;


(34)Polymer:是一个使用 Web 组件构建 Web 应用的类库,同时也使用了为 Web 构建可重用组件的新的 HTML 5 标准。Polymer 为大部分 Web 组件技术提供了 polyfills 功能,它能让开发者在所有的浏览器支持新特性前创建自己的可重用组件;


(35)jQuery:是一个快速、简洁的 JavaScript 框架,它封装 JavaScript 常用的功能代码,提供一种简便的 JavaScript 设计模式,优化 HTML 文档操作、事件处理、动画设计和 Ajax 交互;


(36)Prototype:是目前应用最为广泛的 Ajax 开发框架,其的特点是功能实用而且尺寸较小,Prototype 框架可以大大地简化 JavaScript 代码的编写工作具备兼容各个浏览器的优秀特性,使用该框架可以不必考虑浏览器兼容性的问题;


(37)Underscore:是一个 JavaScript 工具库,它提供了一整套函数式编程的实用功能,但是没有扩展任何 JavaScript 内置对象,提供了 100 多个函数,包括常用的:map、filter、invoke 等还有更多专业的辅助函数;


(38)RequireJS:是一个 JavaScript 文件和模块加载器,允许把 javascript 代码独立成文件和模块,同时管理每个模块间的依赖关系。RequireJS 的目标是鼓励代码的模块化,使用 RequireJS 加载模块化脚本将提高代码的加载速度和质量;


(39)JavaScript:一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言;


(40)Typescript:TypeScript 是一种由微软开发的自由和开源的编程语言。它是 JavaScript 的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程;


(41)Apache:Apache 是世界使用排名第一的 Web 服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的 Web 服务器端软件之一;


(42)Nginx:Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件 (IMAP/POP3) 代理服务器,特点是占有内存少,并发能力强,事实上 nginx 的并发能力确实在同类型的网页服务器中表现较好;


(43)OpenStack:是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack 支持几乎所有类型的云环境,通过各种互补的服务提供了基础设施即服务 (IaaS) 的解决方案,每个服务提供 API 以进行集成;


(44)Nova:Nova 是 OpenStack 计算的弹性控制器。OpenStack 云实例生命期所需的各种动作都将由 Nova 进行处理和支撑,这就意味着 Nova 以管理平台的身份登场,负责管理整个云的计算资源、网络、授权及测度;


(45)Swift:为 OpenStack 提供一种分布式、持续虚拟对象存储,具有跨节点百级对象的存储能力,并内建冗余和失效备援管理,也能够处理归档和媒体流,特别是对大数据(千兆字节)和大容量(多对象数量)的测度非常高效;


(46)Glance:OpenStack 镜像服务器是一套虚拟机镜像发现、注册、检索系统,我们可以将镜像存储到以下任意一种存储中;


(47)Keystone:为所有的 OpenStack 组件提供认证和访问策略服务,它依赖自身 REST 系统进行工作,主要对 Swift、Glance、Nova 等进行认证与授权。事实上,授权通过对动作消息来源者请求的合法性进行鉴定;


(48)Horizon:Horizon 是一个用以管理、控制 OpenStack 服务的 Web 控制面板,它可以管理实例、镜像、创建密匙对,对实例添加卷、操作 Swift 容器等。用户还可以在控制面板中使用终端 (console) 或 VNC 直接访问实例。

你可能感兴趣的:(架构设计)