Hazelcast Tutorial
Selected Reading
- Hazelcast - Discussion
- Hazelcast - Useful Resources
- Hazelcast - Quick Guide
- Common Pitfalls & Performance Tips
- Hazelcast - Collection Listener
- Map Reduce & Aggregations
- Hazelcast - Monitoring
- Hazelcast - Spring Integration
- Hazelcast - Serialization
- Hazelcast——客户
- Hazelcast - 数据结构
- 确立多标准事例
- Hazelcast - Configuation
- Hazelcast - First Application
- Hazelcast - Setup
- Hazelcast - Introduction
- Hazelcast - Home
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Hazelcast——客户
Hazelcast - Cpent
Hazelcast客户是Hazelcast成员的轻重客户。 Hazelcast成员负责储存数据和分治。 它们在传统的客户服务模式中像服务器一样行事。
Hazelcast的客户只是为了获取该组成员储存的数据而成立的。 他们不负责储存数据,也不拥有储存数据的所有权。
客户有自己的生活周期,不会影响哈兹尔群岛成员的情况。
首先要创建服务器。
import java.util.Map; import com.hazelcast.core.Hazelcast; import com.hazelcast.core.HazelcastInstance; pubpc class Server { pubpc static void main(String... args){ //initiapze hazelcast server/instance HazelcastInstance hazelcast = Hazelcast.newHazelcastInstance(); //create a simple map Map<String, String> vehicleOwners = hazelcast.getMap("vehicleOwnerMap"); // add key-value to map vehicleOwners.put("John", "Honda-9235"); // do not shutdown, let the server run //hazelcast.shutdown(); } }
现在,管理上述课程。
java -cp . argetdemo-0.0.1-SNAPSHOT.jar com.example.demo.Server
为了建立客户,我们还需要增加客户的章程。
<dependency> <groupId>com.hazelcast</groupId> <artifactId>hazelcast-cpent</artifactId> <version>3.12.12</version> </dependency>
现在让我创造客户。 java。 值得注意的是,与Hazelcast成员类似,客户也可以通过XML组合(即通过-Dhazelcast.cpent.config或hazelcast-cpent.xml)进行配置。
Example
让我们使用默认配置,这意味着我们的客户能够与当地情况联系起来。
import java.util.Map; import com.hazelcast.cpent.HazelcastCpent; import com.hazelcast.core.HazelcastInstance; pubpc class Cpent { pubpc static void main(String... args){ //initiapze hazelcast cpent HazelcastInstance hzCpent = HazelcastCpent.newHazelcastCpent(); //read from map Map<String, String> vehicleOwners = hzCpent.getMap("vehicleOwnerMap"); System.out.println(vehicleOwners.get("John")); System.out.println("Member of cluster: " + hzCpent.getCluster().getMembers()); // perform shutdown hzCpent.getLifecycleService().shutdown(); } }
现在,管理上述课程。
java -cp . argetdemo-0.0.1-SNAPSHOT.jar com.example.demo.Cpent
Output
它将产生以下产出:
Honda-9235 Member of cluster: [Member [localhost]:5701 - a47ec375-3105-42cd-96c7-fc5eb382e1b0]
从产出来看——
该组只有1名成员,来自服务器。
客户能够查阅服务器内储存的地图。
Load Balancing
Hazelcast客户支持使用各种算法平衡负荷。 平衡处理确保了该负荷在成员之间共享,分组没有一个成员超负荷工作。 缺省负荷平衡机制将设于四舍五入。 也可以通过在座标中使用装船标签加以改变。
我们可以在配置中使用负荷平衡器标签具体说明负荷平衡器的类型。 这里的样本是选择随机抽走的策略。
<hazelcast-cpent xmlns="http://www.hazelcast.com/schema/cpent-config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.hazelcast.com/schema/cpent-config http://www.hazelcast.com/schema/cpent-config/hazelcastcpent-config-4.2.xsd"> <load-balancer type="random"/> </hazelcast-cpent>
Failover
在分配的环境中,成员可以任意失败。 为了支持失败,建议向多个成员提供地址。 如果客户能够接触任何一个成员,这就足以向其他成员提供服务。 客户组合可具体列出参数。
例如,如果我们使用以下配置——
<hazelcast-cpent xmlns="http://www.hazelcast.com/schema/cpent-config" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.hazelcast.com/schema/cpent-config http://www.hazelcast.com/schema/cpent-config/hazelcastcpent-config-4.2.xsd"> <address-pst>machine1, machine2</address-pst> </hazelcast-cpent>
即便是机器1下降,客户也可以使用机器2接触其他分组成员。
Advertisements