2 qq 21923871 qq_21923871 于 2016.03.17 21:16 提问

java socket tcp 和网络映射问题

我用java socket 写了个客户端和服务端程序,局域网测试没有问题-客户端和服务器端能互发数据.

于是想用花生壳端口映射服务端, 然后用客户端连接发现如下问题

1.服务端能收到客户端的信息,但客户端不能收到服务端信息
----说明网络没问题

2.我把服务端的接受代码删去让他只能发送, 把客户端的发送发送代码删去让他不能接受结果,客户端就能收到服务端的信息 ---但这又有什么用呢?
----说明网络没问题

3.我还怀疑是程序的问题,但在局域网内服务端和客户端能够互发信息
----说明软件没问题

因此我就纳闷了---到底问题出在哪呢 ???

1个回答

mianbaohebg
mianbaohebg   2016.12.17 22:57

PHP上层接口的封装。别人底层接口做的是单一的增删改。我需要调用多个不同服务器上的接口来处理我需要的数据。进行更新到相应的接口里面。但是如果有的数据更改不成功了。需要事务的回滚。现在我知道的是同一个数据库里面的话,操作数据库的事务是可以实现的。但是不同的服务器不同的数据库,我需要事务处理的话。需要怎么做。我百度了分布式事务。但是没看懂。百度说的是JAVA的。我写PHP的跟他不一样。求大神指点

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C# socket nat 映射 网络 代理 转发
using System; using System.Collections.Generic; using System.Net; using System.Net.Sockets; using System.Text; using System.Threading; namespace portmap_net {     ///     /// 映射器实例状态  
通过socket进行TCP通信丢包原因总结
转自:http://www.cnblogs.com/orange1438/p/4693470.html 今天在公司问老大,公司的项目底层,是使用的TCP,因为可靠,自动断线重连,在底层都实现了,但是我记得TCP也会有掉包的问题,所以这文章就诞生了——关于TCP掉包的问题,TCP是基于不可靠的网络实现可靠的传输,肯定也会存在掉包的情况。     如果通信中发现缺少数据或者丢包,那么,最大
SocketToolV1.0-Java网络TCP调试助手
此为Java实现的TCP调试助手,有界面和源码,可直接运行,方便TCP网络调试,包含客户端和服务端。涉及socket、多线程、hexStringTobytes、bytesToHexString.
Network——Socket网络通信机制以及实现举例(TCP、UDP等)
两个传输协议之一:TCP TCP是Tranfer Control Protocol的 简称,是一种面向连接的保证可靠传输的协议。通过TCP协议传输,得到的是一个顺序的无差错的数据流。发送方和接收方的成对的两个socket之间必须建立连接,以便在TCP协议的基础上进行通信。 两个传输协议之一:UDP UDP是User Datagram Protocol的简称,是一种无连接的协议,每个数据报都是
TCP/IP、Http、Socket的区别以及面试中关于网络协议常问的考点
网络由下往上分为   物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。   通过初步的了解,我知道IP协议对应于网络层,TCP协议对应于传输层,而HTTP协议对应于应用层,   三者从本质上来说没有可比性,   socket则是对TCP/IP协议的封装和应用(程序员层面上)。   也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,
socket网络字节序以及大端序小端序
不同CPU中,4字节整数1在内存空间的存储方式是不同的。4字节整数1可用2进制表示如下: 00000000 00000000 00000000 00000001 有些CPU以上面的顺序存储到内存,另外一些CPU则以倒序存储,如下所示: 00000001 00000000 00000000 00000000 若不考虑这些就收发数据会发生问题,因为保存顺序的不同意味着对接收数据的解析顺
socket—TCP通信死锁问题
基础准备     首先需要明白数据传输的底层实现机制,在http://blog.csdn.net/ns_code/article/details/15813809这篇博客中有详细的介绍,在上面的博客中,我们提到了SendQ和RecvQ缓冲队列,这两个缓冲区的容量在具体实现时会受一定的限制,虽然它们使用的实际内存大小会动态地增长和收缩,但还是需要一个硬性的限制,以防止行为异常的程序所控制的单一
java socket tcp/ip基本数据类型编解码【高序字节 低序字节】
package com.learning.forsocket.decodeencode;import java.io.ByteArrayOutputStream; import java.io.DataOutputStream;/* * 一下代码是根据java socket tcp/ip编程书籍中对基本类型编码例子添加相关自己注释以及理解 * *因主机CPU不同,不同的机器会出现高、低
Socket网络程序设计(3) ———— 利用tcp完成文件传输的设计和实现
用TCP/TP进行网际互连(3)———— 利用tcp完成文件传输的设计和实现 1.利用循环面向连接的模型完成固定文件的传输 2.由固定文件扩展成手动输入或选择文件 3.参考connectTCP的方式对程序进行抽象、封装
Socket/TCP粘包、多包和少包, 断包
为什么TCP 会粘包    前几天,调试mina的TCP通信, 第一个协议包解析正常,第二个数据包不完整。为什么会这样吗,我们用mina这样通信框架,还会出现这种问题? 带者问题,我们先分析一下问题。   提到通信, 我们面临都通信协议,数据协议的选择。 通信协议我们可选择TCP/UDP: TCP(transport control protocol,传输控制协议)是面向连接的,面向