Socket(网络编程)面试题
Java网络面试
http是一种无状态的协议
get提交的有大小限制,post没有
LinkedList增加和删除效率优于ArrayList
Redis 可是数据持久化的,但是Memcache不可以
1、什么是TCP协议?UDP协议?区别?
TCP:传输控制协议,面向连接,可靠。保证数据传输成功。
UDP:不可靠。传输速度快。占系统资源少。
2、TCP三次握手?
A——》B通信请求以及序列号作为起始数据段。
B——》A收到请求,序列号作为起始数据段。
A——》B收到请求
Java网络编程
服务端套接字:ServerSocket。accept() bind() close()
客户端套接字:Socket。
网络编程时的同步、异步、阻塞、非阻塞?
同步:函数调用在没得到结果之前,没有调用结果,不返回任何结果。
异步:函数调用在没得到结果之前,没有调用结果,返回状态信息。
阻塞:函数调用在没得到结果之前,当前线程挂起。得到结果后才返回。
非阻塞:函数调用在没得到结果之前,当前线程不会挂起,立即返回结果。
Java如何实现无阻塞方式的Socket编程?
NIO有效解决了多线程服务器存在的线程开销问题。在NIO中使用多线程主要目的不是为了应对每个客户端请求而分配独立的服务线程,而是通过多线程充分利用多个CPU的处理能力和处理中的等待时间,达到提高服务能力的目的。chanel、Buffer、selector。
HTTP和HTTPS
HTTPS=HTTP+SSL。443端口。
http是明文传输,https是密文传输。
https需要到ca申请证书,缴费。
Socket(网络编程)面试题相关推荐
- Socket网络编程面试题
Socket网络编程面试题 1.TCP和UDP的区别: 2.流量控制和拥塞控制的实现机制: 3.重传机制: 4.滑动窗口机制: 5.多线程如何同步: 6.进程和线程的区别: 7.进程间通讯的方式有哪些 ...
- TCP、UDP网络编程面试题
TCP.UDP.Socket.HTTP网络编程面试题 什么是网络编程 网络编程的本质是多台计算机之间的数据交换.数据传递本身没有多大的难度,不就是把一个设备中的数据发送给其他设备,然后接受另外一个设备 ...
- Linux C++/Java/Web/OC Socket网络编程
一,Linux C++ Socket网络编程 1.什么是TCP/IP.UDP? TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制 ...
- python运维开发之socket网络编程01
python运维开发之socket网络编程01说明:本文来自来自北京老男孩linux运维实战培训中心-运维开发课程免费视频内容,本文内容为系列内容,更多分享信息见:http://oldboy.blog ...
- Socket网络编程(2)--服务端实现
中秋了,首先祝大家中秋快乐,闲着无事在家整一个socket的聊天程序,有点仿QQ界面,就是瞎折腾,不知道最后是不是能将所有功能实现. 如果你对socket不了解,请看这篇文章:http://www.c ...
- Linux Kernel TCP/IP Stack — Socket Layer — TCP/UDP Socket 网络编程
目录 文章目录 目录 TCP/UDP Socket 逻辑架构 创建 Socket 绑定 Socket 请求建立 Socket 连接 监听 Socket 接受请求 关闭连接 数据的发送和接收 send ...
- Socket网络编程笔记
网络.计算机网络的构成是什么? 网络: 在计算机领域中,网络是信息传输.接收.共享的虚拟平台,通过它可以把各个点.面(组织之间).体(例如公共app)的信息联系到一起,从而实现这些资源的共享. 局域网 ...
- 【Socket网络编程】14. perror()、errno 的使用
经常会在socket网络编程时看到errno和perror(),他们是什么呢? 函数定义: void perror(const char *s); perror ("open_port&qu ...
- socket网络编程——套接字地址结构
声明:此博客是本人根据老师课件总结的,如有抄袭行为,本人会即刻删除. 1.主机字节序列和网络字节序列 主机字节序列分为大端字节序和小端字节序,不同的主机采用的字节序列可能不同.大端字节序是指一个整数的 ...
- 【网络编程】之四、socket网络编程例解
前面说了那么多,现在我们给出4个代码+详解,基于win32平台的socket编程.使用TCP 和 UDP 两种协议. OK,先来看一下TCP服务器和客户端: [cpp] view plaincopy ...
最新文章
- android开发常见的设计模式,Android开发有哪些常用设计模式?
- mysql pom依赖关系_常用的POM依赖
- 阿里巴巴Java“代码反潜机”P3C喜提首届中国优秀开源项目二等奖!
- 火力发电厂与变电站设计防火规范_2019年《建筑设计防火规范》新版征求意见稿...
- 64.多态性实现机制—静态分派与动态分派(方法解析、静态分派、动态分派、单分派和多分派)
- qMISPlat入门级使用问题解答一
- db9针232接口波特率标准_理解串口通信以及232,485,422常见问题
- SAP License:ERP实施如何防止内部信息泄露
- android内核源码下载和编译
- Daily Scrum 11.5日
- 基于国产密码算法的开源OpenSSL密码库
- 计算几何——判断点是否在多边形内
- *rock ,scissors ,paperpku 2339
- ESXi 6 升级到ESXi 6.5VIB冲突问题
- Elastix 设置呼叫转移
- FART脱壳机的使用与进阶(1)_FART的安装与使用(pixel为例)
- win7 实用功能 - 键盘键
- mysql 多表 left join_MySql left join 多表连接查询优化语句
- Java 面试题大集合,2019最新最常见面试题加答案
- TCP拥塞控制技术 与BBR的加速原理
热门文章
- java pojo属性,java中的POJO类属性建议使用包装数据类型
- digester java_Java-Digester:提取节点名称
- PR转场插件 MAC版 FilmImpact Transition Pack v1-v2
- 西门子1200的实例
- 需求调研第二篇--调研准备阶段避免哪些错误
- 泊松分布 二项分布 正态分布之间的联系,与绘制高斯分布图
- html mint ui,移动端UI库对比 vant mint-ui
- [AutoCAD.Net][事件] AUTOCAD 选择对象后触发事件
- Windows桌面便签小工具帮你打造高效桌面
- sqlserver格式化-年月日