客户端服务器

关于Socket服务器与客户端双向通信时碰到的一个坑

北慕城南 提交于 2020-03-08 22:44:39
学习Socket时, 想实现一个读写分离,能够实时接收和发送消息的socket,却一直发送消息出去却不能打印出来。 客户端发送消息出去后。 客户端却不能打印出消息,客户端也不能打印出消息。 一直冥思苦想,一直到不到问题所在。 直到 发现 PrintWriter将 write 方法 改为 println后成功打印出消息。 最后 附上源码 客户端: 1 package my.socket; 2 3 import java.io.*; 4 import java.net.Socket; 5 6 public class SocketClient { 7 8 public static void main(String[] args) throws IOException { 9 Socket socket = new Socket("localhost",55532); 10 11 ReadSocketThread readSocketThread = new ReadSocketThread(socket); 12 readSocketThread.start(); 13 14 WriteSocketThread writeSocketThread = new WriteSocketThread(socket); 15 writeSocketThread.start(); 16 17

oracle数据泵经验1

≡放荡痞女 提交于 2020-03-08 18:29:55
数据泵是oracle数据库中用来实现数据的备份和恢复的,在CS架构中,尤其是某些专用领域的软件,其数据量不大,不需要存储到云端。 在使用数据泵的时候,很多时候会发现无法运行成功,其原因可能有以下几种: (1)命令语句错误,包括服务器名、IP、Port等存在错误; (2)操作的机器没有安装oracle客户端; (3)恢复的oracle版本不同; 解决方式有以下几种: (1)安装oracle客户端; (2)不同的服务器数据交互或者恢复时,版本不同时,需要使用impdp和expdp,同时还需要精确的版本号。 来源: CSDN 作者: 一点网站长 链接: https://blog.csdn.net/weixin_39791214/article/details/104735582

高性能Server---Reactor模型

浪子不回头ぞ 提交于 2020-03-08 18:16:43
无处不在的C/S架构 在这个充斥着云的时代,我们使用的软件可以说99%都是C/S架构的! 你发邮件用的Outlook,Foxmail等 你看视频用的优酷,土豆等 你写文档用的Office365,googleDoc,Evernote等 你浏览网页用的IE,Chrome等(B/S是特殊的C/S) …… C/S架构的软件带来的一个明显的好处就是:只要有网络,你可以在任何地方干同一件事。 例如:你在家里使用Office365编写了文档。到了公司,只要打开编辑地址就可以看到在家里编写的文档,进行展示或者继续编辑。甚至在手机上进行阅读与编辑。不再需要U盘拷来拷去了。 C/S架构可以抽象为如下模型: C就是Client(客户端),上面的B是Browser(浏览器) S就是Server(服务器): 服务器管理某种资源,并且通过操作这种资源来为它的客户端提供某种服务 C/S架构之所以能够流行的一个主要原因就是网速的提高以及费用的降低,特别是无线网络速度的提高。试想在2G时代,大家最多就是看看文字网页,小说什么的。看图片,那简直就是奢侈!更别说看视频了! 网速的提高,使得越来越多的人使用网络,例如:优酷,微信都是上亿用户量,更别说天猫双11的瞬间访问量了!这就对服务器有很高的要求!能够快速处理海量的用户请求!那服务器如何能快速的处理用户的请求呢? 高性能服务器 高性能服务器至少要满足如下几个需求:

网络安全行业面试知识点

隐身守侯 提交于 2020-03-08 12:21:11
信息收集 服务器的相关信息(真实ip,系统类型,版本,开放端口,WAF等) 网站指纹识别(包括,cms,cdn,证书等),dns记录 whois信息,姓名,备案,邮箱,电话反查(邮箱丢社工库,社工准备等) 子域名收集,旁站,C段等 google hacking针对化搜索,pdf文件,中间件版本,弱口令扫描等 扫描网站目录结构,爆后台,网站banner,测试文件,备份等敏感文件泄漏等 传输协议,通用漏洞,exp,github源码等 漏洞挖掘 浏览网站,看看网站规模,功能,特点等 端口,弱口令,目录等扫描,对响应的端口进行漏洞探测,比如 rsync,心脏出血,mysql,ftp,ssh弱口令等。 XSS,SQL注入,上传,命令注入,CSRF,cookie安全检测,敏感信息,通信数据传输,暴力破解,任意文件上传,越权访问,未授权访问,目录遍历,文件 包含,重放攻击(短信轰炸),服务器漏洞检测,最后使用漏扫工具等 漏洞利用 | 权限提升 mysql提权,serv-u提权,oracle提权 windows 溢出提权 linux脏牛,内核漏洞提权e 清除测试数据 | 输出报告 日志、测试数据的清理 总结,输出渗透测试报告,附修复方案 复测 验证并发现是否有新漏洞,输出报告,归档 问题 在渗透过程中,收集目标站注册人邮箱对我们有什么价值? 丢社工库里看看有没有泄露密码

DHCP+DHCP snooping学习笔记

☆樱花仙子☆ 提交于 2020-03-08 03:47:50
动态主机配置协议(Dynamic Host Configuration Protocol),简称DHCP,是一个应用于局域网的网络协议,该协议允许服务器向客户端动态分配IP地址和配置信息。 DHCP位于OSI模型的 应用层 ,使用 UDP协议 工作,主要有两个用途,一个是用于内部网或网络服务供应商自动分配IP地址给用户,另一个是用于内部网管理员作为对所有电脑作中央管理的手段。 DHCP具有如下几点功能: 保证任何IP地址在同一时刻只能由一台DHCP客户机所使用。 DHCP应当可以给用户分配永久固定的IP地址。 DHCP应当可以同用其他方法获得IP地址的 主机共存(如手工配置IP地址的主机)。 DHCP 服务器应当向现有的BOOTP 客户端提供服务。 DHCP中IP地址分配方式: 1) 自动分配方式(Automatic Allocation),DHCP服务器为主机指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后,就可以永久性的使用该地址。 2) 动态分配方式(Dynamic Allocation),DHCP服务器给主机指定一个具有时间限制的IP地址,时间到期或主机明确表示放弃该地址时,该地址可以被其他主机使用。 3) 手工分配方式(Manual Allocation),客户端的IP地址是由网络管理员指定的

