zorke 的博客

只为成功找方法,不为失败找借口! 开始使用
Nginx 配置 Https 反向代理

Nginx 配置 Https 反向代理

本文主要是记录配置 nginx 反向代理 https 过程中的一些记录!一、Nginx 添加 SSL 模块 nginx 默认缺少 SSL 模块支持,需要手动编译安装!由于本文之前已经编译安装过 nginx,因此本文将是在原有基础之上编译安装添加 SSL 模块 cd/root/app/nginx-1.14.0/usr/local/nginx/sbin/nginx-V#查看 nginx 旧的编译参数./configure[......旧
J2EE 基础知识

J2EE 基础知识

本文主要是记录在学习 J2EE 过程中的一些知识点备忘!201812131、JSP 工作原理 JSP 是一种 Servlet,且不同于 HttpServlet;HttpServlet 是先由源代码编译为 class 文件后,在部署到服务器下,是先编译后部署,而 JSP 则是先部署后编译;JSP 会在客户端第一次请求 JSP 文件时被编译为 HttpJspPage 类(接口 Servlet 的一个子类),该类会被服务器临时存放在服务器工作
阿里云 ECS-CentOS7.4 Kaptcha 验证码字体显示异常

阿里云 ECS-CentOS7.4 Kaptcha 验证码字体显示异常

在一台阿里云 ECS 服务器 CentOS7.4 上部署程序,发现 Kaptcha 验证码显示异常,如下经分析排查,该验证码在 windows 及 mac 下本地前端页面显示正常,并且在后端服务器中生成验证码的地方将其以文件的形式生成去查看文件也是正常的=》因此,分析应该是系统环境字体的问题,先将解决办法记录如下:1、确认部署环境 CentOS7.4 的默认字体是 msam10.ttffc-macth#可查看默认字体,且字体
NVM 管理 NodeJS 版本

NVM 管理 NodeJS 版本

本文主要是介绍在 MacOS 或 CentOS 下 NVM 工具的安装,以及使用 nvm 管理安装不同版本的 nodejs 的方法一、NVM 安装 cd~/&&gitclonehttps://github.com/creationix/nvm.git.nvm#下载源码 cd~/.nvm&&gitcheckoutv0.33.11#切换 git 分支版本 sudosh./nvm.sh#安装 nvmvim~/.bash_profile#添
排序算法之比较排序

排序算法之比较排序

本文主要是记录在学习《算法笔记》等书籍中的排序算法,排序算法按照是否基于“比较”操作可以分为比较排序和非比较排序两大类,这一篇文章主要是记录比较排序算法时的知识点和相关总结!一、概述排序算法是非常基础和重要的一类算法,本文主要是介绍比较排序算法的思想,主要涉及到冒泡排序、梳排序、堆排序、归并排序(递归版与非递归版)、快速排序(递归版与非递归版)、内省排序、Timsort!(1)基于比较的排序算法,也
ActiveMQ 环境安装

ActiveMQ 环境安装

本文主要是记录 ActiveMQ 在 CentOS、MacOS 等环境下的安装,仅作记录之用!一、MacOS 下 brew 方式安装 brewinstallactivemqactivemq--version#查看版本号 activemqstart#启动 activemq 服务,本文访问[http://localhost:8161/](http://localhost:8161/),默认 admin,adminactivem
分布式系统概述

分布式系统概述

关键词:分布式系统、TCP/IP、NIO 模型一、基本概念**分布式系统:**多个节点(一般来说一个节点即一台计算机),且节点间互相连通(网络&消息传递)-> 在这些连通的节点上部署了组件并且组件之间的操作互相连通,,,这样的一个系统可以认为是一个分布式系统**冯诺依曼模型:**输入设备、存储器(内存&外存)、控制器、运算器、输出设备分布式系统~~超级计算机,也同样符合冯诺依曼模型多线程交互模式:互不通
架构 - 一款永不重复的高性能分布式发号器

架构 - 一款永不重复的高性能分布式发号器

零、基本术语发号器:用于生成唯一流水号(也即俗称的唯一 ID)的服务系统,称之为发号器一、技术选型 UUID 优点:能够保证唯一性缺点:(1)完全的时间数据=> 性能比较差、比较长、占用空间大、间接导致数据库性能下降;(2)无序=> 导致 B+ 树索引在写的时候会有过多的随机写操作,不会产生有顺序的 append 操作,而是需要进行 insert 操作,这将读取整个 B+ 树节点到内存并在插入该条记录后会将整个节点写会磁盘=
架构概述

架构概述

以高可用服务架构为主题的系统架构设计一直是技术人员所追求的,核心要点是“可伸缩”和“可扩展”,涉及到应用层、数据库、缓存、消息队列、大数据查询系统、分布式定时任务调度系统、微服务等层面如开源的一些可伸缩框架,数据库分库分表 dhsplit、缓存分片 redic、专业的发号器 vesta、消息队列处理机框架 kclient 本次读书系列,为学习李艳鹏大神的《可伸缩服务架构:框架与中间件》,该书主要通过 9 个章节从
分布式数据访问层

