java 部署策略_冗余策略 (Sun Java Enterprise System 5 安装规划指南)

冗余策略

大多数为生产方面所使用的解决方案都包括某一类型的冗余。冗余策略将使用一个组件的多个实例来提供单一服务。使用冗余的目的是满足服务质量要求。例如,使用冗余来增加吞吐量从而满足性能要求,或者使用冗余来避免出现单一故障点从而满足可靠性要求。

在使用 Java ES 组件的冗余实例时提供了三种策略:负载平衡、通过 Sun Cluster 软件建立群集及 Directory Server 复制。以下几段简要概述了针对每一种策略所建议的安装和配置过程:

负载平衡可由硬件实现,也可由软件实现。设置负载平衡的最好方法是安装并配置负载平衡组件的一个实例,然后通过负载平衡器来测试第一个实例所提供的服务是否可用。在核实该服务可用之后,安装并配置您的部署体系结构所需的其他组件实例。这种分阶段安装和配置的方法有利于排除配置中存在的问题。

群集需要分步实现。第一步是安装 Sun Cluster 软件,建立并配置群集。下一步是安装将在群集中运行的组件。例如,实现图 2–1 中所示群集的第一步是在计算机 STR1 和 STR2 上安装 Sun Cluster 软件,以及建立并配置群集。第二步是安装并配置 Messaging Server 和 Calendar Server。第三步,也是最后一步,是为 Messaging Server 和 Calendar Server 安装并配置 Sun Cluster 数据服务。配置 Sun Cluster 数据服务之后,群集节点便会识别 Messaging Server 和 Calendar Server 实例。

Directory Server 复制也是分几个步骤来实现。例如,实现多主复制时,第一步是安装、配置和检验所有 Directory Server 实例。第二步是保留一个 Directory Server 实例,将剩余实例均关闭。第三步是安装并配置解决方案中的其他组件。对模式或目录结构的任何更改均在这个唯一处于运行状态的 Directory Server 实例上完成。最后一步,在安装、配置并检验解决方案中的所有组件实例之后,重新启动 Directory Server 的其他实例,然后使用复制功能配置同步和故障转移。这会将修改和更新过的目录数据复制到 Directory Server 的所有实例中。

如果您的部署体系结构使用上述任何一个冗余策略,则安装规划必须包括用于安装一个组件的多个实例并将这些实例配置成作为单一服务运行的过程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
循环冗余校验(Cyclic Redundancy Check,CRC)是一种常用的数据校验方法,其本质是将要传输的数据通过一个特定的算法生成一个固定长度的校验码,接收方再利用相同的算法对接收到的数据进行校验,判断数据是否损坏。 下面是Java实现循环冗余八位校验的示例代码: ```java public class CRC8 { private static final int POLYNOMIAL = 0x1d; // CRC-8多项式 private static final int WIDTH = 8; // CRC-8校验位宽度 private static final int INIT_VALUE = 0x00; // CRC-8校验初始值 private static final int FINAL_XOR_VALUE = 0x00; // CRC-8校验最终值 public static int crc(byte[] data) { int crc = INIT_VALUE; for (int i = 0; i < data.length; i++) { crc ^= data[i] & 0xFF; for (int j = 0; j < WIDTH; j++) { if ((crc & 0x80) != 0) { crc = (crc << 1) ^ POLYNOMIAL; } else { crc = crc << 1; } } } return crc ^ FINAL_XOR_VALUE; } public static void main(String[] args) { byte[] data = new byte[]{0x01, 0x02, 0x03, 0x04}; int crc = crc(data); System.out.printf("%02X", crc); // 输出校验码 } } ``` 这段代码中,`POLYNOMIAL`、`WIDTH`、`INIT_VALUE`、`FINAL_XOR_VALUE`分别代表CRC-8多项式、CRC-8校验位宽度、CRC-8校验初始值和CRC-8校验最终值。`crc`方法接收一个字节数组作为输入数据,计算得到校验码并返回。在`main`方法中,我们构造了一个字节数组`data`,并计算得到其CRC-8校验码并输出。 需要注意的是,在Java中,byte类型是有符号的,范围是-128~127。因此,在计算CRC-8校验码时,需要将byte类型的数据进行无符号扩展,即对其进行一次&0xFF操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值