
网络
文章平均质量分 85
淘气的高老板
污,孤傲,高冷,薄情,悲天悯人的高老板
展开
-
获取客户端访问真正的IP地址
可以获取真正的IP public static String getRealIpAddr(HttpServletRequest req) { String ip = req.getHeader("x-forwarded-for"); if(ip == null || ip.length() == 0 ||"unknown".equalsIgnoreCase(ip)) {原创 2016-07-10 00:35:38 · 4870 阅读 · 0 评论 -
深入理解TCP(2)TCP的断开一定是四次挥手吗?FIN_WAIT_2和CLOSE_WAIT,TIME_WAIT以及LAST_ACK的细节
答案是否定的 我们回顾下使用wireshark的抓包1. 服务器未开 客户端尝试连接2. 建立连接然后关闭,三次握手3/4次挥手, 3. 建立连接,交互一次然后断开,三次握手3次挥手根据wireshark的包,四会握手的第二步 被动断开的一方收到FIN(第一次握手)后要发送ACK。但是抓的包中有时候会没有这一步。 我们看一下一般的书中TCP四次挥手的图解当被动断开的一方发送ACK的时候,被动断原创 2017-09-05 23:14:09 · 19118 阅读 · 5 评论 -
nginx(11) nginx 配置动静分离,设置默认主页,限制某个路径的资源代理全解
1.绕过动态代理设置默认主页正常情况下,配置完location的root后,默认主页直接会取root指定路径的index.html index.php等作为默认主页以域名http://demo.williamy.xin:8090/ 为例现在做了反向代理, 输入域名会访问自己的动态服务路径为 / upstream demo.williamy.xin{ server原创 2016-12-27 16:37:59 · 17044 阅读 · 0 评论 -
由浅入深写java分布式(2) spring boot + dubbo + zookeeper详解
1.生产者2.消费者原创 2017-02-17 13:16:46 · 2706 阅读 · 0 评论 -
由浅入深写java分布式(1)动态代理
注:关于动态代理和dubbo的例子,代码参考了 点击打开链接的博客和文章public interface HelloService { String hello(String name); } public class HelloServiceImpl implements HelloService { public String hello(String n原创 2017-02-16 17:41:55 · 683 阅读 · 0 评论 -
沈洵:分布式事务原理与实践之多机事务
分布式事务与单机事务,相同与不同分布式事务的主要难题传统数据库的分布式事务新兴互联网行业的分布式事务尝试google spanner赏析阿里的分布式事务模型DRDS/TDDL实战目标完整的事务支持像传统单机事务一样的操作方式可按需无限扩展事务最重要的一件事就是易用本身。容易理解的模型往往性能都不好,性能好的模型往往不容原创 2017-02-01 18:12:43 · 1790 阅读 · 0 评论 -
沈洵:分布式事务原理与实践之单机事务
事务简介处理事务的常见思路事务处理的常见问题分布式事务面临的问题传统分布式事务模型赏析Google Spanner的创新与代价DRDS/TDDL的实践什么事事务看起来很简单,就三个命令bgin ccommitrollback如果没有对这个的原理了解的化,不会取舍事务的简介同步控制事务的核心是锁与并发优势:方便理解劣原创 2017-01-05 17:26:45 · 2422 阅读 · 0 评论 -
java 使用拦截器统计每个http请求的响应时间
以spring boot为例,注意拦截器是单利 ,因此不要使用成员变量记录时间,而是通过setAttribute,getAttribute来传送时间。@Configurationpublic class BootWebAppConfigurer extends WebMvcConfigurerAdapter { @Override public void addInterceptors(原创 2016-09-18 20:53:44 · 18704 阅读 · 4 评论 -
Nginx(9) nginx + tomcat动静分离
nginx, tomcat静态分离原创 2016-08-26 17:10:44 · 1069 阅读 · 0 评论 -
Nginx(5) 配置Ajax跨域访问
配置nginx跨域访问的好处是可以不修改后端代码nginx只要在返回头添加几个header即可add_header 'Access-Control-Allow-Headers' 'Content-Type';add_header 'Access-Control-Allow-Origin' '*';add_header 'Access-Control-Allow-Method原创 2016-08-22 15:03:40 · 8659 阅读 · 0 评论 -
JAVA 网络编程(6) Netty TCP 示例
maven使用的netty版本如下: io.netty netty-all 4.1.4.Final 示例代码:import io.netty.bootstrap.ServerBootstrap;import io.netty.channel.ChannelInitializer;import io.netty.channel.ChannelPipeline原创 2016-08-19 16:46:00 · 10774 阅读 · 4 评论 -
JAVA 网络编程(5) SOCKET UDP 单播和组播,以及组播其他机器收不到报文的解决方法
UDP既可以单播也可以组播一,单播单播的过程为发送方:InetAddress destAddr = InetAddress.getByName("192.168.4.199");// 发送的目的地址int targetPort = 3001; // 发送的目的端口DatagramSocket socket = new DatagramSocket();byte[] b原创 2016-08-19 12:13:25 · 6325 阅读 · 0 评论 -
JAVA 网络编程(1) SOCKET 普通示例
serverpublic class Server { public static void main(String[] args) { // 创建一个ServerSocket监听8080端口 try (ServerSocket server = new ServerSocket(8080); Socket socket = server.accept(); Buff原创 2016-08-18 00:12:07 · 405 阅读 · 0 评论 -
Linux 安装 域名服务
①安装http,在可以连接互联网的条件下 yum -y install httpd php php-mysql ②修改配置文件 vim /etc/httpd/conf/httpd.conf NameVirtualHost *:80serverName 200.200.200.177 ServerName service.gaotianyue.com原创 2016-08-04 18:53:29 · 693 阅读 · 0 评论 -
一般的加密技,数字证书,https以及其他
安全1.HttpsHttps示意图: graph LR 客户端-->HttpHttp-->SSL/TLS 服务端-->HttpSSL/TLS-->Http 2.对称加密和非对称加密 非对称加密算法 对称加密算法 HASH算法 RSA AES MD5 DSA/DSS RC4 SHA1 – 3DES原创 2017-05-25 15:50:12 · 487 阅读 · 0 评论