向ESB发送和接收数据

private static String tcpSendDataToEsb(String host, int port, int timeout,String content) throws Exception {

Socket socket = null;

try {

socket = new Socket();

InetSocketAddress address = new InetSocketAddress(host, port);

socket.connect(address, timeout);

OutputStream outputStream = socket.getOutputStream();

byte contentbs[] = content.getBytes();

outputStream.write(ByteUtil.inttoBytes(contentbs.length));

outputStream.write(contentbs);

outputStream.flush();


IntputStream is = socket.getinputStream();

DataInputStream dis = new DataInputStream(is);

int len = 0;

byte[] tembs = new byte[1024];

ByteArrayOutputStream out = new ByteArrayOutputStream();


while((len = dis.read(tembs)) != -1) {

out.wirte(tembs, 0 , len);

}

out.close();


byte[] lenresult = new byte[4]; // 响应长度

byte[] result = out.toByteArray();// 响应内容


// System.arraycopy(result, 0 , lenresult, 0,4);

outputStream.close();

is.close();

dis.close();

return new String(result, 4, result.length - 4, "GBK");

} catch(ArrayIndexOutOfBoundsException e) {

log.error("调用esb接口发送内容为:" + content + "出现异常:" + e.getStackTrace()[0], e);

} finally {

if(null != socket && !socket.isClosed()) {

try {

socket.close();

} catch(IOException e) {

log.error("发送内容:" + content + "到esb关闭socket连接出现异常:" + e.getStackTrace()[0], e);

}

}

}

}

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ESB和综合前置都是企业集成的解决方案,它们各自具有一些优势和劣势。以下是它们的主要优劣势: ESB的优势: 1. 灵活性:ESB提供了灵活的集成平台和中间件,可以根据需求进行定制和扩展,以满足不同的集成需求。 2. 可扩展性:ESB可以支持大规模的系统集成,通过添加插件或扩展组件来满足不同的集成需求。 3. 解耦性:ESB通过消息传递和服务调用来实现应用程序之间的解耦和互操作性,降低了系统间的耦合度,提高了系统的灵活性和可维护性。 4. 安全性:ESB提供了对数据传输和访问的安全管理功能,可以实现加密、身份认证、访问控制等安全机制。 ESB的劣势: 1. 复杂性:ESB作为一个综合的集成解决方案,其配置和管理可能相对复杂,需要专业的技术人员进行实施和维护。 2. 成本:由于ESB的复杂性和可扩展性,其实施和维护的成本可能较高,特别是对于规模较小的企业而言。 3. 性能:ESB可能对系统的性能产生一定的影响,特别是在高并发和大数据量的情况下,需要进行相应的优化和调整。 综合前置的优势: 1. 简单性:综合前置通常是一个独立的集成解决方案,其配置和管理相对简单,易于实施和维护。 2. 效率:综合前置通过集中管理和转换数据,可以提高系统间数据交换的效率和速度。 3. 一致性:综合前置可以处理不同系统之间的数据格式和协议差异,确保数据的一致性和准确性。 综合前置的劣势: 1. 有限的功能:综合前置通常只提供数据传输和转换功能,相对于ESB而言,功能扩展性较弱。 2. 依赖性:综合前置需要将多个系统集成到一个中心化的前置服务器上,系统间的依赖性较强,一旦前置服务器出现故障,可能影响整个系统的运行。 总体来说,选择ESB还是综合前置应该根据具体的业务需求、系统规模和集成复杂度来决定。ESB适用于复杂的系统集成场景,提供更全面和灵活的功能;而综合前置适用于简单的系统集成需求,具有简单性和高效性的优势。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值