TCP异常与处理

为君一笑 提交于 2020-03-07 10:51:40
TCP中出现的错误及处理 首先要明确,TCP连接关闭有两种方法其一是正常的四次挥手,会经历多个状态,最后连接正常关闭,还有一种方法是连接异常关闭,即此时对方希望连接能够尽快关闭,发送RST包后连接会直接关闭,不会再出现上述的状态转换 进程正常关闭/进程被杀死/服务器重启 这三种情况下,服务器关闭套接字,并发起第一次挥手操作,客户端收到FIN包,并返回ack, 此时连接处于半关闭状态,客户端并不知道服务器已经关闭,客户端如果继续向服务器write数据,那么服务器会向客户端发送RST包, 当客户端收到RST包时,如果再write,那么将返回EPIPE错误,同时会导致SIGPIPE信号,如果从收到RST包的连接上read,那么将返回ECONNRESET错误 如果客户端是使用的select/epoll等,那么当select/epoll收到RST会返回连接可读,即调用read返回ECONNRESET错误(但是 根据muduo库测试最后epoll收到RST后返回可读,但是read会返回0,此处存疑 ),注意这里所说的错误是errno的值,同时也是套接字的待处理错误,所以此时调用getsockopt所获得的error是相应的错误,epoll/select所监视的某个socket上如果出现了错误,那么将会返回可读可写 服务器崩溃/服务器不可达 服务器崩溃时,如果有数据发送,那么TCP会重传数据

android 视频通讯

