摘要:Zookeeper客户端简介 Zookeeper 原生客户端,zookeeper官方提供的java客户端API; ZkClient 开源的zk客户端,在原生API基础上封装,是一个更易于使用的zookeeper客户端; Curator 开源的zk客户端,在原生API基础上封装,apache顶级项目;
阅读全文
摘要:分布式系统是什么 分布式系统:一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统。这是分布式系统,在不同的硬件,不同的软件,不同的网络,不同的计算机上,仅仅通过消息来进行通讯与协调。这是他的特点,更细致的看这些特点又可以有:分布性、对等性、并发性、缺乏全局时钟、
阅读全文
摘要:本文转载自:https://www.cnblogs.com/demingblog/p/10874753.html 在web应用开发中,安全无疑是十分重要的,选择Spring Security来保护web应用是一个非常好的选择。Spring Security 是spring项目之中的一个安全模块,可以
阅读全文
摘要:本文参考了: https://www.cnblogs.com/zkm1992/p/10939730.html https://www.jianshu.com/p/336c71c68a52 引入依赖 使用的版本取决于SpringBoot的版本,因为存在兼容性的问题,版本需要提前确认好。 <depend
阅读全文
摘要:引导Bootstrap 我们把前面的用例称作引导一个服务器,后面的用例称作引导一个客户端。虽然这个术语简单方便,但是它略微掩盖了一个重要的事实,即“服务器”和“客户端”实际上表示了不同的网络行为;换句话说,是监听传入的连接还是建立到一个或者多个进程的连接。因此,有两种类型的引导:一种用于 客户端(简
阅读全文
摘要:什么是二分查找? 二分查找(binary search)又叫折半查找,它是一种在有序数组中查找某一特定元素的搜索算法。 二分查找必要条件? 必须为顺序存储结构; 必须按关键字大小有序排列。 二分查找原理 使用二分查找算法找出arrays数组中8的位置 int[] arrays = new int[]
阅读全文
摘要:Netty是什么?为什么要用Netty? 介绍 Netty是由JBOSS提供的一个java开源框架。 Netty提供异步的、事件驱动的网络应用程序框架和工具, 用以快速开发高性能、高可靠性的网络服务器和客户端程序。 为什么要用Netty 1、虽然JAVA NIO框架提供了 多路复用IO的支持,但是并
阅读全文
摘要:本文转载自:http://www.52im.net/thread-1939-1-1.html 线程模型 上篇《高性能网络编程(五):一文读懂高性能网络编程中的I/O模型》介绍完服务器如何基于 I/O 模型管理连接,获取输入数据,下面将介绍基于进程/线程模型,服务器如何处理请求。 值得说明的是,具体选
阅读全文
摘要:本文转载自:http://www.52im.net/thread-1935-1-1.html 互联网服务端处理网络请求的原理 首先看看一个典型互联网服务端处理网络请求的典型过程: 由上图可以看到,主要处理步骤包括: 1)获取请求数据,客户端与服务器建立连接发出请求,服务器接受请求(1-3);2)构建
阅读全文
摘要:本文转载自:https://www.cnblogs.com/franson-2016/p/5593080.html Lambda表达式的语法基本语法:(parameters) -> expression或(parameters) ->{ statements; }下面是Java lambda表达式的
阅读全文
摘要:原生JDK网络编程 网络编程里通用常识 既然是通信,那么是肯定是有两个对端的。在通信编程里提供服务的叫服务端,连接服务端使用服务的叫客户端。在开发过程中,如果类的名字有Server或者ServerSocket的,表示这个类是给服务端用的,如果类的名字只有Socket的,那么表示这是负责具体的网络读写
阅读全文
摘要:概述 Fork/Join基于分而治之的算法,它可以将一个大的任务拆分成多个子任务进行并行处理,最后将子任务结果合并成最后的计算结果,并进行输出。本文中对Fork/Join框架的讲解,基于JDK1.8+中的Fork/Join框架实现,参考的Fork/Join框架主要源代码也基于JDK1.8+。 基本使
阅读全文
摘要:本文转载自:https://segmentfault.com/a/1190000018626163 1. 概述 本文以淘宝作为例子,介绍从一百个到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。 特
阅读全文
摘要:计算机网络体系结构 开放系统互连参考模型 (Open System Interconnect 简称OSI)是国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)联合制定的开放系统互连参考模型,为开放式互连信息系统提供了一种功能结构的框架。其目的是为异种计算机互连提供一个共同的基础和标准框架
阅读全文
摘要:公钥和私钥 概念 交互过程 浏览器使用公钥,把数据加密后,再发送出去。经过公钥加密内容,只有有私钥的人(nginx服务器)才看得懂。 nginx配置https nginx配置https的时候,需要两个东西:(此两样需购买)。一个key,私钥。放在nginx服务器里面,仅此一份;一个证书,公钥,供浏览
阅读全文
摘要:nginx整体核心原理 当用户从浏览器访问nginx时,由nginx做反向代理,根据location规则将请求分发到具体的web服务器上, 这样可以实现路由、负载等功能。 nginx三大主功能 1、读静态文件2、反向代理3、负载:upstream 一组tomcat nginx执行图,location
阅读全文
摘要:本文转载自:https://blog.csdn.net/qq_34190023/article/details/82351505 开发小程序需要在公众平台注册一个小程序账号,然后获取到小程序的AppID和AppSecret。就可以进行第三方登陆授权开发。 一、需求 拥有第三方微信登录功能,并获取到用
阅读全文
摘要:本文转载自:https://blog.csdn.net/qq_34190023/article/details/82017767 一、需求 根据需求,需要拥有第三方微信登录功能,并获取到用户信息。 二、开发流程 微信公众平台第三方授权登录的应用场景在于 : 在微信客户端(PC或APP)访问第三方网页
阅读全文
摘要:本文转载自:https://blog.csdn.net/qq_34190023/article/details/81185143 微信开放平台第三方授权登陆开发文档(PC网页端) 当微信开放平台开发第三方授权登陆(一):开发前期准备完成后,已经获取到应用的AppID和AppSecret、且已经成功申
阅读全文
摘要:本文转载自:https://blog.csdn.net/qq_34190023/article/details/81133619 据微信开放平台“开发资源”中网站应用微信登陆功能开发指南描述:进行授权登陆接入前,需要先注册一个开发者账号,并拥有一个已经审核通过的网站应用,并获取AppID和APPSe
阅读全文
摘要:本篇文章转载自:https://www.cnblogs.com/Eric-zhao/p/6655994.html mysql语法支持如果数据存在则更新,不存在则插入,首先判断数据存在还是不存在的那个字段要设置成unique索引, 例如表tb_addrbook如下: 索引: 语句1:不存在插入 INS
阅读全文
摘要:kill命令 kill命令格式: kill 是向进程发送信号的命令。 Nginx的信号 1)、TERM、INT 快速关闭 2)、QUIT从容关闭 3)、HUP平滑重启,重新加载配置文件 4)、USR1 重新打开日志文件 5)、USR2 平滑升级可执行程序 KILL 9 强制终止,直接杀(类似于win
阅读全文