你需要一个Apache Geode快速介绍吗?让我们通过试用它的基本特点和功能进行简短的旅行吧。
第1步: 安装Apache Geode.
查看 如何安装Apache Geode
第2步: 使用 gfsh命令启动Locator.
在命令窗口,用gfsh命令行界面启动一个locator。apache geode gfsh 提供一个单一,直观的命令行界面,你查以在里面运行,管理,监控 geode进程,数据,和应用。查看 gfsh (Geode SHell).
locator是一个geode进程,它告诉一个新连接的成员其它正在运行的成员的位置,并为服务器提供负载均衡。
默认情况下,locator,启动一个JMX管理器,用于监测和管理geode集群。集群配置服务使用locator为所有
成员来保存和分发信群配置信息。看查运行geode locator进程 和 集群配置服务概述。
1.创建工作目录(例如gemfire
),并切换到此目录。gfsh
命令保存locator和server的工作目录和日志在这个目录中。
2.在命令行中键入gfsh启动它,(
如果你是在windows系统中则使用 gfsh.bat
)。
_________________________ __
/ _____/ ______/ ______/ /____/ /
/ / __/ /___ /_____ / _____ /
/ /__/ / ____/ _____/ / / / /
/______/_/ /______/_/ /_/ v8.2.0
Monitor and Manage GemFire
gfsh>
3.在提示下键入
gfsh>start locator --name=locator1
Starting a GemFire Locator in /home/username/my_gemfire/locator1...
.................................
Locator in /home/username/my_gemfire/locator1 on ubuntu.local[10334] as locator1 is currently online.
Process ID: 3529
Uptime: 18 seconds
GemFire Version: 8.2.0
Java Version: 1.8.0_60
Log File: /home/username/my_gemfire/locator1/locator1.log
JVM Arguments: -Dgemfire.enable-cluster-configuration=true -Dgemfire.load-cluster-configuration-from-dir=false
-Dgemfire.launcher.registerSignalHandlers=true -Djava.awt.headless=true
-Dsun.rmi.dgc.server.gcInterval=9223372036854775806
Class-Path: /home/username/Pivotal_GemFire_820_b17919_Linux/lib/gemfire.jar:
/home/username/Pivotal_GemFire_820_b17919_Linux/lib/locator-dependencies.jar
Successfully connected to: [host=ubuntu.local, port=1099]
Cluster configuration service is up and running.
4.启动pulse
启动基于浏览器的pulse监控工具,pulse是一个web应用,它提供了图形化的监控界面,监控着geode集群、成员、数据区域的重要的健康状态和性能。查看 Geode Pulse。
gfsh>start pulse
这个命令启动pulse并自动连接到locator的JMX管理器,在pulse的登录页面,使用默认的用户名admin和密码admin进行登录.
pulse现在显示了你刚刚启动的locator1
第4步:启动服务器.
一个geode服务器是一个进程,它作为一个长期的,可配置的集群(也被称为分布式系统)中的一个成员运行着。geode服务器主要用于存放长期存放的数据区域,也用于运行标准的geode进程,例如在客户端/服务器配置中的服务器。查看 运行geode服务器进程。
启动缓存服务器
gfsh>start server --name=server1 --server-port=40411
此命令启动一个服务器,名称为server1,运行在40411端口
在Pulse观察变化(新的成员和服务器)试着展开分布式系统图标来以图形化方式查看locator和服务器。
第5步:创建一个复制的,持久化的区域.
在这一步你使用gfsh命令行创建数据区域。区域是geode集群的核心基石并提供了管理数据的方法。
你用来练习的区域使用了复制功能在集群成员中复制数据,并使用了持久化装数据保存到了磁盘。
1.创建一个复制,持久的区域。
gfsh>create region --name=regionA --type=REPLICATE_PERSISTENT
Member | Status
------- | --------------------------------------
server1 | Region "/regionA" created on "server1"
注意到 regionA存放到了 server1
2.用gfsh命令来查看集群中的区域
gfsh>list regions
List of regions
---------------
regionA
3.列出集群上的成员,你开启的locator和缓存服务器出现在列表中
gfsh>list members
Name | Id
-------- | ---------------------------------------
locator1 | ubuntu(locator1:3529:locator)<v0>:59926
server1 | ubuntu(server1:3883)<v1>:65390
4.查看区域说明,键入
gfsh>describe region --name=regionA
..........................................................
Name : regionA
Data Policy : persistent replicate
Hosting Members : server1
Non-Default Attributes Shared By Hosting Members
Type | Name | Value
------ | ---- | -----
Region | size | 0
5.在pulse中,点击绿色的集群图标来查看所有的新成员和新区域,这些都是你刚刚为你的集群添加的。
注意:将此提示保持在开着的状态,以便进行下一步。
第6步: 操作区域中的数据并演示持久化.
geode以键值方式管理数据,在大多数应用程序中,java应用添加,删除和修改保存的数据,你也可以用gfsh
命令来添加或查询。查看数据命令。
1.运行如下的put命令来将数据添加到区域中
gfsh>put --region=regionA --key="1" --value="one"
Result : true
Key Class : java.lang.String
Key : 1
Value Class : java.lang.String
Old Value : <NULL>
gfsh>put --region=regionA --key="2" --value="two"
Result : true
Key Class : java.lang.String
Key : 2
Value Class : java.lang.String
Old Value : <NULL>
2.运行如下命令查询数据
gfsh>query --query="select * from /regionA"
Result : true
startCount : 0
endCount : 20
Rows : 2
Result
------
two
one
注意:结果显示了你用put命令添加的两条数据。3.用如下的命令停止缓存服务器
gfsh>stop server --name=server1
Stopping Cache Server running in /home/username/my_gemfire/server1 on ubuntu.local[40411] as server1...
Process ID: 3883
Log File: /home/username/my_gemfire/server1/server1.log
....
4.用如下命令重启服务器
gfsh>start server --name=server1 --server-port=40411
5.用如下命令从区域中查询数数,注意到数据仍然是可用的。
gfsh>query --query="select * from /regionA"
Result : true
startCount : 0
endCount : 20
Rows : 2
Result
------
two
one
因为regionA使用了持久化,它把一份考贝写入到磁盘。当一个存有reginA的服务器启动,数据将存在缓存中,注意到显示的两条数据是在你运行停止命令之前用put命令存放进去的。
第7步: 检查复制效果.
在这一步中,你开启第二台缓存服务器,因为regionA是可复制的,数据将在任何一台存有regionA区域的服务器中可用。
1.开启第二台缓存服务器
gfsh>start server --name=server2 --server-port=40412
2.运行
describe region查看regionA信息
gfsh>describe region --name=regionA
..........................................................
Name : regionA
Data Policy : persistent replicate
Hosting Members : server1
server2
Non-Default Attributes Shared By Hosting Members
Type | Name | Value
------ | ---- | -----
Region | size | 2
注意到你不需要为server2再次创建regionA,命令输出显示regionA存在于server1和server2上。当gfsh启动服务器时,它从群集配置服务请求配置,然后分发共享的配置到任何一台加入到集群的新服务器。
3.添加第三条数据
gfsh>put --region=regionA --key="3" --value="three"
Result : true
Key Class : java.lang.String
Key : 3
Value Class : java.lang.String
Old Value : <NULL>
4.打开pulse应用程序(在一个Web浏览器中),并观察集群拓扑。你应该可以看到一个locator和两个server。点击数据选项卡来查看regionA的信息。
5.用如下命令停止缓存服务器
gfsh>stop server --name=server1
Stopping Cache Server running in /home/username/my_gemfire/server1 on ubuntu.local[40411] as server1...
Process ID: 4064
Log File: /home/username/my_gemfire/server1/server1.log
....
6.从剩余的服务器中查询数据
gfsh>query --query="select * from /regionA"
Result : true
startCount : 0
endCount : 20
Rows : 3
Result
------
two
one
three
注意到数据有三条,包括了你刚才添加的。
7.添加第四条数据
gfsh>put --region=regionA --key="4" --value="four"
Result : true
Key Class : java.lang.String
Key : 3
Value Class : java.lang.String
Old Value : <NULL>
注意到只有server2在运行。因为数据是可复制的和持久化的,所有的数据都是可用的,但是当前这条数据仅在server2上可用。
gfsh>describe region --name=regionA
..........................................................
Name : regionA
Data Policy : persistent replicate
Hosting Members : server2
Non-Default Attributes Shared By Hosting Members
Type | Name | Value
------ | ---- | -----
Region | size | 4
8.停止剩余的服务器
gfsh>stop server --name=server2
Stopping Cache Server running in /home/username/my_gemfire/server2 on ubuntu.local[40412] as server2...
Process ID: 4185
Log File: /home/username/my_gemfire/server2/server2.log
.....
第8步: 并行重启缓存服务器.
在这一步中并行重新启动缓存服务器。由于数据是持久化的,当服务器重新启动时,数据可用。由于数据被复制,您必须并行启动服务器,以便在启动前同步他们的数据。
1.启动server1,因为regionA是可复制和持久化的,它需要其它服务器上的数据来启动并等待其它服务器启动。
gfsh>start server --name=server1 --server-port=40411
Starting a GemFire Server in /home/username/my_gemfire/server1...
............................................................................
............................................................................
注意到如果你在server1.log文件中查找启动服务器的信息,你会看到一个类似下面的日志信息:
[info 2015/01/14 09:08:13.610 PST server1 <main> tid=0x1] Region /regionA has pot
entially stale data. It is waiting for another member to recover the latest data.
My persistent id:
DiskStore ID: 8e2d99a9-4725-47e6-800d-28a26e1d59b1
Name: server1
Location: /192.0.2.0:/home/username/my_gemfire/server1/.
Members with potentially new data:
[
DiskStore ID: 2e91b003-8954-43f9-8ba9-3c5b0cdd4dfa
Name: server2
Location: /192.0.2.0:/home/username/my_gemfire/server2/.
]
Use the "gemfire list-missing-disk-stores" command to see all disk stores that
are being waited on by other members.
2.在第二个命令行窗口中,切换到工作目录(例如
my_gemfire
)并且启动gfsh.
[username@localhost ~/my_gemfire]$ gfsh
_________________________ __
/ _____/ ______/ ______/ /____/ /
/ / __/ /___ /_____ / _____ /
/ /__/ / ____/ _____/ / / / /
/______/_/ /______/_/ /_/ v8.2.0
Monitor and Manage GemFire
3.进行如下命令连接集群
gfsh>connect --locator=localhost[10334]
Connecting to Locator at [host=localhost, port=10334] ..
Connecting to Manager at [host=ubuntu.local, port=1099] ..
Successfully connected to: [host=ubuntu.local, port=1099]
4.启动server2
gfsh>start server --name=server2 --server-port=40412
注意到当server2启动时注意server2在第一个gfsh命令窗口中完成启动。
Server in /home/username/my_gemfire/server1 on ubuntu.local[40411] as server1 is currently online.
Process ID: 3402
Uptime: 1 minute 46 seconds
GemFire Version: 8.2.0
Java Version: 1.8.0_60
Log File: /home/username/my_gemfire/server1/server1.log
JVM Arguments: -Dgemfire.default.locators=192.0.2.0[10334] -Dgemfire.use-cluster-configuration=true
-XX:OnOutOfMemoryError=kill -KILL %p -Dgemfire.launcher.registerSignalHandlers=true
-Djava.awt.headless=true -Dsun.rmi.dgc.server.gcInterval=9223372036854775806
Class-Path: /home/username/Pivotal_GemFire_820_b17919_Linux/lib/gemfire.jar:
/home/username/Pivotal_GemFire_820_b17919_Linux/lib/server-dependencies.jar
5.验证locator和两台server已经启动
gfsh>list members
Name | Id
-------- | ---------------------------------------
server2 | ubuntu(server2:3992)<v8>:21507
server1 | ubuntu(server1:3402)<v7>:36532
locator1 | ubuntu(locator1:2813:locator)<v0>:46644
6.运行查询命令验证你用put命令所放置的所有数据是可用的。
gfsh>query --query="select * from /regionA"
Result : true
startCount : 0
endCount : 20
Rows : 5
Result
------
one
two
four
Three
NEXT_STEP_NAME : END
7.用以下命令停止server2
gfsh>stop server --dir=server2
Stopping Cache Server running in /home/username/my_gemfire/server2 on 192.0.2.0[40412] as server2...
Process ID: 3992
Log File: /home/username/my_gemfire/server2/server2.log
....
8.运行查询命令验证你用put命令所放置的所有数据是可用的。
gfsh>query --query="select * from /regionA"
Result : true
startCount : 0
endCount : 20
Rows : 5
Result
------
one
two
four
Three
NEXT_STEP_NAME : END
第9步: 关闭系统包括你的locator.
按以下步骤来关闭集群
1.在当前的gfsh会话中,停止集群
gfsh>shutdown --include-locators=true
2.当出现提示时键入Y来确认关闭集群
As a lot of data in memory will be lost, including possibly events in queues,
do you really want to shutdown the entire distributed system? (Y/n): Y
Shutdown is triggered
gfsh>
No longer connected to ubuntu.local[1099].
gfsh>
3.键入 exit来退出gfsh
第10步: 下步做什么…
关于下一步将探索geode什么,这里有一些建议
分享到:
相关推荐
Apache Geode是一个数据管理平台,可在广泛分布的云架构中实时,一致地访问数据密集型应用程序。 Apache Geode 和 Redis的比较: geode是java生态圈,目的是高性能高可用,除了缓存,更像数据库,可以sql查询,硬盘...
Apache Geode是一个数据管理平台,可在广泛分布的云架构中实时,一致地访问数据密集型应用程序。 Apache Geode 和 Redis的比较: geode是java生态圈,目的是高性能高可用,除了缓存,更像数据库,可以sql查询,...
Spring Data for Apache Geode API。 Spring Data for Apache Geode 开发文档
Apache Geode是一款分布式内存数据网格系统,用于构建高性能、低延迟的应用程序。它是一个开源项目,由Apache软件基金会管理,并且在1.2.1版本中提供了官方编译版。这个版本的Apache Geode旨在提供高可用性、可伸缩...
apache-geode-1.12.0 win环境下的运行包 ,配置步骤网上搜索; 项目关联链接:https://blog.csdn.net/Glen_guilin/article/details/109722619
概览Apache Geode 是一个数据管理平台,提供实时的、一致的、贯穿整个云架构地访问数据关键型应用.Geode 池化了服务器上的内存, CPU, 网络资源, 和本地磁盘,跨多个进程来管理应用对象和应用行为. 它使用了动态数据...
Apache Geode将内存,CPU,网络资源以及可选的本地磁盘跨多个进程池化,以管理应用程序对象和行为。 它使用动态复制和数据分区技术来实现高可用性,改进的性能,可伸缩性和容错能力。 除了作为分布式数据容器之外,...
该项目是一款基于Apache Geode的实时数据管理平台设计源码,包含7343个文件,涵盖5803个Java源代码文件、543个ERB模板文件、188个PNG图片文件、139个XML配置文件、99个文本文件、62个JavaScript文件、60个HTML文件、...
Apache Geode是一款分布式内存数据平台,它提供了实时的数据存储和处理能力,广泛应用于构建高性能、高可用性的分布式应用程序。在“apache-geode-1.4.0”这个压缩包中,你将找到构建和运行Geode集群所需的所有组件...
Apache Geode是一款强大的分布式内存数据网格系统,常被用作中间件来提供高可用性、高性能的数据存储和处理服务。在版本1.6.0中,这个开源项目提供了许多关键特性,旨在支持大规模分布式应用程序的需求。 Apache ...
版本改动: 引入了一个可插拔的OQL安全框架,以限制可以从OQL调用哪些类和方法。系统管理员可以在运行时更改安全态势。提供的实现包括:RestrictedMethodAuthorizer、UnstratedMethodAuthorizer、...
Apache Geode是一款分布式的数据管理平台,它提供了实时的应用程序数据存储和处理能力,适用于构建高性能、高可用性和可扩展的分布式系统。这个压缩包“geode.apache.org.zip”包含了Apache Geode 1.9版本的用户指南...
基于Spring boot 的geode 单节点客服端及服务端项目,本地启动apache-geode创建好locator, 项目关联链接:https://blog.csdn.net/Glen_guilin/article/details/109722619 apache-geode链接:...
Apache Geode 示例 这是与项目捆绑在一起的 Apache Geode 示例的主页。 欢迎贡献[2]和更正。 请与我们讨论您的建议或提交 。 Apache Geode 版本 Geode 客户端代码必须链接到与其将连接到的 Geode 服务器相同或旧版本...
Yardstick Apache Geode是在Yardstick框架之上编写的一组基准测试。 码尺框架 访问以获取有关如何运行Yardstick基准测试以及如何生成图形的详细信息。 除标准Yardstick参数外,以下文档还介绍了配置参数。 安装 ...
### Apache Geode 知识点概述 #### 一、Apache Geode 概述 - **定义**:Apache Geode 是一款高性能的分布式内存数据管理平台,适用于数据密集型的应用场景,尤其是在云架构环境下能展现出其独特的优势。它通过在多...
geode-demo应用这是一个示例: 启动和管理Spring配置的Geode集群包含将Geode用作数据存储或利用其计算功能的Geode客户端的应用程序有两种方法可以运行此演示: 单节点独立模式在AWS上运行的Geode集群单节点独立模式...
应用开发可以使用以下客户端技术编写本机客户端应用程序: 版本控制Geode Native遵循规范(semver)。 本规范仅解决与库的兼容性,不涵盖兼容性。C ++ 与API兼容性不同,未保留ABI兼容性。 仅在补丁版本之间保证ABI...