主宰稳场 提交于 2020-03-07 07:52:14
摘要: 论文简单介绍Android 平台的特性,主要阐述了基于Android 平台简易即时通讯(IM)的 作用和功能以及实现方法。(复杂的通讯如引入视频音频等可以考虑AnyChat SDK~) 关键词: Android 平台;即时通讯 资料下载地址: http://download.csdn.net/detail/xujinquan19/4513223 (本文中图表点击附件即可见) 1 Android 平台简介 Android 是Google 公司于2007年11月5日推出的手机操作系统 ,经过2年多的发展,Android平台在智能移动领域占有不小的份额,由Google为首的40多家移动通信领域的领军企业组成开放手机联盟(OHA)。Google 与运营商、设备制造商、开发商和其他第三方结成深层次的合作伙伴关系,希望通过建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统。正因如此,Android 正在被越来越多的开发者和使用者所接受。近日,Google 发言人Anthony House称, 截止到2010 年4月15 日,Android Market 已经有3.8 万多个应用程序。 2 Android 平台特性与即时通讯的研究   Android 平台框架共由5 部分组成。底层核心是基于 Linux 2.6内核 开发的独立操作系统,该层用来提供系统的底层服务

[计算机网络]HTTP协议

半腔热情 提交于 2020-03-07 02:37:35
转载自:https://www.cnblogs.com/ranyonsue/p/5984001.html HTTP简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。 HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。 HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。 http请求-响应模型.jpg 主要特点 1、简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。 2、灵活

客户端解析与服务器解析的相对路径区别

十年热恋 提交于 2020-03-07 02:22:43
感谢大佬: https://www.cnblogs.com/wangenxian/p/10828276.html 服务器端的地址 服务器端的相对地址指的是相对于你的web应用的地址 ,这个地址是在服务器端解析的 ( 不同于html和javascript中的相对地址,他们是由客户端浏览器解析的 )也就是说这时候 在jsp和servlet中的相对地址应该是相对于你的web应用,即相对于http://127.0.0.1/webapp/的。 其用到的地方有: forward:servlet中的request.getRequestDispatcher(address);这个address是 在服务器端解析的,所以,你要forward到a.jsp应该这么写: request.getRequestDispatcher(“/user/a.jsp”)这个/相对于当前的web应用webapp, 其绝对地址就是:http://192.168.0.1/webapp/user/a.jsp。 sendRedirect:在jsp中<%response.sendRedirect("/rtccp/user/a.jsp");%> 客户端的地址 所有的html页面中的相对地址都是相对于服务器根目录(http://127.0.0.1/)的, 而不是(根目录下的该Web应用的目录)http://127.0.0.1

FTP主动模式和被动模式的区别(转)

旧巷老猫 提交于 2020-03-06 23:38:28
dd by zhj: 一般使用被动模式,在命令行下,被动模式的格式是:ftp -p (yinservice_env) ajian@ubuntu-desk:~$ ftp -p ftp> 之前在用命令行连接一个ftp服务器时,没有指定模式,它默认使用的是主动模式(默认模式是哪种根据操作系统的不同而不同), 导致登录时出错“ftp: bind: Address already in use”,显式的指定为被动模式解决了这个问题 原文: http://www.cnblogs.com/xiaohh/p/4789813.html 基础知识:   FTP只通过 TCP连接 ,没有用于 FTP的 UDP组件 .FTP不同于其他服务的是它使用了两个端口 , 一个数据端口和一个命令端口 (或称为控制端口 )。通常 21端口是命令端口, 20端口是数据端口。当混入主动 /被动模式的概念时,数据端口就有可能不是 20了。 主动模式 FTP:   主动模式下, FTP客户端从任意的非特殊的端口( N > 1023)连入到 FTP服务器的命令端口 --21端口。然后客户端在 N+1( N+1 >= 1024)端口监听,并且通过 N+1( N+1 >= 1024)端口发送命令给 FTP服务器。服务器会反过来连接用户本地指定的数据端口,比如 20端口。   以服务器端防火墙为立足点,要支持主动模式