客户端服务器

Android Socket通信

纵然是瞬间 提交于 2020-03-04 22:22:35
目标 Demo是通过Java ServerSocket 和 Socket 通信实现客户端 发送消息 和 发送文件 到服务器,服务器接收到 消息和文件 ,并且实现解决 inputStream.read() 的 阻塞 问题思路。 服务器端 创建ServerSocket服务器 serverSocket = new ServerSocket(port);//首先创建一个服务端口 //等待客户端的连接请求 socket = serverSocket.accept(); 等待Socket客户端连接 //等待客户端的连接请求 socket = serverSocket.accept(); final String socketAddress = socket.getRemoteSocketAddress().toString(); runOnUiThread(new Runnable() { @Override public void run() { Toast.makeText(ServerActivity.this, "成功建立与客户端的连接 : " + socketAddress, Toast.LENGTH_SHORT).show(); Log.i("Lin", "成功建立与客户端的连接 : " + socketAddress); } }); 接收Socket客户端信息 为了防止接收消息时

EMC ndmp NAS

别来无恙 提交于 2020-03-04 21:26:21
NAS 是带存储系统的专用高性能文件服务器。它可提供文件级数据访问和共享。 NAS 使用网络和文件共享协议,包括用于数据传输的 TCP/IP 以及用于远程文件服务的 CIFS 和 NFS。 最简单的备份方法是使用文件拷贝。 也可以在原始设备级别执行数据备份。 这意味着,必须卸载文件系统,才能执行拷贝。此类型的备份通常比文件拷贝速度要快,但会影响恢复粒度。 ------------------------------------------------------------------------------ 《备份恢复解决方案 — NDMP 集成MR-1WP-BRSNDMP SRG》中提到: 1、NAS环境中备份,基于服务器 在应用程序服务器上安装客户端,备份时,NAS机头读取数据,在传送到客户端。客户端再把数据发送到存储节点,由存储节点写入到备份设备(DD或磁带)。这样NSA机头到客户端,客户端到存储节点都占用了带宽。 NAS机头---(LAN)---客户端---(LAN)---存储结点---(FC SAN)---DD或磁带 2、NAS环境中备份,无服务器 在存储节点上直接装载网络共享(共享是基于TCP/IP),存储节点(也是备份客户端)会从 NAS 机头读取数据,并将其写入备份设备,而不会涉及应用程序服务器。与之前基于服务器方案比,减少了一个网络跳。 个人理解是: NSA机头

SSL协议详解

好久不见. 提交于 2020-03-04 11:05:15
   背景介绍   最近在看《密码学与网络安全》相关的书籍,这篇文章主要详细介绍一下著名的网络安全协议SSL。   在开始SSl介绍之前,先给大家介绍几个密码学的概念和相关的知识。   1、密码学的相关概念 密码学(cryptography):目的是通过将信息编码使其不可读,从而达到安全性。 明文(plain text):发送人、接受人和任何访问消息的人都能理解的消息。 密文(cipher text):明文消息经过某种编码后,得到密文消息。 加密(encryption):将明文消息变成密文消息。 解密(decryption):将密文消息变成明文消息。 算法:取一个输入文本,产生一个输出文本。 加密算法:发送方进行加密的算法。 解密算法:接收方进行解密的算法。 密钥(key):只有发送方和接收方理解的消息 对称密钥加密(Symmetric Key Cryptography):加密与解密使用相同密钥。 非对称密钥加密(Asymmetric Key Cryptography):加密与解密使用不同密钥。   2、相关的加密算法介绍   DES算法即数据加密标准,也称为数据加密算法。加密过程如下:   在SSL中会用到分组DES、三重DES算法等加密算法对数据进行加密。当然可以选用其他非DES加密算法,视情况而定,后面会详细介绍。   3、密钥交换算法   使用对称加密算法时

前端知识点总结之cookie和session完全总结

帅比萌擦擦* 提交于 2020-03-04 10:23:01
cookie机制 123 Cookies是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器。网络服务器用HTTP头向客户端发送cookies,在客户终端,浏览器解析这些cookies并将它们保存为一个本地文件,它会自动将同一服务器的任何请求缚上这些cookies 。 12 具体来说cookie机制采用的是在客户端保持状态的方案。它是在用户端的会话状态的存贮机制,他需要用户打开客户端的cookie支持。cookie的作用就是为了解决HTTP协议无状态的缺陷所作的努力。 1234 正统的cookie分发是通过扩展HTTP协议来实现的,服务器通过在HTTP的响应头中加上一行特殊的指示以提示浏览器按照指示生成相应的cookie。然而纯粹的客户端脚本如JavaScript也可以生成cookie。而cookie的使用是由浏览器按照一定的原则在后台自动发送给服务器的。浏览器检查所有存储的cookie,如果某个cookie所声明的作用范围大于等于将要请求的资源所在的位置,则把该cookie附在请求资源的HTTP请求头上发送给服务器。 12345 cookie的内容主要包括:名字,值,过期时间,路径和域。路径与域一起构成cookie的作用范围。若不设置过期时间,则表示这个cookie的生命期为浏览器会话期间,关闭浏览器窗口,cookie就消失

