Zipkin 是 Twitter 的一个开源项目,允许开发者收集 Twitter 各个服务上的监控数据,并提供查询接口。 该系统让开发者可通过一个 Web 前端轻松的收集和分析数据,例如用户每次请求服务的处理时间等,可方便的监测...更多Zipkin信息
最新新闻: Zipkin —— Twitter 的开源项目用于监控服务响应 2012年06月09日
collectd是一个守护(daemon)进程,用来收集系统性能和提供各种存储方式来存储不同值的机制。比如以RRD 文件形式。 当系统运行和存储信息的时候,Collectd会周期性统计系统的相关统计信息。那些信息可以用来找到当...更多collectd信息
最新新闻: collectd 5.5.0 发布,系统监控和统计工具 2015年05月29日
Opserver 是 Stack Exchange(大名鼎鼎的 Stack Overflow 是其子站)的轻量级监控系统,基于 asp.net MVC 框架,可监控: servers SQL clusters/instances redis elastic search exception logs haproxy...更多Opserver信息
最新新闻: Opserver —— Stack Exchange 开源的监控系统 2013年10月16日
当服务器遭到黑客攻击时,在多数情况下,黑客可能对系统文件等等一些重要的文件进行修改。对此,我们用Tripwire建立数据完整性监测系统。虽然 它不能抵御黑客攻击以及黑客对一些重要文件的修改,但是可以监测文件...更多Tripwire信息
最新新闻: Tripwire 2.4.2.2 发布,数据完整性监控工具 2011年11月23日
Apache Sirona 为 Java 应用程序提供了一个简单但可扩展的监控解决方案。更多Apache Sirona信息
最新新闻: Apache Sirona —— Java 应用监控解决方案 2014年07月01日
Linux-dash 是一个低开销 Linux 服务器监控系统,基于 Web 的监控界面。Linux-dash 的界面提供了一个详细的概述您的服务器的所有重要方面,包括内存和磁盘使用情况,网络,安装软件,用户,运行的流程。所有信息被组织...更多Linux-dash信息
最新新闻: Linux-dash 1.5 发布,Linux 服务器监控系统 2015年02月09日
Huginn 是雅虎开发的一个系统,可以帮你执行自动化的在线任务。可以阅读网页,关注事件,并采取相应操作。Huginn 通过一个直观的事件流图来展示各种操作和事件。通过在你自己的服务器上的管道加上IFTTT,你就能知道...更多Huginn信息
最新新闻: Huginn —— 来自雅虎的系统监控解决方案 2013年03月15日
jvmtop 是一个轻量级的控制台程序用来监控机器上运行的所有 Java 虚拟机。类似 Linux 下的 top 命令,显示了 JVM 很多内部信息,诸如内存之类的。 JvmTop 0.4.1 alpha amd64 8 cpus, Linux 2.6.32-27, load...更多jvmtop信息
最新新闻: jvmtop —— 类似 top 的 JVM 监控工具 2013年05月27日
PSI Probe 是一个 Lambda Probe 的后续版本,主要是为了替换 Tomcat 自带的管理器,可方便的管理和监控 Tomcat 实例。 主要特性: Requests: Monitor traffic in real-time, even on a per-application basis. S...更多PSI Probe信息
开源监控系统OpenTSDB,用hbase存储所有的时序(无须 采样)来构建一个分布式、可伸缩的时间序列数据库。它支持秒级数据采集所有metrics,支持永久存储,可以做容量规划,并很容易的接入到现有的报警系 统里。Ope...更多OpenTSDB信息
Nagios是一个监视系统运行状态和网络信息的监视系统。Nagios能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等 Nagios可运行在Linux/Unix平台之上,同时提供一个可选的基于浏览器的WEB界面以方便系统...更多Nagios信息
最新新闻: Nagios Core 4.1.0rc2 发布,企业级监控系统 2015年07月18日
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。 zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供柔软的通知机制以让系统管理员快速定位/解决存在的各种问题...更多zabbix信息
最新新闻: Zabbix 2.0.18,2.2.13 和 3.0.3 发布 2016年05月19日
Cacti 在英文中的意思是仙人掌的意思,Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。它通过snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它...更多Cacti信息
最新新闻: Cacti 0.8.8e 发布,网络流量检测图形分析工具 2015年07月19日
ZoneMinder的作者是因為家中的車庫被竊,因而產生設計監控保全的念頭。 ZoneMinder使用了Linux Server,PHP,MySQL加上幾支攝影機,就可以使用web介面監控重要場所。當異常事件發生時,你就可以收到e-mail或簡訊通知...更多ZoneMinder信息
最新新闻: ZoneMinder 1.25 发布,视频监控系统 2011年09月01日
MRTG(Multi Router Traffic Grapher)是一套可用来绘出网络流量图的软件,由瑞士奥尔滕的Tobias Oetiker与Dave Rand所开发,此软件以GPL授权。 下面是网卡流量监控图 MRTG最早的版本是在1995年春天所推出,以Per...更多MRTG信息
最新新闻: Ubuntu配置MRTG监控Nginx和服务器系统资源 2013年08月08日
Tsar是淘宝的采集工具,主要用来收集服务器的系统信息(如cpu,io,mem,tcp等)以及应用数据(如squid haproxy nginx等),tsar支持实时查看和历史查看,方便了解应用和服务器的信息! 它类似于sar,能监控和收集...更多Tsar信息
Open-Falcon 人性化的互联网企业级监控系统,Open-Falcon 整体可以分为两部分,即绘图组件、告警组件。其中: 安装绘图组件 负责数据的采集、收集、存储、归档、采样、查询、展示(Dashboard/Screen)等功能,可以...更多OpenFalcon信息
最新新闻: OpenFalcon —— 来自小米的监控系统 (Go) 2016年03月16日
Hawt IO 是一个新的可插入式 HTML5 面板,设计用来监控 ActiveMQ, Camel, Karaf, Fuse Fabric, Tomcat 和其他系统。可通过其提供的 一堆插件 提供额外的监控。...更多HawtIO信息
最新新闻: HawtIO 1.4.55 发布,应用监控系统 2015年10月10日
Countly 是一个实时的、开源的移动分析应用,通过收集来自手机的数据,并将这些数据通过可视化效果展示出来以分析移动应用的使用和最终用户的行为。一旦你打开该程序的面板,你会发现数据的监控是那么的简单。 Co...更多Countly信息
最新新闻: Countly v16.06 发布,开源移动分析应用 2016年07月01日
Ramona 是一个库或者是一个组件使得应用开发者、监控者可以方便构建用来管理应用的命令行接口。其最主要的用户是确保应用保持运行状态,一旦崩溃便自动重启应用、监控日志和进程输出,并在出错时发送邮件提醒给管...更多Ramona信息
PHP作为流行的服务器端脚本语言,广泛地用于各种服务器前端及应用的开发。虽然PHP作为脚本语言,天然具有良好的入门简单、容错性强、性能较高(在脚 本语言中)的特点,但是,由于其多进程的执行模式,和前端Web...更多witness信息
最新新闻: witness —— 来自 UC 的开源 PHP 监控扩展 2013年07月04日
Prometheus 是一个开源的服务监控系统和时间序列数据库。 特性: 高维度数据模型 自定义查询语言 可视化数据展示 高效的存储策略 易于运维 提供各种客户端开发库 警告和报警 数据导出更多Prometheus信息
最新新闻: Prometheus —— Go 语言开发的服务监控系统 2015年02月07日
HATop 是一个交互式的基于 ncurses 开发的实时监控 HAProxy 负载均衡系统的统计工具。后来有人对该工具进行改进,增加了 TCP 支持,详情请看 https://github.com/Wirehive/hatop...更多HATop信息
REST Superman 已改名REST Commander是 eBay 开发的一个使用快速并行的异步 HTTP/REST/SOAP 客户端开发的服务用来监控和管理10000台 Web 服务器,可在 10 秒内发送请求到 1000 台服务器,或者 50 秒内发送请求到 ...更多REST Superman信息
Bosun 是一个新型的监控和告警系统,由Stack Exchange团队打造,使用golang编写,支持定义复杂的告警规则,支持OpenTSDB、Graphite、Logstash-Elasticsearch 等数据源。bosun 将是 zabbix、nagios的有力竞争者。...更多Bosun信息
最新新闻: Bosun —— Go 开发的监控和告警系统 2015年03月01日
Watchy 是一个分布式的系统,用于监控应用程序和服务器。该系统非常简单和易于管理。Watchy 提供一个分布式的架构和每个服务器之间守护进程的通讯,通过 UDP 获取不同服务器上的数据并在同一个面板上显示。 工作原...更多Watchy信息
最新新闻: Watchy —— Python 开发的分布式系统监控 2014年07月13日
HeartBeat 心跳检测应用服务器(如Tomcat,Jetty)的JAVA WEB应用程序. 如何实现? 使用HttpClient对指定的服务器(application-instance) URL 按频率(10秒,20秒...) 发起请求并记录响应的信息(连接耗时,...更多Java HeartBeat信息
最新新闻: Java HeartBeat 0.4 发布,应用服务器心跳检测 2015年05月01日
RANCID (Really Awesome New Cisco confIg Differ) 可以监测你的修改,关键时刻能派上用处。Rancid功能十分简单:检索和组织网络路由器,交换机和防火墙的配置。如果你设置其运行的间隔为 1个小时,当你的监测的数...更多RANCID信息
osquery 是 SQL 驱动的分析和监控操作系统的工具,是操作系统分析框架,支持 OS X 和 Linux 系统。osquery 能帮助监控和分析低水平的操作系统,提供更直观的性能监控。 osquery 在操作系统中就像是一个高性能的关...更多osquery信息
最新新闻: osquery —— 来自Facebook的操作系统监控工具 2014年11月01日
HoneyProxy 是一个轻量级的用来实时监控和分析HTTP(S)流量的开源工具。 特性 实时分析HTTP(S)流量 可过滤和高亮流量,支持正则表达式 保存流量报告用于以后分析 使用 Python 脚本来更改信息,例如移除缓存头部 基...更多HoneyProxy信息
inotify-sync是一款Linux文件系统安全监控软件,它使用Linux内核提供的Inotify特性,让用户配置监控目录,并且对不同的文件系统操作事件调用不同的事件处理脚本(Python)。默认情况下它是一个文件同步工具,将所...更多inotify-sync信息
eBay公司隆重宣布正式向开源业界推出分布式实时安全监控引方案 - Apache Eagle ,该项目已正式加入Apache 称为孵化器项目。Apache Eagle提供一套高效分布式的流式策略引擎,具有高实时、可伸缩、易扩展、交互友好...更多Apache Eagle信息
最新新闻: Apache Eagle:分布式实时 Hadoop 数据安全方案 2015年10月29日
Hyperfox 是一个安全的工具用来代理和记录局域网中的 HTTP 和 HTTPS 通讯。 Hyperfox 可以即时使用一个根 CA 证书和相应密钥(用户提供)来处理 SSL 证书。如果目标机器的认为该证书可信任则将可成功的解析 HTTP...更多Hyperfox信息
最新新闻: Hyperfox —— HTTP/HTTPS 流量监控系统 2015年01月03日
Snorby是一个Ruby on Rails的Web应用程序,网络安全监控与目前流行的入侵检测系统(Snort的项目Suricata和Sagan)的接口。该项目的目标是创建一个免费的,开源和竞争力的网络监控应用,为私人和企业使用。 在线演...更多Snorby信息
rtop 是一个简单的无代理的远程服务器监控工具,基于 SSH 连接进行工作。无需在被监控的服务器上安装任何软件。rtop 直接通过 SSH 连接到待监控服务器,然后执行命令来收集监控数据。 rtop 每几秒钟就自动更新监控...更多rtop信息
最新新闻: rtop —— Go 语言开发的远程服务器监控工具 2015年05月11日
PFQ 是一个支持多语言的网络框架,主要用于 Linux 操作系统下进行高效的包捕获和传输,适用于多核处理器系统中的网络监控框架。 PFQ 专门为多核处理器而优化,包括对多个硬件队列的网络设备优化,支持任意网络设备...更多PFQ信息
最新新闻: PFQ —— 支持多语言的高性能网络监控框架 2015年01月12日
Hummingbird 可以让你实时的了解访问者与网站之间的交互,这个实时并不是每五分钟一次,而是每秒钟20。Hummingbird 基于 Node.js 构建更多Hummingbird信息
Tcprstat 是免费开源的TCP分析工具,可检测网络的传输,并且计算请求和响应之间的延迟。 它的输出格式类似 linux 的 vmstat 和 iostat 的输出格式。这个工具能够检测到某个端口的流量情况。可以监听包括 mysqld h...更多tcprstat信息
最新新闻: 【每日一博】Percona 之 tcprstat 安装及使用 2013年08月29日
Collectl 是一个轻量级的性能监控工具,可监控包括 CPU、磁盘、带宽、内存、网络、NFS、进程等等信息。更多Collectl信息
EGADS (Extensible Generic Anomaly Detection System) 是一个开源的 Java 包,用于在大规模时间序列数据中自动检测异常。 EGADS 旨在包括一组异常检测技术,可以应用到一个包的许多用例中,且只唯一的依赖是 Ja...更多EGADS信息
Skyline 是实时异常检测系统,构建目的是被动监控几百到几千个度量标准,不需要一个个配置 模型/阈值,可以同时使用 Nagios。 Skyline 设计主要是用在需要持续监控的大量高清晰度的时间序列。一旦设置了一个指标流...更多Skyline信息
最新新闻: Skyline —— 来自 Esty 的实时异常检测系统 2015年08月27日
Cachet 是一个基于 Laravel 框架构建的系统状态信息应用。用户可以通过状态页来了解服务的运行状态,提供 RESTful API 方便进行集成。 在线演示:https://status.cachethq.io/...更多Cachet信息
Naarad 是高度可配置的系统分析工具,通过解析和生成时间序列数据用于可视化的展示。可对应用和服务进行性能分析。可收集如下数据: JVM 垃圾收集 (GC), System/Network (SAR), MySQL (Innotop), Jmeter (JTL/XML...更多Naarad信息
JFoxMX是国内第一个完整实现SUN JMX 1.2 规范的产品,实现了SUN JMX 最新的 1.2 规范,JMX 1.2 规范。更多JFoxMX信息
OpenNMS是一个企业级基于Java/XML的分布式网络和系统监控管理平台。OpenNMS是你管理网络的绝好工具,它能够显示你网络中各中终端和服务器的状态和配置,为你方便地管理网络提供有效的信息。 在线演示: http://d...更多OpenNMS信息
最新新闻: OpenNMS 1.13.3 发布,系统监控管理平台 2014年06月06日
Net-SNMP是一个免费的、开放源码的SNMP实现,以前称为UCD-SNMP。它包括agent和多个管理工具的源代码,支持多种扩展方式。 更多Net-snmp信息
最新新闻: Net-SNMP 5.7.3.rc3 发布,SNMP 软件 2014年11月12日
Ganglia是一个跨平台可扩展的,高 性能计算系统下的分布式监控系统,如集群和网格。它是基于分层设计,它使用广泛的技术,如XML数据代表,便携数据传输,RRDtool用于数据存储和可 视化。它利用精心设计的数据结构...更多Ganglia信息
最新新闻: Ganglia 3.7.1 发布,分布式监控系统 2015年04月02日
Zenoss Core是开源企业级IT管理软件-是智能监控软件,他允许IT管理员依靠单一的WEB控制台来监控网络架构的状态和健康度。Zenoss Core同时也是开源的网络与系统管理软件。 Zenoss Core的强大能力来自于深入的列表与...更多Zenoss Core信息
最新新闻: Zenoss Core 3.0.3 发布,企业级IT管理 2010年10月28日
Snort是美国Sourcefire公司开发的发布在GPL v2下的IDS(Intrusion Detection System)软件 Snort有 三种工作模式:嗅探器、数据包记录器、网络入侵检测系统模式。嗅探器模式仅仅是从网络上读取数据包并作为连续不...更多Snort信息
最新新闻: Snort 2.9.8.2 发布,入侵检测系统 2016年03月31日
Graphite 是一个用于采集网站实时信息并进行统计的开源项目,可用于采集多种网站服务运行状态信息。Graphite服务平均每分钟有4800次更新操作。实践已经证实要监测网站发发生什么是非常有用的,它的简单文本协议和...更多Graphite信息
NSClient++ 是 Nagios 监控系统在 Windows 下的客户端软件。更多NSClient++信息
最新新闻: NSClient++ 0.4.3.143 发布 2015年05月07日
CactiEZ 是一个基于 CentOS 的 Linux 发行版,主要的目的是为了简化 Cacti 监控系统的安装和配置,装好了就可以直接使用 Cacti。更多CactiEZ信息
nmon 工具运行于: AIX® 4.1.5、4.2.0、4.3.2 和 4.3.3(nmon Version 9a:该版本的功能已经确定,并且不会对其进行进一步的开发。) AIX 5.1、5.2 和 5.3(nmon Version 10:该版本现在支持 AIX 5.3 和基于 PO...更多nmon信息
NRPE是nagios的一个扩展,它被用于被监控的服务器上,向nagios监控平台提供该服务器的一些本地的情况。例如,cpu负载、内存使用、硬盘使用等等。NRPE可以称为nagios的for linux 客户端。 为 什么要使用这个客户端...更多NRPE信息
Centreon是一款开源的软件,主要用于与nagios搭配,通过页面管理nagios,通过第三方组件实现对网络,操作系统,应用程序的监控。 更多屏幕截图请看这里。更多Centreon信息
最新新闻: 【每日一博】nagios+centreon 总结之第一章 2014年09月13日
Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。 网络封包分析软件的功能可想像成 "电工技师使用电表来量测电流、电压、电阻"...更多Wireshark信息
最新新闻: Wireshark 2.0.3 发布下载 2016年04月27日
Munin 是一个非常好用安装和设置方便的监测软件,可监控核心系统资源,包括内存、磁盘、CPU 占用、服务器应用如 MySQL、Apache 和 Squid 等。更多Munin信息
最新新闻: Munin 2.99.3 发布,服务器监控 2015年09月20日
该软件官网已不存在 cacti中文企业版 本系统采用liunx与cacti集成,安装配置简单。 使用方法: root密码:CactiEZ cacti登录密码:admin 第一次登录强制更改密码 集成了我们最常用的插件,省去了我们自行安装的麻...更多Cacti中文企业版信息
JavaMelody 能够监测Java或Java EE应用程序服务器,并以图表的方式显示:Java内存和Java CPU使用情况,用户Session数量,JDBC连接数,和http请求、sql请求、jsp页面与业务接口方法(EJB3、Spring、 Guice)的执...更多JavaMelody信息
最新新闻: JavaMelody v1.60.0 发布,系统监控平台 2016年06月14日
Smokeping 主要是监视网络性能,包括常规的 ping,用 echoping 监视 www 服务器性能,监视 dns 查询性能,监视 ssh 性能等。底层也是 rrdtool 做支持,特点是画的图非常漂亮,网络丢包和延迟用颜色和阴影来表示。...更多SmokePing信息
iSpy 是目前能找的最好的开源视频监控软件,支持中文哦。更多iSpy信息
最新新闻: iSpy 6.3.7.0 发布,视频监控软件 2015年04月26日
Linux 自带了一个 watchdog 的实现,用于监视系统的运行,包括一个内核 watchdog module 和一个用户空间的 watchdog 程序 内核 watchdog 模块通过 /dev/watchdog 这个字符设备与用户空间通信。用户空间程序一旦打...更多watchdog信息
最新新闻: watchdog 5.8 发布,Linux看门狗 2010年03月23日
跟 top 监视系统活动状况相似,ntop 是一个用来实时监视网络使用情况的工具。由于 ntop 具有 Web 界面模式,因此无论是配置还是使用都很容易在短时间之内快速上手。更多ntop信息
最新新闻: 【每日一博】运用 Ntop 监控网络流量 2015年01月17日
Iperf 是一个网络性能测试工具。Iperf可以测试TCP和UDP带宽质量。Iperf可以测量最大TCP带宽,具有多种参数和UDP特性。Iperf可以报告带宽,延迟抖动和数据包丢失。 Iperf使用方法与参数说明 参数说明 -s 以ser...更多Iperf信息
Panabit 是目前国内开放度最高、免费、专业的应用层流量管理系统,特别针对P2P应用的识别与控制,截止2009年02月12日,已经支持实际主流应用200种以 上,并以两周更新一次特征库的速度持续更新(包括已支持协议和新...更多Panabit信息
Ethereal 自带许多协议的 decoder,简单,易用,基于winpcap的一个开源的软件.但是它的架构并不灵活,如何你要加入一个自己定义的的解码器,得去修改 Ethereal的代码,再重新编译,很烦琐.对于一般的明文 协议,没有什么问...更多pypcap信息
京东开源的基于Dubbo的调用跟踪系统 类似于Google的Dapper、类似于twitter的Zipkin、类似于淘宝的EagleEye。更多JD-Hydra信息
网络数据采集分析工具TcpDump 可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。tcpdump就是一种...更多TCPDUMP信息
最新新闻: TCPDUMP 4.7.4/1.7.3 发布,网络数据采集分析工具 2015年04月26日
Conky是一个X系统下的免费的,重量轻,系统监控的,即任何资料都能显示在您的桌面上。它可运行在Linux和BSD上。 功能和特点 ◆ 很多的操作系统信息(系统名 ,正常运行时间, CPU使用率,内存使用率,磁盘使用情况...更多Conky信息
最新新闻: Conky-colors 4.3.1.1 发布 2010年11月12日
SYSSTAT是一个软件包,包含监测系统性能及效率的一组工具,这些工具对于我们收集系统性能数据,比如CPU使用率、硬盘和网络吞吐数据,这些数据的收集和分析,有利于我们判断系统是否正常运行,是提高系统运行效率、...更多sysstat信息
lm_sensors的软件可以帮助我们来监控主板,CPU的工作电压,风扇转速、温度等数据。这些数据我们通常在主板的 BIOS也可以看到。当我们可以在机器运行的时候通过lm_sensors随时来监测着CPU的温度变化,可以预防呵保...更多lm-sensors信息
最新新闻: lm_sensors 3.3.5 发布,Linux 硬件监控 2014年01月25日
Monitorix 工具,這是一套可以監控系統狀態的工具,可監控的項目非常的多,你也可以自行設定要監控的服務,預設就可以分析 CPU 與記憶體使用率、磁碟存取使用率(Disk I/O Usage)、網路使用率(Network traffic an...更多Monitorix信息
最新新闻: Monitorix 3.8.1 发布,系统监控工具 2015年11月14日
NetXMS 是一个新的,发展迅速的系统监控工具, 在GPL2许可下发布。它可用于监测整个IT基础设施,从支持SNMP的硬件(如交换机和路由器)到您的服务器或者是应用程序。 NetXMS是一个非常可靠和强大的监测系统,使您...更多NetXMS信息
最新新闻: NetXMS 2.0.1 发布,系统监控工具 2016年01月07日
Pandora FMS 是一个 开源的应用程序 ,用来监测网站的各种活动。 如果一个网站超额或当机,如果网站内容改变,硬盘或CPU被远程服务调用时(通过SNMP 或 TCP/IP),以及其它情况。 Pandora FMS 可以运行于任何操作...更多Pandora FMS信息
最新新闻: Pandora FMS 5.0 发布,网站监控系统 2014年02月13日
Monit 是一个Linux/UNIX系统上开源的进程、文件、目录和文件系统监控和管理工具,可自动维护和修复一些错误的情况。更多Monit信息
最新新闻: Monit 5.8.1 发布,Unix 系统监控 2014年05月13日
glances 是一款用于 Linux、BSD 的开源命令行系统监视工具,它使用 Python 语言开发,能够监视 CPU、负载、内存、磁盘 I/O、网络流量、文件系统、系统温度等信息。 glances 可以为 Unix 和 Linux 性能专家提供监视...更多glances信息
最新新闻: glances —— Linux & BSD 的资源监控工具 2013年05月21日
ipmitool 是一种可用在 linux 系统下的命令行方式的 ipmi 平台管理工具,它支持 ipmi 1.5 规范(最新的规范为 ipmi 2.0),通过它可以实现获取传感器的信息、显示系统日志内容、网络远程开关机等功能。 IPMI(Int...更多ipmitool信息
最新新闻: [博] ipmitool 对 Linux 服务器进行IPMI管理 2012年11月13日
Cnyunwei-Cacti+Nagios 是一个基于CentOS 系统集成Cacti、Nagios、Centreon、Check_MK、Nconf的全自动安装系统,并集成Cacti的相关常用插件,及集成Nconf在线配置 Nagios,及集成简单实用的MySQL数据库管理工具p...更多Cacti+Nagios网络服务器监控系统信息
openSCADA是一个开源的监控和数据采集系统。它是独立于平台和一个现代化的系统设计,同时提供安全性和灵活性的基础上。更多OpenSCADA信息
最新新闻: openSCADA 1.0 发布,监控和数据采集系统 2013年03月19日
Nethogs 是一个终端下的网络流量监控工具,它的特别之处在于可以显示每个进程的带宽占用情况,这样可以更直观获取网络使用情况。它支持 IPv4 和 IPv6 协议、支持本地网卡及 PPP 链接。 # 安装:Ubuntu 官方源中就...更多Nethogs信息
Ushahidi是一个开源平台,任何人都可以利用移动短信、电子邮件、网站提供重要的信息、数据向该平台提供信息,Ushahidi对这些信息进行证实之后,通过可视化的方式呈现在地图上。更多Ushahidi信息
最新新闻: Ushahidi 3.1.0 发布,开源报警平台 2015年11月17日
NConf 是一个用来配置 Nagios 监控软件的Web接口项目。 快速上手指南:http://apps.sourceforge.net/mediawiki/nconf/index.php?title=Quick-start_guide...更多NConf信息
最新新闻: NConf 1.3.0 发布,Nagios 的 Web 配置接口 2011年12月13日
IPTraf是一个使用简单的网络状况监视工具。更多IPTraf信息
QuartzDesk 是一个 Java Quartz 调度器管理和监控的图形化工具,提供很多强大和专门的特性。旨在为使用 Quartz 的 Java 开发者提供查询和监控的功能。更多QuartzDesk信息
最新新闻: QuartzDesk 1.5.1 发布,Quartz 监控工具 2014年06月19日
Orbot 是免费的代理应用,保证其他应用更安全的使用网络。Orbot 使用 Tor 来加密你的网络传输和绕过世界各地的计算机来隐藏应用的网络流量。Tor 是免费开源的网络软件,可以保证个人的自由的隐私。Orbot 是创建真...更多Orbot信息
PacketFence是开源NAC (网络接入控制) 中的佼佼者,它可靠、容易配置,且构建于未修改的开源代码之上(Fedora, LAMP, Perl, and Snort)。PacketFence的设计目的是要在不同种类的环境中运行,并且它使用了“不可知厂...更多Packetfence信息
最新新闻: PacketFence 5.0 发布,网络接入控制 2015年04月19日
Falcon-Web服务器文件监控平台 ============================ Falcon是一款基于inotify-tools 开发的Web服务器文件安全监控平台,能够实时监控Web目录文件变化(新增,修改,删除),判断文件内容是否包含恶意代码,...更多Falcon信息
最新新闻: OSC源创会(北京)Falcon 主题演讲 PPT 2012年06月15日
Jwebap是一个用于J2EE工程(EJB以及WebModule系统)进行性能监控的组件,它有几个特点: 1)基于ASM实现类的静态增强,可以无缝的部署于J2EE系统,对系统的开销几乎可以忽略 2) 部署和使用非常的简单,整个Jweba...更多Jwebap信息
最新新闻: Jwebap 0.6.0版本发布 2009年03月04日
这款Web网络管理工具使用SNMP收集大型网络中的连接和配置数据。利用该工具,网管员可以利用最终用户的IP或MAC地址来定位交换端口。所收集的数据存储在SQL数据库中,而像思科Discovery协议这样的二层拓扑协议可自动...更多NetDisco信息
nagvis是一个著名网络管理系统nagios的可视插件。nagvis可用于各种动画形象(如图纸输出网络)用nagios数据。更多NagVis信息
1、客户端日志上报和反向提取
2、服务器集群日志管理系统
一、Facebook Scribe
贡献者:Facebook
简介:Scribe是Facebook开源的日志收集系统,在Facebook内部已经得到大量的应用。它能够从各种日志源上收集日志,存储到一个中央存储系统(可以是NFS,分布式文件系统等)上,以便于进行集中统计分析处理。它为日志的“分布式收集,统一处理”提供了一个可扩展的,高容错的方案。当中央存储系统的网络或者机器出现故障时,scribe会将日志转存到本地或者另一个位置,当中央存储系统恢复后,scribe会将转存的日志重新传输给中央存储系统。其通常与Hadoop结合使用,scribe用于向HDFS中push日志,而Hadoop通过MapReduce作业进行定期处理。
Scribe的系统架构
代码托管:https://github.com/facebook/scribe
贡献者:Cloudera
简介:Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。
Flume提供了从console(控制台)、RPC(Thrift-RPC)、text(文件)、tail(UNIX tail)、syslog(syslog日志系统,支持TCP和UDP等2种模式),exec(命令执行)等数据源上收集数据的能力。
当前Flume有两个版本Flume 0.9X版本的统称Flume-og,Flume1.X版本的统称Flume-ng。由于Flume-ng经过重大重构,与Flume-og有很大不同,使用时请注意区分。
Cloudera Flume构架:
官网:http://flume.apache.org/
三、logstash
简介:logstash 是一个应用程序日志、事件的传输、处理、管理和搜索的平台。你可以用它来统一对应用程序日志进行收集管理,提供 Web 接口用于查询和统计。他可以对你的日志进行收集、分析,并将其存储供以后使用(如,搜索),您可以使用它。说到搜索,logstash带有一个web界面,搜索和展示所有日志。
官网:http://www.logstash.net/
四、kibana
简介:Kibana 是一个为 Logstash 和 ElasticSearch 提供的日志分析的 Web 接口。可使用它对日志进行高效的搜索、可视化、分析等各种操作。kibana 也是一个开源和免费的工具,他可以帮助您汇总、分析和搜索重要数据日志并提供友好的web界面。他可以为 Logstash 和 ElasticSearch 提供的日志分析的 Web 界面。
主页: http://kibana.org/
代码托管: https://github.com/rashidkpc/Kibana/downloads
一、StormMQ
简介:MQMessageQueue消息队列产品 StormMQ,是一种服务程序。
官网:http://stormmq.com/
二、ZeroMQ
简介:这是个类似于Socket的一系列接口,他跟Socket的区别是:普通的socket是端到端的(1:1的关系),而ZMQ却是可以N:M 的关系,人们对BSD套接字的了解较多的是点对点的连接,点对点连接需要显式地建立连接、销毁连接、选择协议(TCP/UDP)和处理错误等,而ZMQ屏蔽了这些细节,让你的网络编程更为简单。ZMQ用于node与node间的通信,node可以是主机或者是进程。
引用官方的说法: “ZMQ(以下ZeroMQ简称ZMQ)是一个简单好用的传输层,像框架一样的一个socket library,他使得Socket编程更加简单、简洁和性能更高。是一个消息处理队列库,可在多个线程、内核和主机盒之间弹性伸缩。ZMQ的明确目标是“成为标准网络协议栈的一部分,之后进入Linux内核”。现在还未看到它们的成功。但是,它无疑是极具前景的、并且是人们更加需要的“传统”BSD套接字之上的一 层封装。ZMQ让编写高性能网络应用程序极为简单和有趣。”
官网:http://zeromq.org/
三、RabbitMQ
简介:RabbitMQ是一个受欢迎的消息代理,通常用于应用程序之间或者程序的不同组件之间通过消息来进行集成。本文简单介绍了如何使用 RabbitMQ,假定你已经配置好了rabbitmq服务器。
RabbitMQ是用Erlang,对于主要的编程语言都有驱动或者客户端。我们这里要用的是Java,所以先要获得Java客户端。
像RabbitMQ这样的消息代理可用来模拟不同的场景,例如点对点的消息分发或者订阅/推送。我们的程序足够简单,有两个基本的组件,一个生产者用于产生消息,还有一个消费者用来使用产生的消息。
官网:https://www.rabbitmq.com/
四、Apache ActiveMQ
简介:ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。
特性:
⒈ 多种语言和协议编写客户端。语言: Java,C,C++,C#,Ruby,Perl,Python,PHP。应用协议: OpenWire,Stomp REST,WS Notification,XMPP,AMQP
⒉ 完全支持JMS1.1和J2EE 1.4规范 (持久化,XA消息,事务)
⒊ 对Spring的支持,ActiveMQ可以很容易内嵌到使用Spring的系统里面去,而且也支持Spring2.0的特性
⒋ 通过了常见J2EE服务器(如 Geronimo,JBoss 4,GlassFish,WebLogic)的测试,其中通过JCA 1.5 resource adaptors的配置,可以让ActiveMQ可以自动的部署到任何兼容J2EE 1.4 商业服务器上
⒌ 支持多种传送协议:in-VM,TCP,SSL,NIO,UDP,JGroups,JXTA
⒍ 支持通过JDBC和journal提供高速的消息持久化
⒎ 从设计上保证了高性能的集群,客户端-服务器,点对点
⒏ 支持Ajax
⒐ 支持与Axis的整合
⒑ 可以很容易得调用内嵌JMS provider,进行测试
官网:http://activemq.apache.org/
五、Jafka
贡献者:LinkedIn
简介:Jafka 是一个开源的、高性能的、跨语言分布式消息系统,使用GitHub托管。Jafka 最早是由Apache孵化的Kafka(由LinkedIn捐助给Apache)克隆而来。由于是一个开放式的数据传输协议,因此除了Java开发语言受到支持,Python、Ruby、C、C++等其他语言也能够很好的得到支持。
特性:
1、消息持久化非常快,服务端存储消息的开销为O(1),并且基于文件系统,能够持久化TB级的消息而不损失性能。
2、吞吐量取决于网络带宽。
3、完全的分布式系统,broker、producer、consumer都原生自动支持分布式。自动实现复杂均衡。
4、内核非常小,整个系统(包括服务端和客户端)只有一个272KB的jar包,内部机制也不复杂,适合进行内嵌或者二次开发 。整个服务端加上依赖组件共3.5MB。
5、消息格式以及通信机制非常简单,适合进行跨语言开发。目前自带的Python3.x的客户端支持发送消息和接收消息。
官网:http://kafka.apache.org/
六、Apache Kafka
贡献者:LinkedIn
简介:Apache Kafka是由Apache软件基金会开发的一个开源消息系统项目,由Scala写成。Kafka最初是由LinkedIn开发,并于2011年初开源。2012年10月从Apache Incubator毕业。该项目的目标是为处理实时数据提供一个统一、高通量、低等待的平台。
Kafka是一个分布式的、分区的、多复本的日志提交服务。它通过一种独一无二的设计提供了一个消息系统的功能。
Kafka集群可以在一个指定的时间内保持所有发布上来的消息,不管这些消息有没有被消费。打个比方,如果这个时间设置为两天,那么在消息发布的两天以内,这条消息都是可以被消费的,但是在两天后,这条消息就会被系统丢弃以释放空间。Kafka的性能不会受数据量的大小影响,因此保持大量的数据不是一个问题。
官网:http://kafka.apache.org/
一、ZooKeeper
贡献者:Google
简介:ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、名字服务、分布式同步、组服务等。
ZooKeeper是以Fast Paxos算法为基础的,paxos算法存在活锁的问题,即当有多个proposer交错提交时,有可能互相排斥导致没有一个proposer能提交成功,而Fast Paxos作了一些优化,通过选举产生一个leader,只有leader才能提交propose,具体算法可见Fast Paxos。因此,要想弄懂ZooKeeper首先得对Fast Paxos有所了解。
架构:
官网:http://zookeeper.apache.org/
(Remote Procedure Call Protocol)——远程过程调用协议
一、Apache Avro
简介:Apache Avro是Hadoop下的一个子项目。它本身既是一个序列化框架,同时也实现了RPC的功能。Avro官网描述Avro的特性和功能如下:
相比于Apache Thrift 和Google的Protocol Buffers,Apache Avro具有以下特点:
官网:http://avro.apache.org/
二、Facebook Thrift
贡献者:Facebook
简介:Thrift源于大名鼎鼎的facebook之手,在2007年facebook提交Apache基金会将Thrift作为一个开源项目,对于当时的facebook来说创造thrift是为了解决facebook系统中各系统间大数据量的传输通信以及系统之间语言环境不同需要跨平台的特性。
thrift可以支持多种程序语言,例如: C++, C#, Cocoa, Erlang, Haskell, Java, Ocami, Perl, PHP, Python, Ruby, Smalltalk. 在多种不同的语言之间通信thrift可以作为二进制的高性能的通讯中间件,支持数据(对象)序列化和多种类型的RPC服务。
Thrift适用于程序对程 序静态的数据交换,需要先确定好他的数据结构,他是完全静态化的,当数据结构发生变化时,必须重新编辑IDL文件,代码生成,再编译载入的流程,跟其他IDL工具相比较可以视为是Thrift的弱项,Thrift适用于搭建大型数据交换及存储的通用工具,对于大型系统中的内部数据传输相对于JSON和xml无论在性能、传输大小上有明显的优势。
Thrift 主要由5个部分组成:
· 类型系统以及 IDL 编译器:负责由用户给定的 IDL 文件生成相应语言的接口代码
· TProtocol:实现 RPC 的协议层,可以选择多种不同的对象串行化方式,如 JSON, Binary。
· TTransport:实现 RPC 的传输层,同样可以选择不同的传输层实现,如socket, 非阻塞的 socket, MemoryBuffer 等。
· TProcessor:作为协议层和用户提供的服务实现之间的纽带,负责调用服务实现的接口。
· TServer:聚合 TProtocol, TTransport 和 TProcessor 几个对象。
上述的这5个部件都是在 Thrift 的源代码中通过为不同语言提供库来实现的,这些库的代码在 Thrift 源码目录的 lib 目录下面,在使用 Thrift 之前需要先熟悉与自己的语言对应的库提供的接口。
Facebook Thrift构架:
官网:http://thrift.apache.org/
一、Nagios
简介:Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
Nagios可运行在Linux/Unix平台之上,同时提供一个可选的基于浏览器的WEB界面以方便系统管理人员查看网络状态,各种系统问题,以及日志等等。
官网:http://www.nagios.org/
二、Ganglia
简介:Ganglia是UC Berkeley发起的一个开源集群监视项目,设计用于测量数以千计的节点。Ganglia的核心包含gmond、gmetad以及一个Web前端。主要是用来监控系统性能,如:cpu 、mem、硬盘利用率, I/O负载、网络流量情况等,通过曲线很容易见到每个节点的工作状态,对合理调整、分配系统资源,提高系统整体性能起到重要作用。
官网:http://ganglia.sourceforge.net/
三、Apache Ambari
简介:Apache Ambari是一种基于Web的工具,支持Apache Hadoop集群的供应、管理和监控。Ambari目前已支持大多数Hadoop组件,包括HDFS、MapReduce、Hive、Pig、 Hbase、Zookeper、Sqoop和Hcatalog等。
Apache Ambari 支持HDFS、MapReduce、Hive、Pig、Hbase、Zookeper、Sqoop和Hcatalog等的集中管理。也是5个顶级hadoop管理工具之一。
Ambari主要取得了以下成绩:
Ambari使用Ganglia收集度量指标,用Nagios支持系统报警,当需要引起管理员的关注时(比如,节点停机或磁盘剩余空间不足等问题),系统将向其发送邮件。
此外,Ambari能够安装安全的(基于Kerberos)Hadoop集群,以此实现了对Hadoop 安全的支持,提供了基于角色的用户认证、授权和审计功能,并为用户管理集成了LDAP和Active Directory。
官网:http://ambari.apache.org/
一、LevelDB
贡献者:Jeff Dean和Sanjay Ghemawat
简介:Leveldb是一个google实现的非常高效的kv数据库,目前的版本1.2能够支持billion级别的数据量了。 在这个数量级别下还有着非常高的性能,主要归功于它的良好的设计。特别是LMS算法。LevelDB 是单进程的服务,性能非常之高,在一台4核Q6600的CPU机器上,每秒钟写数据超过40w,而随机读的性能每秒钟超过10w。
Leveldb框架:
官网:http://code.google.com/p/leveldb/
二、SSTable
简介:如果说Protocol Buffer是谷歌独立数据记录的通用语言 ,那么有序字符串表(SSTable,Sorted String Table)则是用于存储,处理和数据集交换的最流行的数据输出格式。正如它的名字本身,SSTable是有效存储大量键-值对的简单抽象,对高吞吐量顺序读/写进行了优化。
SSTable是Bigtable中至关重要的一块,对于LevelDB来说也是如此。
三、RecordIO
贡献者:Google
简介:我们大家都在用文件来存储数据。文件是存储在磁盘上的。如果在一些不稳定的介质上,文件很容损坏。即时文件某个位置出现一点小小的问题,整个文件就废了。
下面我来介绍Google的一个做法,可以比较好的解决这个问题。那就是recordio文件格式。recoidio的存储单元是一个一个record。这个record可以根据业务的需要自行定义。但Google有一种建议的处理方式就是使用protobuf。
reocordio底层的格式其实很简单。一个record由四部分组成:
详细格式如下图所示:
到这里,大家可能已经知道,recordio之所以能对付坏数据,其实就是在这个MagicNumber(校验值)。
四、Flat Buffers
贡献者:Google
简介:谷歌开源高效、跨平台的序列化库FlatBuffers。
该库的构建是专门为游戏开发人员的性能需求提供支持,它将序列化数据存储在缓存中,这些数据既可以存储在文件中,又可以通过网络原样传输,而不需要任何解析开销。
FlatBuffers有如下一些关键特性——
与Protocol Buffers或JSON Parsing这样的可选方案相比,FlatBuffers的优势在于开销更小,这主要是由于它没有解析过程。
代码托管:https://github.com/google/flatbuffers
五、Protocol Buffers
贡献者:Google
简介:Protocol Buffers是Google公司开发的一种数据描述语言,类似于XML能够将结构化数据序列化,可用于数据存储、通信协议等方面。它不依赖于语言和平台并且可扩展性极强。现阶段官方支持C++、JAVA、Python等三种编程语言,但可以找到大量的几乎涵盖所有语言的第三方拓展包。
通过它,你可以定义你的数据的结构,并生成基于各种语言的代码。这些你定义的数据流可以轻松地在传递并不破坏你已有的程序。并且你也可以更新这些数据而现有的程序也不会受到任何的影响。
Protocol Buffers经常被简称为protobuf。
官网:http://code.google.com/p/protobuf/
六、Consistent Hashing(哈希算法)
简介:一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT)实现算法,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简 单哈希算法带来的问题,使得分布式哈希(DHT)可以在P2P环境中真正得到应用。
一致性hash算法提出了在动态变化的Cache环境中,判定哈希算法好坏的四个定义:
1、平衡性(Balance):平衡性是指哈希的结果能够尽可能分布到所有的缓冲中去,这样可以使得所有的缓冲空间都得到利用。很多哈希算法都能够满足这一条件。
2、单调性(Monotonicity):单调性是指如果已经有一些内容通过哈希分派到了相应的缓冲中,又有新的缓冲加入到系统中。哈希的结果应能够保证原有已分配的内容可以被映射到原有的或者新的缓冲中去,而不会被映射到旧的缓冲集合中的其他缓冲区。
3、分散性(Spread):在分布式环境中,终端有可能看不到所有的缓冲,而是只能看到其中的一部分。当终端希望通过哈希过程将内容映射到缓冲上时,由于不同终端所见的缓冲范围有可能不同,从而导致哈希的结果不一致,最终的结果是相同的内容被不同的终端映射到不同的缓冲区中。这种情况显然是应该避免的,因为它导致相同内容被存储到不同缓冲中去,降低了系统存储的效率。分散性的定义就是上述情况发生的严重程度。好的哈希算法应能够尽量避免不一致的情况发生,也就是尽量降低分散性。
4、负载(Load):负载问题实际上是从另一个角度看待分散性问题。既然不同的终端可能将相同的内容映射到不同的缓冲区中,那么对于一个特定的缓冲区而言,也可能被不同的用户映射为不同 的内容。与分散性一样,这种情况也是应当避免的,因此好的哈希算法应能够尽量降低缓冲的负荷。
在分布式集群中,对机器的添加删除,或者机器故障后自动脱离集群这些操作是分布式集群管理最基本的功能。如果采用常用的hash(object)%N算法,那么在有机器添加或者删除后,很多原有的数据就无法找到了,这样严重的违反了单调性原则。
七、Netty
贡献者:JBOSS
简介:Netty是由JBOSS提供的一个java开源框架。Netty提供异步的、事件驱动的网络应用程序框架和工具,用以快速开发高性能、高可靠性的网络服务器和客户端程序。
也就是说,Netty 是一个基于NIO的客户,服务器端编程框架,使用Netty 可以确保你快速和简单的开发出一个网络应用,例如实现了某种协议的客户,服务端应用。Netty相当简化和流线化了网络应用的编程开发过程,例如,TCP和UDP的socket服务开发。
“快速”和“简单”并不意味着会让你的最终应用产生维护性或性能上的问题。Netty 是一个吸收了多种协议的实现经验,这些协议包括FTP,SMTP,HTTP,各种二进制,文本协议,并经过相当精心设计的项目,最终,Netty 成功的找到了一种方式,在保证易于开发的同时还保证了其应用的性能,稳定性和伸缩性。
官网:http://netty.io/
八、BloomFilter
简介:Bloom filter 是由 Howard Bloom 在 1970 年提出的二进制向量数据结构,它具有很好的空间和时间效率,被用来检测一个元素是不是集合中的一个成员。如果检测结果为是,该元素不一定在集合中;但如果检测结果为否,该元素一定不在集合中。因此Bloom filter具有100%的召回率。这样每个检测请求返回有“在集合内(可能错误)”和“不在集合内(绝对不在集合内)”两种情况,可见 Bloom filter 是牺牲了正确率和时间以节省空间。
Bloom filter 优点就是它的插入和查询时间都是常数,另外它查询元素却不保存元素本身,具有良好的安全性。
一、Nutch
简介:Nutch 是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。
尽管Web搜索是漫游Internet的基本要求, 但是现有web搜索引擎的数目却在下降. 并且这很有可能进一步演变成为一个公司垄断了几乎所有的web搜索为其谋取商业利益.这显然 不利于广大Internet用户.
Nutch为我们提供了这样一个不同的选择. 相对于那些商用的搜索引擎, Nutch作为开放源代码 搜索引擎将会更加透明, 从而更值得大家信赖. 现在所有主要的搜索引擎都采用私有的排序算法, 而不会解释为什么一个网页会排在一个特定的位置. 除此之外, 有的搜索引擎依照网站所付的 费用, 而不是根据它们本身的价值进行排序. 与它们不同, Nucth没有什么需要隐瞒, 也没有 动机去扭曲搜索的结果. Nutch将尽自己最大的努力为用户提供最好的搜索结果.
Nutch目前最新的版本为version v2.2.1。
官网:https://nutch.apache.org/
二、Lucene
开发者:Doug Cutting(Hadoop之父,你懂的)
简介:Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,即它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。
官网:http://lucene.apache.org/
三、SolrCloud
简介:SolrCloud是Solr4.0版本以后基于Solr和Zookeeper的分布式搜索方案。SolrCloud是Solr的基于Zookeeper一种部署方式。Solr可以以多种方式部署,例如单机方式,多机Master-Slaver方式。
原理图:
SolrCloud有几个特色功能:
集中式的配置信息使用ZK进行集中配置。启动时可以指定把Solr的相关配置文件上传
Zookeeper,多机器共用。这些ZK中的配置不会再拿到本地缓存,Solr直接读取ZK中的配置信息。配置文件的变动,所有机器都可以感知到。另外,Solr的一些任务也是通过ZK作为媒介发布的。目的是为了容错。接收到任务,但在执行任务时崩溃的机器,在重启后,或者集群选出候选者时,可以再次执行这个未完成的任务。
自动容错SolrCloud对索引分片,并对每个分片创建多个Replication。每个Replication都可以对外提供服务。一个Replication挂掉不会影响索引服务。更强大的是,它还能自动的在其它机器上帮你把失败机器上的索引Replication重建并投入使用。
近实时搜索立即推送式的replication(也支持慢推送)。可以在秒内检索到新加入索引。
查询时自动负载均衡SolrCloud索引的多个Replication可以分布在多台机器上,均衡查询压力。如果查询压力大,可以通过扩展机器,增加Replication来减缓。
自动分发的索引和索引分片发送文档到任何节点,它都会转发到正确节点。
事务日志事务日志确保更新无丢失,即使文档没有索引到磁盘。
四、Solr
简介:Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
Solr是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。
官网:https://lucene.apache.org/solr/
五、ElasticSearch
简介:ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二最流行的企业搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
官网:http://www.elasticsearch.org/
六、Sphinx
简介:Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL也设计了一个存储引擎插件。
Sphinx单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级)。Sphinx创建索引的速度为:创建100万条记录的索引只需 3~4分钟,创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引,重建一次只需几十秒。
官网:http://sphinxsearch.com
七、SenseiDB
贡献者:linkedin
简介:SenseiDB是一个NoSQL数据库,它专注于高更新率以及复杂半结构化搜索查询。熟悉Lucene和Solor的用户会发现,SenseiDB背后有许多似曾相识的概念。SenseiDB部署在多节点集群中,其中每个节点可以包括N块数据片。Apache Zookeeper用于管理节点,它能够保持现有配置,并可以将任意改动(如拓扑修改)传输到整个节点群中。SenseiDB集群还需要一种模式用于定义将要使用的数据模型。
从SenseiDB集群中获取数据的唯一方法是通过Gateways(它 没有“INSERT”方法)。每个集群都连接到一个单一gateway。你需要了解很重要的一点是,由于SenseiDB本身没法处理原子性 (Atomicity)和隔离性(Isolation),因此只能通过外部在gateway层进行限制。另外,gateway必须确保数据流按照预期的方 式运作。内置的gateway有以下几种形式:
官网:http://senseidb.com
一、Mahout
简介:Apache Mahout 是 Apache Software Foundation (ASF) 开发的一个全新的开源项目,其主要目标是创建一些可伸缩的机器学习算法,供开发人员在 Apache 在许可下免费使用。该项目已经发展到了它的最二个年头,目前只有一个公共发行版。Mahout 包含许多实现,包括集群、分类、CP 和进化程序。此外,通过使用 Apache Hadoop 库,Mahout 可以有效地扩展到云中。
虽然在开源领域中相对较为年轻,但 Mahout 已经提供了大量功能,特别是在集群和 CF 方面。Mahout 的主要特性包括:
官网:http://mahout.apache.org/
IaaS(Infrastructure as a Service),即基础设施即服务。
一、OpenStack
简介:OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目。
OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成。
6个核心项目:Nova(计算,Compute),Swift(对象存储,Object),Glance(镜像,Image),Keystone(身份,Identity),Horizon(自助门户,Dashboard),Quantum & Melange(网络&地址管理),另外还有若干社区项目,如Rackspace(负载均衡)、Rackspace(关系型数据库)。
相关阅读:
什么是OpenStack?
成功部署OpenStack的十大要点
官网:https://www.openstack.org/
二、Docker
贡献者:dotCloud
简介:Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)。几乎没有性能开销,可以很容易地在机器和数据中心中运行。最重要的是,他们不依赖于任何语言、框架或包括系统。
官网:http://www.docker.io/
三、Kubernetes
贡献者:Google
简介:Kubernetes是Google开源的容器集群管理系统。它构建Ddocker技术之上,为容器化的应用提供资源调度、部署运行、服务发现、扩容缩容等整一套功能,本质上可看作是基于容器技术的mini-PaaS平台。
Kubernetes从另一个角度对资源进行抽象,它让开发人员和管理人员共同着眼于服务的行为和性能的提升,而不是仅仅关注对单一的组件或者是基础资源。
那么Kubernetes集群到底提供了哪些单一容器所没有功能?它主要关注的是对服务级别的控制而并非仅仅是对容器级别的控制,Kubernetes提供了一种“机智”的管理方式,它将服务看成一个整体。在Kubernete的解决方案中,一个服务甚至可以自我扩展,自我诊断,并且容易升级。例如,在Google中,我们使用机器学习技术来保证每个运行的服务的当前状态都是最高效的。
代码托管:https://github.com/GoogleCloudPlatform/kubernetes/
四、Imctfy
贡献者:Google
简介:Google开源了自己所用Linux容器系统的开源版本lmctfy,读音为lem-kut-fee。包括一个C++库(使用了C++11,文档可以参考头文件)和命令行界面。目前的版本是0.1,只提供了CPU与内存隔离。项目还在密集开发中。
mctfy本身是针对某些特定使用场景设计和实现的,目前拥有一台机器上所有容器时运行情况最好,不推荐与LXC和其他容器系统一起使用(虽然也可行)。已在Ubuntu 12.04+和Ubuntu 3.3与3.8内核上测试。
代码托管:https://github.com/google/Imctfy/
一、Dapper
贡献者:Google
简介:Dapper是一个轻量的ORM(对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping)。并不单纯的是一个DBHelper.因为在Dapper中数据其实就是一个对象。Dapper扩展与IDbConnection上,所以事实上它的倾入性很低。我用了StructureMap。如果不喜欢可以自己更换,或者自己实现下。
代码就一个SqlMapper.cs文件,主要是IDbConnection的扩展方法,编译后就40K的一个很小的dll。
特性:
官方站点 http://code.google.com/p/dapper-dot-net/
代码托管:http://bigbully.github.io/Dapper-translation/
二、Zipkin
贡献者:Twitter
简介:Zipkin (分布式跟踪系统)是 Twitter 的一个开源项目,允许开发者收集 Twitter 各个服务上的监控数据,并提供查询接口。该系统让开发者可通过一个 Web 前端轻松的收集和分析数据,例如用户每次请求服务的处理时间等,可方便的监测系统中存在的瓶颈。
官方网站:http://twitter.github.io/zipkin/
代码托管:https://github.com/twitter/zipkin/