最近在用socket上传数据,无奈传文本没有问题,但是传图片就是有问题。想过了各种方法,客户端传过去,然后,服务器端分包接收。这种方法,没有成功。似乎还有一种方法,就是客户端分包发送,服务器端接收,然后,组合到一起,但是想想,似乎更复杂。最后终于解决了。就是用HTTP上传图片文件。然后,服务器端返回...
分类:
其他好文 时间:
2014-06-26 23:14:36
阅读次数:
238
1、TCP编程 2、SocketServer模块 3、Twisted框架 4、UDP编程 1、TCP编程——TCP是面向连接的,其一般的设计如下: # encoding:utf-8'''Created on 2014-6-20@author: Administrator'''from socket ...
分类:
编程语言 时间:
2014-06-26 22:10:38
阅读次数:
279
SocketServer包对socket包进行了包装(封装),使得创建socket服务非常简单。TCPServer+BaseRequestHandler使用TCPServer和BaseRequestHandler编写socket服务的样例。#-*- coding:utf-8 -*-from Sock...
分类:
编程语言 时间:
2014-06-26 19:28:07
阅读次数:
307
以前都是采用ACE的编写网络应用,最近由于工作需要,需要直接只用socket接口编写CS的代码,重新学习这方面的知识,给出自己所用到的3个简单例子,都是拷贝别人的程序。如果你能完全理解这3个例子,估计socket编程就已经基本入门了。 建议:1) 多多查查所用到的网络接口; 2) 最好有一本书,如....
分类:
其他好文 时间:
2014-06-26 18:19:36
阅读次数:
234
服务器开发貌似有固定的模式,性能和复杂度各异,现总结下常见的模式。当然服务器的开发并没有固定的模式,除了以下总结的外,实际根据业务的不同,生产中还用过其他模式。阻塞式服务器主要特点:一个连接上来,等服务完毕后,才释放连接,在服务过程中,不能接收其他连接。一般而言此类服务的socket一般是阻塞的.....
分类:
其他好文 时间:
2014-06-26 16:10:27
阅读次数:
188
使用Raw Socket实现Ping 仅仅采用ICMP.DLL并不能完全实现ICMP灵活多变的各类报文,只有使用Raw Socket才是ICMP的终极解决之道。 使用Raw Socket发送ICMP报文前,我们要完全依靠自己的代码组装报文://功能:初始化ICMP的报头, 给data部分填充数据.....
分类:
其他好文 时间:
2014-06-26 12:30:14
阅读次数:
392
大多数程序员所接触到的套接字(Socket)为两类: (1)流式套接字(SOCK_STREAM):一种面向连接的Socket,针对于面向连接的TCP服务应用; (2)数据报式套接字(SOCK_DGRAM):一种无连接的Socket,对应于无连接的UDP服务应用。 从用户的角度来看,SOCK_S...
分类:
其他好文 时间:
2014-06-26 12:26:07
阅读次数:
194
大家都想当然的想到tcp/ip协议,socket等,认为这些协议一旦连上,就可以持续的发送接受数据,好像建立了一层持久连接,但是这怎么可能,只不过是底层的网络链路层、会话层等帮你完成了保持会话的功能,网络又不是电话线,不可能一个连接占据整个线路。
HTTP协议是一个应用层协议,也就是说它可以用任何IPC来传递,比如pipe, socket, sharedmemory, 等等,既然http协议不一定通过socket, tcp/ip等传递,那你还有什么资格说http协议是非连接的呢?
从这一点说,http协议不...
分类:
其他好文 时间:
2014-06-26 10:28:55
阅读次数:
369
之前一直对tcp keepalive选项理解有误,以为通过setsockopt函数设置SO_KEEPALIVE和相关参数后该socket则使用设置的keepalive相关参数否则使用系统默认的:keepalive配置(如下)root@xxx-KVM:/# sysctl -a | grep keepn...
分类:
其他好文 时间:
2014-06-25 09:37:09
阅读次数:
238
练习1
接收类
package com.socket.demo;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class UDPReceiveDemo {
public static void main(String[] args)...
分类:
编程语言 时间:
2014-06-25 08:33:15
阅读次数:
282