为你讲解服务器框架设计和技术选型

  • 来源:网络
  • 更新日期:2020-06-05

摘要: 1. 负载均衡服务器 硬件类 F5 BIG-IP负载均衡器 基于简单的Web管理界面,具有负载均衡、应用交换、会话交换、状态监控、智能网络

1. 负载均衡服务器 硬件类 F5 BIG-IP负载均衡器 基于简单的Web管理界面,具有负载均衡、应用交换、会话交换、状态监控、智能网络地址转换、通用持续性、响应错误处 理、IPv6网关、高级路由等很多功能 Array新一代L4-L7应用交付控制器,Web应用加速器高性能SSL VPN,全局访问控制器 Radware可以做到本地的服务器负载均衡(AD)和广域的全局服务器负载均衡(AD -Global) NetScaler优化Web 应用交付的综合解决方案 思科思科几乎每个IOS路由器都具有负载均衡功能 梭子鱼负载均衡0最大特点是包含了网络安全功能
附:软/硬件负载均衡产品 你知多少? 软件类 Nginx一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务 HAProxy一款应对客户端10000以上的同时连接的高性能的TCP和HTTP负载均衡器 LVS使用Linux内核集群实现一个高性能、高可用的负载均衡服务器
附:三大主流软件负载均衡器对比(LVS VS Nginx VS Haproxy) 2. 反向代理服务器 Nginx一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务 HAProxy一款应对客户端10000以上的同时连接的高性能的TCP和HTTP负载均衡器 Squid一个高性能的代理缓存服务器,Squid支持FTP、gopher、HTTPS和HTTP协议 Varnish一款高性能的开源HTTP加速器 Apache TS一个高性能的、模块化的HTTP代理和缓存服务器

附:几种反向代理 服务器比较

3. 消息队列系统(MQ) RabbitMQ一款实现了高级消息队列协议(AMQP)的开源消息代理软件 Apache kafka一个开源消息系统项目,由Scala写成。该项目的目标是为处理实时数据提供一个统一、高通量、低等待的平台。 zeroMQ一种基于消息队列的多线程网络库,其对套接字类型、连接处理、帧、甚至路由的底层细节进行抽象,提供跨越多种传输协议的套接字 Apache ActiveMQApache软件基金会所研发的开放源代码消息中间件,是一个纯Java程序

整体上看RabbitMQ的综合性能会更佳一些
附:MQ框架的比较

4. Web服务器 Apache世界排名第一的web服务器 Tomcat一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器 Nginx一个高性能的HTTP和反向代理服务器 IIS由微软公司提供的基于运行Microsoft Windows的互联网基本服务 Zeus Web Server在国外的技术媒体当中将这种服务器看成具有极高的稳定性、适应性并具备很高的可配置性的服务器软件 Lighttpd个具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点的服务器

附:三大WEB服务器对比分析(Apache ,Lighttpd,Nginx)

5. 分布式缓存系统 Redis一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库 Memcached一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载 Tair(阿里巴巴) 淘宝的一个开源项目,它是一个分布式的key/value结构数据的解决方案

附:常用的分布式缓存的对比

6. 分布式文件系统 MooseFS(MFS)一个高可用的故障容错分布式文件系统 Ceph一个可靠地、自动重均衡、自动恢复的分布式存储系统 GlusterFS一款自由软件,文档也比较齐全,不难上手 Hadoop HDFS一个分布式文件系统,适用于商用硬件上高数据吞吐量对大数据集的访问的需求 FastDFS一个开源的轻量级分布式文件系统 Lustre一种平行分布式文件系统,通常用于大型计算机集群和超级电脑 除此以外,很多公司提供的对象存储OSS也是很不错的选择

附:分布式文件系统MFS、Ceph、GlusterFS、Lustre的对比

7. 搜索服务器 Elasticsearch一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口 Solr提供了较为完备的搜索引擎解决方案,实现站内搜索扩展性较好并且可以减少程序员的工作量

附:分布式搜索和分析引擎对比

8. SQL数据库 Mysql最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS Oracle DB目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境 SQL Server由Microsoft开发和推广的关系数据库管理系统(DBMS) DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境

附:常见主流SQL数据库对比介绍

9. NoSQL数据库 MongoDB由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案 Memcache一套分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度,尤其对于一些大型的、需要频繁访问数据库的网站访问速度提升效果十分显著 Redis一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 HBase一个分布式的、面向列的开源数据库 LevelDB一个google实现的非常高效的kv数据库 Couchbase是MemBase与couchDb这两个NoSQL数据库的合并的产物,是一个分布式的面向文档的NoSQL数据库管理系统

附:几款主流 NoSql 数据库的对比&&Couchbase vs Redis,究竟哪个更胜一筹?

10. 应用服务器 Apache Tomcat一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器 IBM Websphere包含了编写、运行和监视全天候的工业强度的随需应变 Web 应用程序和跨平台、跨产品解决方案所需要的整个中间件基础设施,如服务器、服务和工具。 Macromedia Wildfly(原名JBoss ApplicaTIon Server) 一个开源的基于JavaEE的轻量级应用服务器, NEC WebOTX ApplicaTIon Server运行更稳定,支持最新的开放技术,提高开发效率 JRun它是Micromedia的一个应用服务器 BEA WebLogic一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器 Caucho Technology Resin一个非常流行的支持servlets和jsp的引擎,速度非常快

搞不清Web服务器和应用服务器区别的看这里:浅谈Web服务器和应用服务器的区别

11. CDN网络加速服务 阿里云 腾讯云 百度云