咨询电话

首页 > 最新资讯 > 正文

使用内存数据结构的现代应用程序设计 置顶

发表于2017-03-18 14:18:29 次查看
让我们快速看一下传统系统的架构。传统的应用程序架构使用具有同步读写操作的数据存储。这对于数据一致性和数据持久性非常有用,但是如果队列中有大量事务正在等待,则很容易遇到瓶颈。考虑下面的传统架构。

ImageTraditional应用程序架构标题

大容量事务处理

内存数据网格在环境中添加一个附加层,它使用服务器的随机存取存储器(RAM)来存储应用程序所需的大部分数据。内存数据网格位于应用程序服务器和数据存储之间。内存数据网格使用活动内存中客户端经常访问的数据的缓存,然后可以在需要时访问持久存储,甚至异步地从持久存储发送和接收更新。具有内存数据网格的应用程序体系结构如下所示。

具有内存数据网格的应用程序体系结构

通过使用内存数据网格,数据移动更接近应用程序端点。这种方法减少了响应时间,并且可以将事务时间从几秒减少到几分之一秒。这样,应用程序可以支持极大量的涉及TB级操作数据的并发事务,为客户提供更快,更可靠的事务体验。它也是一种比传统RDBMS更现代的可扩展数据管理系统,能够随着需求的增加而弹性扩展。

弹性Web加速

使用像Apache Ignite这样的内存中数据网格,您可以为Web应用程序提供容错功能,并加快Web应用程序的性能。在不更改任何代码的情况下,您可以通过缓存在Web应用程序之间共享会话状态。

图像tFault公差网络应用程序

上述方法提供了系统的最高水平的高可用性和客户体验。由于Ignite是内存中解决方案,用户Web会话的Web会话群集和复制机制的性能非常高。

事件处理和实时分析

数据告诉你什么是你的业务在背景上的事情现在的故事。使用IoT作为连续数据源,利用热数据的机会比以往任何时候都更大。传统的数据管理系统不能足够快地处理大数据,以便在发生重要事件时通知业务:例如在线信用卡欺诈检测或风险计算。Apache Ignite允许以可扩展和容错方式在内存中处理连续无止境的数据流,而不是在数据到达数据库之后分析数据。

复杂事件通知和处理

这不仅使您能够关联关系和检测有意义的模式从显着更多的数据,您可以更快,更有效地处理它; Apache Ignite内存中数据网格可以管理大量的传入数据,并在服务器发生更改时将通知推送到业务应用程序。Apache Ignite连续查询功能允许系统快速访问大量传入永不结束的数据并采取行动。

分布式时尚中的微服务

微服务架构具有许多优点,并且实现了在实际中用单片代码库实现极其难以实现的模块化水平。像Apache Ignite这样的内存数据网格可以为同一分布式集群中的相应微服务提供独立的缓存节点,并且比传统方法具有一些优势。

Apache Ignite微服务架构

它允许您使用数据fabric /网格资源的最大用量。在内存中集群上运行的服务比基于磁盘的应用程序服务器快得多。基于Apache Ignite微服务的服务网格提供在集群中自动部署任意数量的分布式服务实例。

大数据加速器

Hadoop已经被广泛地用于其经济地存储和分析大数据集的能力,并且已经长期超过了新生技术的点。然而,它的批处理调度开销和基于磁盘的数据存储使得它不适合用于分析生产环境中的实时数据。限制Hadoop和Map / Reduce的性能扩展的一个主要因素是Hadoop依赖于生成大量输入/输出(I / O)文件的文件系统。一种替代方案是在存储器中存储所需的分布式数据。将映射/减少内存中的数据与其所需的数据相消消除了文件I / O延迟。

内存映射/减少

Apache Ignite提供了一组有用的组件,允许在内存Hadoop作业执行和文件系统操作。Apache Ignite Hadoop加速器可以自动部署所有必要的可执行程序和库,以跨JVM执行MapReduce,大大减少了启动时间,直到毫秒。这通过避免访问辅助存储器的延迟来加速分析。此外,因为执行引擎与内存数据网格集成,所以可以有效地将托管在数据网格内的键/值对读入执行引擎以最小化访问时间。

缓存即服务

需要太长时间加载的数据驱动应用程序无聊和令人沮丧的使用。如果页面在加载时暂停,五分之四的在线用户将点击。内存数据网格可以在整个组织中提供公共缓存层,这可以允许多个应用程序访问受管理的内存缓存。

缓存即服务

通过将缓存层与应用程序分离,可以将缓存层与应用程序隔离。组织中的任何应用程序(Java,.Net,C ++)都可以从缓存中存储和读取数据。通过使用内存数据网格作为服务,不需要为每个应用程序构建和部署本地缓存基础结构。应用程序可以使用Apache Ignite作为缓存或写入其数据库或将数据从数据库加载到缓存中。它消除了一百或更多单独的缓存基础设施的管理的复杂性。

这些是内存网格(如Apache Ignite)作为一个重要的架构组件,用于转变企业使用其数据进行业务的方式。我们通过这本书更深入地介绍了很多内存中数据网格用例和应用程序体系结构,  本文的部分内容。

在线客服
  • 点击这里给我发消息
  • 点击这里给我发消息
  • 微信扫一扫
  • 官方微信