nodejs 实现套接字服务

风流意气都作罢 提交于 2020-03-04 09:51:19
nodejs实现套接字服务 一 什么是套接字 1.套接字允许一个进程他通过一个IP地址和端口与另一个进程通信,当你实现对运行在同一台服务器上的两个不同进程的进程间通信或访问一个完全不同的服务器上运行的服务时,套接字很有用。node提供的net模块,允许你既创建套接字服务器又创建可以连接到套接字服务器的客户端。 2.套接字位于HTTP层下面并提供服务器之间的点对点通信。套接字使用套接字地址来工作,这是IP地址和端口的组合。在套接字连接中,有两种类型的点:一类是服务器,它监听连接;一类是客户端,它打开一个到服务器的连接。服务器和客户端都需要一个唯一的IP地址和端口的组合。 3.套接字是HTTP模块的底层结构,如果你不需要处理如get何post的web请求,只需要点对点的传输数据,那么使用套接字就可以就能为你提供一个轻量级的解决方案和更多的控制。 二 net.Socket对象 1.Socket对象同时在套接字服务器和客户端套接字上创建,并允许数据在它们之间来回写入和读取。在套接字客户端,当你调用net.connect()或net.createConnection()时,Socket对象在内部创建,这个对象是为了表示到服务器的套接字连接。使用Socket对象来监控连接,将数据发送到服务器并处理来自服务器的响应。在套接字服务器上,当客户端连接到服务器时,Socket对象被创建

进程间通信之------- 命名管道

混江龙づ霸主 提交于 2020-03-04 05:48:07
我们知道管道包括三种: 1):普通管道PIPE,通常有很多限制,一是半双工,只能单向传输,二是只能在父子进程间使用 2):流管道:这种能双向传输,但是也是只能父子进程间使用。 3):命名管道,去除了以上的第二种限制,可以在许多不相关的进程间进行通讯。也是半双工的通信方式。 但是通常我们把管道分为匿名管道和命名管道。但对于匿名管道的话,只能在本机上进程之间通信,而且只能实现本地的父子进程之间的通信,局限性太大了。而这里介绍的命名管道,就和匿名管道有些不同了,在功能上也就显得强大许多,至少其可以实现跨网络之间的进程的通信,同时其客户端既可以接收数据也可以发送数据,服务器端也是可以接收数据,又可以发送数据。 匿名管道的概述    对于匿名管道而言,命名管道使用了windows安全机制,因而命名管道的服务器端可以控制哪些客户有权与其建立连接。哪些客户端是不能够与这个命名管道建立连接的。命名管道的通信是以连接的方式进行的,服务器创建一个命名管道对象,然后在此对象上等待连接请求,一旦客户连接过来,则两者都可以通过命名管道读或者写数据。   命名管道提供了两种通信模式:字节模式和消息模式。在字节模式下,数据以一个连续的字节流的形式在客户机和服务器之间流动。而在消息模式下,客户机和服务器则通过一系列不连续的数据单位,进行数据的收发,每次在管道上发出一个消息后,它必须作为一个完整的消息读入。

进程间通信 - 命名管道实现

南笙酒味 提交于 2020-03-04 05:47:46
引子 好,到这里呢,就需要介绍实现进程间通信的第四种方式了, 也就是通过命名管道来实现,前面介绍的那三种方式呢,都是有缺陷或者说局限性太强, 而这里介绍的命名管道相对来说,在这方面就做得好很多了, 比如,剪贴板的话只能实现本机上进程之间的通信, 而邮槽的话虽然是可以实现跨网络之间的进程的通信, 但麻烦的是邮槽的服务端只能接收数据,邮槽的客户端只能发送数据,太悲剧了, 而对于匿名管道的话,其也只能实现本机上进程之间的通信, 你要是能够实现本机进程间的通信也就算了, 关键是它还只用来实现本地的父子进程之间的通信,也太局限了吧? 而这里介绍的这个命名管道的话,就和他们有些不同了,在功能上也就显得强大很多了, 至少其可以实现跨网络之间的进程的通信,同时其客户端既可以接收数据也可以发送数据, 服务端也是既可以接收数据,又可以发送数据的。 命名管道概述 命名管道是通过网络来完成进程之间的通信的,命名管道依赖于底层网络接口, 其中包括有 DNS 服务,TCP/IP 协议等等机制,但是其屏蔽了底层的网络协议细节, 对于匿名管道而言,其只能实现在父进程和子进程之间进行通信,而对于命名管道而言, 其不仅可以在本地机器上实现两个进程之间的通信,还可以跨越网络实现两个进程之间的通信。 命名管道使用了 Windows 安全机制,因而命名管道的服务端可以控制哪些客户有权与其建立连接,

