05 2019 档案

摘要:1. SQL标准 SQL是Structured Query Language的缩写,属于声明性语言,SQL有两个重要的标准,分别是 SQL92 和 SQL99,它们分别代表了 92 年和 99 年颁布的SQL 标准。 2. 常见的 SQL 分为哪几类? 1. DDL (Data Definition 阅读全文
posted @ 2019-05-30 23:00 songguojun 阅读(162) 评论(0) 推荐(0) 编辑
摘要:TCP/IP协议简介 TCP/IP协议簇是一种分层结构,TCP/IP不是一个协议,而是一个协议族的统称,里面包括TCP协议,IP协议、IMCP协议等等。这里主要讲解TCP协议和IP协议。 UDP协议 UDP服务于很多知名应用,如网络文件系统(NFS)、简单网络管理协}义(SNMP)、域名系统(DNS 阅读全文
posted @ 2019-05-30 22:57 songguojun 阅读(1005) 评论(0) 推荐(0) 编辑
摘要:一、单点登录介绍 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。也就是说,a.test.cn和b.test.cn两个站点之间只需要登录一次即可。 比如我在登录淘 阅读全文
posted @ 2019-05-30 22:45 songguojun 阅读(527) 评论(0) 推荐(0) 编辑
摘要:Kibana安装 kibana下载地址:https://www.elastic.co/cn/downloads/kibana kibana镜像下载地址:https://mirrors.huaweicloud.com/kibana/5.5.2/ 因为我本地ES的版本是5.5.2的,所以这里kibana 阅读全文
posted @ 2019-05-30 18:21 songguojun 阅读(1290) 评论(0) 推荐(0) 编辑
摘要:context介绍 Golang里的Context包非常重要,Context包是在golang 1.7之后引入的,它主要是解决如何优雅的去控制子goroutine退出。 控制并发的两种方式 1. Waitgroup: 适用于多个goroutine执行同一件事,然后一直等到所有的goroutine执行 阅读全文
posted @ 2019-05-30 13:32 songguojun 阅读(344) 评论(0) 推荐(0) 编辑
摘要:LRU(Least Recently Used):最近最少使用页面置换算法,也就是首先淘汰最长时间未被使用的页面。关键是看页面最后一次被使用到发生调度的时间长短。 LFU(Least Frequently Used):最近最不常用页面置换算法,也就是淘汰一定时期内被访问次数最少的页。关键是看一定时间 阅读全文
posted @ 2019-05-30 10:56 songguojun 阅读(1756) 评论(0) 推荐(0) 编辑
摘要:MyBatis简单介绍 MyBatis是一个基于java开发的数据库持久框架。它本来是Apache下的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。 MyBatis中文网站:http: 阅读全文
posted @ 2019-05-30 10:03 songguojun 阅读(503) 评论(0) 推荐(0) 编辑
摘要:介绍 SSL安全协议又叫安全套接层(Secure Sockets Layer)协议,主要用于提高应用程序之间数据的数据安全。 SSL协议用途 HTTP协议现如今是应用最为广泛的协议。人们通过HTTP协议可以访问互联网上的网站,当我们输入一个网址的时候,浏览器会默认给加上网址的前面加上http,这表明 阅读全文
posted @ 2019-05-30 09:30 songguojun 阅读(1017) 评论(0) 推荐(0) 编辑
摘要:java中的集合类:是一种工具类,就是像容器,存储任意数量具有共同属性的对象。 集合的作用: 如果一个类内部有很多相同的属性,并且作用与意义是一样的,可以放在一起。 1.在类的内部对数据进行组织。 2.简单快速的搜索大数量的条目。 3.有的集合接口提供了一系列排列有序的元素,并且可以在序列中快速插入 阅读全文
posted @ 2019-05-30 00:10 songguojun 阅读(1609) 评论(0) 推荐(0) 编辑
摘要:1. NoSQL与RDBMS直接有什么区别?为什么要使用和不使用NoSQL数据库?说一说NoSQL数据库的几个优点? NoSQL是非关系型数据库,NoSQL = Not Only SQL。 关系型数据库采用的结构化的数据,NoSQL采用的是键值对的方式存储数据。 在处理非结构化/半结构化的大数据时, 阅读全文
posted @ 2019-05-29 23:10 songguojun 阅读(425) 评论(0) 推荐(0) 编辑
摘要:1.什么是 Nginx? Nginx (engine x) 是一款轻量级的 Web 服务器 、反向代理服务器及电子邮件(IMAP/POP3)代理服务器。 2. 什么是正向代理和反向代理? 正向代理就是一个人发送一个请求直接就到达了目标的服务器 反向代理(Reverse Proxy)就是请求统一被Ng 阅读全文
posted @ 2019-05-29 22:45 songguojun 阅读(175) 评论(0) 推荐(0) 编辑
摘要:代码测试 当开发人员开发好程序后还需要对代码进行测试,可以发现程序中可能存在的问题,测试可以分为传统测试和表格驱动测试,而表格驱动的单元测试技术相比传统测试有很多优点,下面对比下。 传统测试和表格驱动测试对比 1. 传统测试 看看下面一段传统测试代码,是对一个加法函数add的单元测试,assertE 阅读全文
posted @ 2019-05-29 22:42 songguojun 阅读(408) 评论(0) 推荐(0) 编辑
摘要:什么是SQL注入(SQL Injection)? SQL注入是一种未将输入参数进行过滤,然后将SQL代码添加到输入参数中并传递到SQL服务器解析并执行达到预想之外的一种攻击手法。这种SQL注入可以欺骗服务器并且执行一些非法的SQL语句从而导致信息泄漏及其他安全问题。SQL注入是安全问题中最高发的问题 阅读全文
posted @ 2019-05-29 22:40 songguojun 阅读(208) 评论(0) 推荐(0) 编辑
摘要:Spring框架简介 Spring是一个Java开源框架。最初是解决企业应用开发的复杂性而创建的,但是发展到现在已经不止于应用与企业应用了。Spring现在已经发展成了一个庞大的家族。 Spring框架特点 1. IoC(Inversion of Control) Spring框架是IOC理念具体实 阅读全文
posted @ 2019-05-29 22:35 songguojun 阅读(611) 评论(0) 推荐(0) 编辑
摘要:SpringBoot介绍 SpringBoot已成为当今最流行的微服务开发框架,它和spring 4一起诞生的,比如@RsetController可以快速上手,整合了一些子项目(包括开源框架和第三方代码库),直接引入就能用,帮你封装好了基于Spring ,容易快速入门,是Spring全家桶中的一员S 阅读全文
posted @ 2019-05-29 21:52 songguojun 阅读(264) 评论(0) 推荐(0) 编辑
摘要:XSS攻击是什么 XSS攻击指的是跨站脚本攻击(Cross Site Scripting),那么为什么不叫CSS呢,因为前端已经有CSS 层叠样式表 (Cascading Style Sheets)了,所以为了不混淆这里就叫做XSS。XSS攻击是一种经常出现在web应用中的计算机漏洞,它允许恶意用户 阅读全文
posted @ 2019-05-28 20:21 songguojun 阅读(150) 评论(0) 推荐(0) 编辑
摘要:引言 现在越来越多的系统都会用到缓存,只要使用缓存就可能涉及到缓存数据与数据库数据之间双写双存储,只要双写就会遇到数据一致性的问题,除非只有一个数据库服务器,数据一致性问题也就不存在了。 缓存的作用 1. 临时存储,用于提高数据查询速度。 比如CPU的L1高速缓存和L2高速缓存,缓存主要是为CPU和 阅读全文
posted @ 2019-05-24 18:35 songguojun 阅读(3149) 评论(0) 推荐(0) 编辑
摘要:什么是注解 注解(Annotation)是java中一个比较重要的部分,使用也比较多,很多java框架中都是基于注解来构建相关功能。 注解是JDK5.0中的一个新特性。注解是放在java源码中类,方法,字段,参数前面的一种标签,或者说是一种元数据(meta data)。这些注解信息可以在编译期使用预 阅读全文
posted @ 2019-05-24 08:55 songguojun 阅读(105) 评论(0) 推荐(0) 编辑
摘要:1.下载安装安全软件 2.取消Telnet登录采用SSH方式并更改ssh服务端远程登录的配置 1)Telnet登录协议是明文不加密不安全,所以采用更安全的SSH协议。 2)更改ssh服务端远程登录相关配置。 修改默认文件路径 vim /etc/ssh/sshd_config 修改的参数 port # 阅读全文
posted @ 2019-05-24 00:12 songguojun 阅读(3404) 评论(0) 推荐(0) 编辑
摘要:Linux系统上动态库一般的后缀后为.so文件,静态库一般的后缀为.a文件。由于静态链接会直接将库编译进程序里所以静态编译后的程序相较于动态链接所要大。这就是因为静态链接会将链接库编译进程序里的原因,所以占用就要大了,出于这种原因,静态库不易于维护与更新,如果链接库中有实现有bug等需要更新则需要更 阅读全文
posted @ 2019-05-24 00:09 songguojun 阅读(153) 评论(0) 推荐(0) 编辑
摘要:泛型引入 看一个问题,当我们一个方法的返回值有不同数据类型需要返回的时候,我们该怎么办。 下面是一个例子。 package xiana; class GenericObject { private Object x; //可以用object来接受所有的类型。 private Object y; pu 阅读全文
posted @ 2019-05-22 11:24 songguojun 阅读(311) 评论(0) 推荐(0) 编辑
摘要:Struts2介绍 Apache Struts2是一个基于MVC设计模式的Web应用框架,不仅仅是Struts1 的升级版本,而是由Struts1和WebWork框架整合而来。WebWork也是一款先进的J2EE Web框架,它致力于组件化和代码重用,采用拦截器机制来处理用户请求,这样设计的好处可以 阅读全文
posted @ 2019-05-20 20:51 songguojun 阅读(106) 评论(0) 推荐(0) 编辑
摘要:线程与进程 进程:动态的,程序(任务)执行的过程 ,持有资源(共享内存,共享文件)和线程。 线程:系统中最小的执行单元。同一个进程中有多个线程,线程之间共享进程资源。 线程与进程的比较 1. 调度。 在传统的操作系统中,拥有资源和独立调度的基本单位都是进程。在引入线程的操作系统中,线程是独立调度的基 阅读全文
posted @ 2019-05-18 13:34 songguojun 阅读(248) 评论(0) 推荐(0) 编辑
摘要:Docker Compose简介 Docker Compose是一个用来定义和运行多容器Docker应用程序的工具,一个使用Docker容器的应用,通常会由多个容器组成,而使用Docker Compose就不在使用shell脚本来启动容器,而是通过使用服务编排的方式来管理容器。Docker Comp 阅读全文
posted @ 2019-05-17 09:34 songguojun 阅读(246) 评论(0) 推荐(0) 编辑
摘要:Redis Sentinel简介 Redis的主从复制模式下,一旦主节点由于故障不能提供服务,需要人工将从节点晋升为主节点,再通知所有的程序把 master 地址统统改一遍,然后重新上线。毫无疑问,这种故障处理的方法是效率低下的。于是Redis 从 2.8 开始正式提供了 sentinel 架构来解 阅读全文
posted @ 2019-05-16 21:32 songguojun 阅读(174) 评论(0) 推荐(0) 编辑
摘要:Servlet介绍 Servlet 是 Server Applet 的缩写,也称为服务端小程序。作为在来自 Web 浏览器或其他 HTTP 客户机的请求和在 HTTP 服务器上的数据库或应用程序的中间层。使用 Servlet,你可以通过 web 页面表单来收集用户的输入,显示从数据库或其他来源的记录 阅读全文
posted @ 2019-05-16 21:25 songguojun 阅读(140) 评论(0) 推荐(0) 编辑
摘要:IO线程模型一直在演化,由最开始的单线程模型,到BIO方式的单线程接受请求线程池线程具体处理单个请求的读写事件,再到NIO的单线程接受请求线程池里面的单个线程可以处理不同请求的读写事件,一个字没有最快,只有更快。 引入进程的目的,是为了使多道程序并发执行,以提高资源利用率和系统吞吐量;而引入线程,则 阅读全文
posted @ 2019-05-16 10:56 songguojun 阅读(90) 评论(0) 推荐(0) 编辑
摘要:在分布式系统中,一致性是指在集群中的多个网络节点在状态上达成一致。但是在现实场景中,由于程序的奔溃,网络故障,网络延迟,硬件故障,断电,黑客攻击等原因,节点之间很难保证一致性,这样就需要Paxos,Raft等一致性协议。通过一致性算法的协调处理来保证数据状态的一致性,所以一致性算法非常重要。 基于消 阅读全文
posted @ 2019-05-14 11:22 songguojun 阅读(166) 评论(0) 推荐(0) 编辑
摘要:引言 现代Web应用程序最基本,最常用的操作功能就是和数据库进行通信,读写数据操作。现在使用最广泛的数据存储就是关系数据库。 Java为关系数据库定义了一套标准的访问接口:JDBC(Java Database Connectivity),本章我们介绍如何在Java程序中使用JDBC。 JDBC简介 阅读全文
posted @ 2019-05-13 20:16 songguojun 阅读(98) 评论(0) 推荐(0) 编辑
摘要:日志的分类 1. 调试日志。软件开发阶段调试程序去记录运行程序的信息,状态的输出,便于查询程序的运行状况及定位错误等。一般在上线后调试日志会被关闭。 2. 系统日志。记录线上用户操作的行为,记录系统软硬件运行状况,同时还可以监视系统中发生的事件。可以通过搜集系统日志中的信息检查系统错误原因,或者寻找 阅读全文
posted @ 2019-05-12 18:19 songguojun 阅读(168) 评论(0) 推荐(0) 编辑
摘要:一.php语言特点及发展现状 1.服务端脚本语言,自由度太大 ,一个业务逻辑可言写在模型里,控制器里,也可以单独封装成一个类,甚至可以嵌入到html里,这样势必会造成混乱,业务逻辑散落在各处,尤其对于大型系统。除非有一个强制性的约定,对于静态语言,比如java可以在编译的时候来进行检验,但是解释性的 阅读全文
posted @ 2019-05-12 14:32 songguojun 阅读(996) 评论(0) 推荐(0) 编辑
摘要:树和图的深度优先,广度优先遍历所使用的也是回溯法,在动态规划中采用暴力递归解决01背包问题时候也归位回溯法。 回溯法核心思想: 回溯法的基本思想就是在问题的解空间(问题所有备选解所组成的集合)中不断的尝试,如果发现无法尝试就回退到上一步继续尝试直到找到问题的解为止。 迷宫问题:站在迷宫入口,要走出迷 阅读全文
posted @ 2019-05-12 10:38 songguojun 阅读(80) 评论(0) 推荐(0) 编辑
摘要:索引概述 MYSQL数据库系统除了保存数据之外,为了能够提高对数据的快速访问,MYSQL为此设计了索引,MYSQL索引是一种可以快速提高MYSQL高效查询数据的一种数据结构。举个例子索引就跟我们的书本的目录一样,如果一本书没有目录,那么你要找想看的地方,那会是相当费劲的,只能一页页去翻,而数据库的索 阅读全文
posted @ 2019-05-10 21:09 songguojun 阅读(137) 评论(0) 推荐(0) 编辑
摘要:Storm简介: Storm起源Twitter开源的一个类似于Hadoop的实时数据处理框架,不过两则还是有区别的,Hadoop是批量处理数据,而Storm处理的是实时的数据流。 Storm应用场景: 1.推荐系统:实时跟新模型查询并推荐,根据下单或者加入购物车推荐相关商品。 1.网站统计:实时销量 阅读全文
posted @ 2019-05-07 21:08 songguojun 阅读(575) 评论(0) 推荐(0) 编辑
摘要:Spark简介: Spark是一个快速且通用的集群计算平台,可以处理大数据量时候,比如几T到几P量级时候只需要几秒钟到几分钟,相对于hadoop几分钟到几小时速度是很快的,通用是指Spark的使用场景非常多。 官网地址:http://spark.apache.org/ Spark特点: 1.Spar 阅读全文
posted @ 2019-05-07 20:48 songguojun 阅读(882) 评论(0) 推荐(0) 编辑
摘要:凯撒密码简介 凯撒密码(caeser)是罗马扩张时期朱利斯•凯撒(Julius Caesar)创造的,用于加密通过信使传递的作战命令。它将字母表中的字母移动一定位置而实现加密。 凯撒密码工作原理 凯撒密码的工作原理是将明文中所使用的字母表按照一定的字数平移来进行加密。 阅读全文
posted @ 2019-05-01 00:53 songguojun 阅读(1263) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示