计算机网络
文章平均质量分 78
hzulwy
技术嘛!最重要的是自己理解,然后才是分享
展开
-
网络代理基础知识
代理指在客户端和服务器之间路由流量的服务·,用于实现系统安全、负载均衡等功能。尤其在爬虫项目中,代理服务器常常扮演着重要的角色,它能帮助我们突破服务器带来的限制和封锁,从而正常抓取数据。代理是客户端和服务器的中间层,按照不同的维度可以分为不同的类型。一种常见的划分方式是将代理分为正向代理(Forward Proxy)和反向代理(Reverse Proxy)。根据实现代理的方式可以分为http隧道代理、MTM代理和透明代理。原创 2024-07-24 08:33:52 · 1522 阅读 · 0 评论 -
Java网络编程之线程池
线程池客户机与服务器的工作流程:(1)客户1通过socket1请求与服务器建立连接。(2)服务器连接线程中的accept()方法接受来自客户1的连接,创建与客户1会话的套接字Socket1;接着创建与客户1会话的线程,称之为客户线程1,将Socket1作为参数传递给客户线程1,将客户线程1交给线程池调度运行。(3)客户1通过客户线程1与服务器实现一对一数据交换,直至客1主动断开连接,服务器...原创 2019-12-07 17:10:55 · 363 阅读 · 0 评论 -
Java网络编程之Socket编程
Socket编程下图是基于TCP协议的客户机与服务器通信逻辑.客户机使用Socket类型的套接字与服务器会话,服务器则需要使用ServerSocket类型的套接字侦听网络连接,再使用Socket类型的套接字与客户机会话.会话都是通过基于套接字构建的输入流与输出流进行的.客户端代码:// TODO Auto-generated method stub Socket clientSocke...原创 2019-12-07 15:18:02 · 130 阅读 · 0 评论 -
Java网络编程之非阻塞I/O
非阻塞I/O本文参考了《Java网络编程案例》,若有错误的地方欢迎指出。非阻塞I/O在编程逻辑上与阻塞I/O一致,只是把Socket、ServerSocket换成了对应的通道Java基本I/O都是阻塞I/O,例如通过Socket来读数据,调用readLine()方法之后,如果没有数据到达,当前线程就会一直阻塞在readLine()方法中,直到有数据或者数据源关闭才返回。如果采用非阻塞I/O,...原创 2019-12-08 20:40:13 · 631 阅读 · 0 评论 -
Java网络编程之UDP编程
UDP编程UDP协议不是面向连接的传输协议,不能保证数据按照顺序到达,无重传机制,会丢包、收到重复包、乱序等,所以在数据可靠性要求很高的场合,一般采用TCP协议尽管如此,UDP协议仍然应用广泛,例如DNS服务、DHCP服务、网络音视频点播等都是用UDP协议传输数据。因为这些应用对速度要求很高,对丢包情况反应不明显,偶尔丢包也不是致命的,大不了重试一次,用户都能忍受。就通信的形式与特点而言,...原创 2019-12-07 16:16:25 · 230 阅读 · 0 评论