分布式数据访问层

关键词:拆分、事务、2PC、CAP、BASE、Paxos 一、数据库垂直/水平拆分 1、数据库减压的方案:(a)优化应用;(b)缓存、搜索引擎;(c)将数据库的数据和访问分到多台数据库上 2、垂直拆分的影响:单机事务 ACID、JOIN 操作、外键约束 3、水平拆分的影响:单机事务 ACID、JOIN 操作、外键约束、自增序列唯一 ID、查询跨库二、分布式事务 1、分布式事务处理模型-X/OpenDTP 模型三个组件:A
Java 面试

Java 面试

https://segmentfault.com/a/1190000004716061 一、1、Thread 和 Runnable 的区别:继承 Thread 类,实现 Runnable 接口-java 不支持多继承,但支持多实现,使用 Runnable 更灵活些;Runnable 是可以共享数据的,即多个 Thread 可以同时加载同一个 Runnable,runnable 里面的资源是共享的!如何停止一个县线程?线程编写中的一
Java 内存模型

Java 内存模型

关键词:线程、主内存、工作内存、JVM 内存模型一、概述所有线程共享主内存每个线程有自己的工作内存(也即执行空间:主要包括两部分,一是属于该线程私有的栈和对主存部分变量拷贝的寄存器(包括程序计数器 PC 和 cup 工作的高速缓存区))cpu 计算时从内存中读取数据的优先顺序依次是:寄存器-> 高速缓存-> 内存 https://blog.csdn.net/javazejian/article/details/727
分布式 Java 中间件

分布式 Java 中间件

关键词:java 线程中间件是为软件应用提供操作系统所提供的服务之外的服务的,如远程过程调用和对象访问中间件、消息中间件、数据访问中间件一、Java 线程线程操作的 jvm 内存是主内存和工作内存这两个概念的!!!1、**线程池:**有效复用线程而不用每次都创建线程,ThreadPoolExecutor、ScheduledThreadPoolExecutor(定时)、Executors.newCachedT
分布式系统架构

分布式系统架构

关键词:分布式系统架构、消息中间件分布式系统,主要是在支撑高并发访问量和海量数据的大型网站中设计,核心是存储(数据库)和计算(应用服务器处理业务和逻辑)**一、分布式系统架构的演进过程:**单机系统:应用&数据库在单个同一台机器上,应用内部各模块通过 JVM 内部方法调用进行交互,应用和数据库之间通过如 JDBC 访问数据库与应用分离:在单机负载告警情况下,将数据库与应用分开在两台机器上,开发部署上仅是数据
Spring 容器

Spring 容器

关键词:Spring 容器、BeanFactory、ApplicationContext 一、容器在 Java 中,如果有一个类是专门用来存放其他类的对象的,那么这个类就叫做容器(或者集合,集合就是将若干个性质相同或相近的类对象组合在一起而形成的一个整体)Java 容器类:List、ArrayList、Vector、Map、Hashtable、HashMap 等 Spring 容器:ApplicationConte
Spring 综述

Spring 综述

关键词:Spring 框架、SpringIOC 容器、SpringAOP、SpringMVC、Springboot、设计模式一、Spring 是什么 Spring 框架是一个开源的、轻量级的 J2EE 开发框架,核心思想是 IOC 实现松耦合,利用 AOP 将应用的业务逻辑与系统服务分离;广义上地说,Spring 是一系列开源项目的总称,SpringIOC\SpringMVC 等只是其中的开源项目而已二、Spring 生态 Sp
JVM 内存模型

JVM 内存模型

关键词:程序计数器、java 虚拟机栈、本地方法栈、静态方法区、堆区一、概述程序计数器是较小一块内存空间,用于当前线程所执行的字节码的行号指示器;栈分为 java 虚拟机栈和本地方法栈,主要用于方法的执行;方法区存储类信息、常量、静态变量等数据,也称静态方法区,为与 java 堆进行区分也称之为非堆(别名 Non-Heap)堆内存由年轻代(默认占堆内存 1/3,又分为 Eden 空间-伊甸区(也即新生代)、FromS
Java 类加载机制

Java 类加载机制

关键词:**类的装载、****类生命周期、类加载过程、**类装载器、双亲委派模型一、什么类的装载在很多其他文章或书中,一般都用“加载”这个词语,在这里我们用“装载”进行区分,以更好地加强理解;在这里,装载为表示 JVM 读取 class 文件二进制数据并生成 Class 对象的过程所谓装载类,就是 JVM 将类的.class 文件中二进制数据读取到内存(运行时数据区的方法区)中,并在内存(堆区)中创建 java.lan