随笔分类 -  Java应用

Java相关知识及实践
摘要:[TOC] 1. 容灾的基本认识 1.1 概念 容灾系统是指在相隔较远的异地,建立两套或多套功能上相同的系统。 一个系统处于正常的运行状态,对外提供服务( 主机 ),担任备份功能的系统则称为 备机 。 当主机系统因意外(火灾、洪灾等)停止工作时,可以切换到备机系统对外提供服务,使整个软件系统具备高可 阅读全文
posted @ 2018-10-10 20:43 eaglediao 阅读(1030) 评论(0) 推荐(0)
摘要:[TOC] 1. 概述 Apache Kafka是一个分布式消息系统,凭借其优异的特性而被广泛使用。 高性能:O(1)复杂度消息快速持久化。 高吞吐率: 单机每秒10w条消息传输。 支持消息分区和分布式消费。 支持在线水平扩展。 架构及核心组件 Producer: 消息生产者,即向kafka bro 阅读全文
posted @ 2018-09-10 18:10 eaglediao 阅读(1322) 评论(0) 推荐(0)
摘要:[TOC] 1. 常见报错及解决 内置jetty,jsp支持报错,基本都是 jetty、jsp相关依赖配置 问题。下面是几个常见报错的例子: 1.1 JSP support not configured 解决: 检查pom文件是否有相关依赖,如果没有则添加。注意使用9.3.0.M1版本不行。使用re 阅读全文
posted @ 2018-08-29 23:46 eaglediao 阅读(4473) 评论(2) 推荐(0)
摘要:[TOC] 浏览器可以作为客户端向服务器发送Http请求,当需要访问后台或第三方Restful接口时,也可以用java实现客户端直接发get/post请求,获取数据。 https客户端 指定ssl算法套 如果是需要设置客户端算法套,可以通过继承SSLSocketFactory重写其createSoc 阅读全文
posted @ 2018-08-12 23:39 eaglediao 阅读(3041) 评论(0) 推荐(0)
摘要:1. TLS/SSL基本工作方式: TLS/SSL的功能实现主要依赖于三类基本算法(参见 "“网络安全系列 之 密码算法”" ): 非对称加密算法 :实现 身份认证和密钥协商 对称加密算法 : 采用协商的密钥对 数据加密 哈希算法 :验证信息的 完整性 客户端使用非对称加密与服务器进行通信,实现身份 阅读全文
posted @ 2018-07-26 20:30 eaglediao 阅读(1417) 评论(0) 推荐(0)
摘要:[TOC] 1. 什么是安全的随机数? 在安全应用场景,随机数应该使用安全的随机数。密码学意义上的安全随机数,要求必须保证其 不可预测性 。 2. 怎么得到安全的随机数 可以直接使用真随机数产生器产生的随机数。或者使用真随机数产生器产生的随机数做种子,输入密码学安全的伪随机数产生器产生密码学安全随机 阅读全文
posted @ 2018-07-18 16:09 eaglediao 阅读(48343) 评论(0) 推荐(7)
摘要:[TOC] 一. mysql5.7安装 0. 背景 之前用的5.6版本,5.6版本有ssl中间人攻击漏洞,建议升级成5.7。 1. 准备:下载安装包 安装环境:CentOS7.4 在 "mysql官网" 下载mysql5.7最新版本,本文以tar包形式安装,故下载mysql 5.7.22 el7 x 阅读全文
posted @ 2018-06-09 16:26 eaglediao 阅读(2925) 评论(1) 推荐(0)
摘要:[TOC] 1. 从单机到集群,分布式环境中的挑战 1.1 集中式的特点 部署结构简单 协作相对简单,不存在分布式协作问题 单点故障问题 1.2 集中式的痛点 随着业务的发展和演进,将所有业务集中实现在一个应用上的做法往往满足不了公司及业务发展的需要,单一的系统已经不足以承载大量的业务。 (尤其是互 阅读全文
posted @ 2018-05-13 17:42 eaglediao 阅读(560) 评论(0) 推荐(0)
摘要:[TOC] 注解形式配置应用IOC 在类定义、方法定义、成员变量定义前使用,格式:@注解标记名 理解与回顾 : 使用Spring IOC 管理对象 (定义bean、bean的控制(scope/init method等属性))及 对象关系 (DI: set注入/构造器注入)。 控制反转: 改变了对象获 阅读全文
posted @ 2018-04-08 23:18 eaglediao 阅读(361) 评论(0) 推荐(0)
摘要:[TOC] 1. sql注入概述 程序里面如果使用了未经校验的外部输入来构造SQL语句,就很可能会引入SQL注入漏洞。 注入攻击 对于字符串输入,如果这个字符串将被解释为某种指令,那么需要特别注意防止注入攻击。sql注入、os命令注入、xml注入是典型的攻击类型。 2. sql注入测试工具 可以使用 阅读全文
posted @ 2018-03-31 17:20 eaglediao 阅读(5875) 评论(0) 推荐(0)
摘要:log4j2.xml配置文件中支持配置 monitorInterval 参数,检测到配置改变后重新加载,达到动态调整日志级别的效果。 故调整日志级别无须手动重启服务。 参考: "Dynamically Changing log4j log level" 阅读全文
posted @ 2018-03-21 15:11 eaglediao 阅读(694) 评论(0) 推荐(0)
摘要:[TOC] 数据库安全使用规则 1. 数据库版本及运行要求 1. 使用稳定的解决了已知漏洞的版本,如5.6.39或5.7.20 (更新 于2018.2) 2. 以 skip symbolic links选项启动数据库:禁止在创建索引和创建表的时候,将索引文件和数据文件链接到其他文件。 2. 通用加固 阅读全文
posted @ 2018-03-10 14:55 eaglediao 阅读(3194) 评论(0) 推荐(0)
摘要:所谓责任,就是一个Handler做某一种处理。各个Handler之间低耦合。所谓链,就是各个Handler依次对请求做相应处理的一种组织形式。简言之就是:分离职责,动态组合。 阅读全文
posted @ 2017-12-28 09:31 eaglediao 阅读(1770) 评论(0) 推荐(1)
摘要:加密安全问题主要包括加密算法安全和密钥硬编码。二者均有可能造成用户信息泄露或篡改。加密算法安全主要包括:算法安全、密钥安全、加密模式安全、IV变量安全、Hash算法安全、签名安全以及PBKDF算法安全。 非对称加密RSA" 阅读全文
posted @ 2017-12-26 23:45 eaglediao 阅读(364) 评论(0) 推荐(0)
摘要:1. SSL/TLS协议 对于HTTPS、FTPS等协议,其底层使用了SSL/TLS协议。 目前SSL/TLS协议版本共有5个:SSL2.0、SSL3.0、TLS1.0、TLS1.1、TLS1.2 SSL2.0禁止使用,原因:MD5做消息认证算法、容易受到中间人攻击从而被选择弱加密算法、加密和消息认 阅读全文
posted @ 2017-11-21 11:05 eaglediao 阅读(329) 评论(0) 推荐(0)
摘要:1. 基本概念 FTP :File Transfer Protocol FTPS :FTP over SSL。构建在SSL/TLS(Secure Socket Layer/Transport Layer Security)协议之上的,通过SSL/TLS对信道进行加密传输。 SFTP :SSH Fil 阅读全文
posted @ 2017-11-20 19:24 eaglediao 阅读(796) 评论(0) 推荐(0)
摘要:[TOC] 1. 简介 1.1 密码算法作用 1. 机密性:敏感信息不泄露给未经授权的实体。 2. 完整性:保证信息在储存和传输过程中不被修改。如使用hash函数校验。 3. 真是性:可以确定远程用户或系统的身份。 4. 不可抵赖性:证明一个唯一的用户进行了交易请求。用户是不可能对他或她的行为进行否 阅读全文
posted @ 2017-11-08 11:02 eaglediao 阅读(9244) 评论(0) 推荐(0)
摘要:[TOC] 最近涉及到安全相关的知识,这里对安全秘钥管理要点做简单记录: 加密技术 是最常用的安全保密手段,利用技术手段把重要的数据变为乱码(加密)传送,到达目的地后再用相同或不同的手段还原(解密)。 0. 基本概念 加密包括两个元素: 算法 和 密钥 。一个加密算法是将消息与密钥(一串数字)结合, 阅读全文
posted @ 2017-11-07 11:09 eaglediao 阅读(12049) 评论(0) 推荐(2)
摘要:![JVM基础总结](http://images2017.cnblogs.com/blog/493729/201710/493729-20171029200930351-1913402093.png) ![](http://images2017.cnblogs.com/blog/493729/201710/493729-20171029194945336-639774725.png) ![](ht... 阅读全文
posted @ 2017-10-29 19:50 eaglediao 阅读(176) 评论(0) 推荐(0)
摘要:[TOC] 1. 线程池的创建 线程池的创建使用 ThreadPoolExecutor类 ,有利于编码时更好的明确线程池运行规则。 // execute方法源码实现(jdk1.8) public void execute(Runnable command) { if (command == null 阅读全文
posted @ 2017-10-27 12:23 eaglediao 阅读(1605) 评论(0) 推荐(0)