配置sql server 2000以允许远程访问

风格不统一 提交于 2020-03-04 04:34:48
配置 sql server 2000 以允许远程访问 适合故障: 1. 用sql企业管理器能访问 sql server 2000 (因为它是采用命名管道(named pipes)方式进行方式),但用ado.net 方式(udp)不能 访问. 2. 采用ado.net方式不能远程访问. 故障的可能原因有: 1. sql server 2000 没有安装 sql server 2000 sp3a及以上升级包,还未启用并开放1433端口(udp); 2.系统防火墙未开放1433端口. 解决办法: 一.检查 sql server 2000 是否已启用并开放1433端口.(在sql2000服务器上) 方法: 开始-->运行-->打开-->执行 "cmd" 命令 -->执行 "netstat -na" 命令. 看是否有无 TCP 127.0.0.1:1433 0.0.0.0:0 LISTENING TCP 192.168.123.98:1433 0.0.0.0:0 LISTENING 如果没有刚表明sql2000端口监听服务未启动. 转第三步. 如果有则转第二步 二.检查 sql server 2000 服务器所在机器防火墙设置, sql server 2000 服务器端是否启动Sql Server服务. 主要检查防火墙是否设置允许1433端口通信. 简单的方法是关闭防火墙后再试. 方法:

git+gitolite如何实现权限控制

99封情书 提交于 2020-03-03 18:41:14
写在前面 因平时工作环境是svn,想使一下git,于是在网站服务器上搭建一个git作为平时代码的存储。 以下内容转自: https://www.cnblogs.com/fly_dragon/p/8718614.html 亲测有效。 关于gitolite权限管理也可参考 git+gitolite如何实现权限控制 或 git服务器搭建及gitolite权限管理 。 声明:本教程,仅作为配置的记录,细节不展开,需要您有一点linux的命令基础,仅作为配置参考。 1. 系统环境 系统: Linux: CentOS 7.2 64位 由于CentOS已经内置了 OpenSSH ,如果您的系统没有,请自行安装。 查看ssh版本 $ ssh -V # 输出以下表示没问题,可以继续。 版本可能不一致,能用即可。 OpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips 11 Feb 2013 避免系统环境和其他的不一致,请核对您系统的版本,其他发行版请对应修改。 2. 安装git 建议以下操作都切换到root # 请确保您切换到了root账户 $ su root $ yum install -y git # 验证是否安装成功 $ git --version # 输出如下内容表示成功: git version x.x.x.x 3. 添加git的管理的账户和设置密码

编写一篇博文介绍COOKIE和Session的原理及异同

不问归期 提交于 2020-03-03 18:17:53
一、什么是cookie 1.概念 Cookie是存储在客户机的文本文件,它们保存了大量轨迹信息。在servlet技术基础上,JSP显然能够提供对HTTP cookie的支持。 Cookie 是在 HTTP 协议下,服务器或脚本可以维护客户工作站上信息的一种方式。Cookie 是由 Web 服务器保存在用户浏览器(客户端)上的小文本文件,它可以包含有关用户的信息。无论何时用户链接到服务器,Web 站点都可以访问 Cookie 信息 。 2.原理 通常有三个步骤来识别回头客: 服务器脚本发送一系列cookie至浏览器。比如名字,年龄,ID号码等等。 浏览器在本地机中存储这些信息,以备不时之需。 当下一次浏览器发送任何请求至服务器时,它会同时将这些cookie信息发送给服务器,然后服务器使用这些信息来识别用户或者干些其它事情。 二、什么是Session 1.概念 Session是一次浏览器和服务器的会话对象,session也是缓存,是内容,是块数据。我们访问网页使用的HTTP协议是无状态的,没有任何关系,快速的。所以我们如果想要关联客户的信息就需要一种办法能够把客户的信息联系在一起,这个方法就是cookie。但是cookie是把信息储存在用户本地,不安全又很容易的被修改。所以session就出现了,它储存在服务器上,通过它关联同一个用户的信息