Spring Boot + Spring Cloud 实现权限管理系统 后端篇(十):接口服务整理
摘要:通用操作 通用操作是指一般的增删改查操作,逻辑大体都是一致的,所以统一抽象到CURD接口,需要用到CURD的表直接实现接口就可以了。 通用操作主要有以下几个: 保存操作 更新操作 删除操作 批量删除 分页查询 根据ID查询 登录管理 登录接口 名称:login 类型:post 路径:/sys/log
阅读全文
posted @
2018-08-31 20:21
朝雨忆轻尘
阅读(5592)
推荐(0) 编辑
Vue + Element UI 实现权限管理系统 前端篇(八):管理应用状态
摘要:使用 Vuex 管理应用状态 1. 引入背景 像先前我们是有导航菜单栏收缩和展开功能的,但是因为组件封装的原因,隐藏按钮在头部组件,而导航菜单在导航菜单组件,这样就涉及到了组件收缩状态的共享问题。收缩展开按钮触发收缩状态的修改,导航菜单需要根据收缩状态来设置导航栏的宽度。这样就需要在收缩状态变更时刷
阅读全文
posted @
2018-08-30 19:53
朝雨忆轻尘
阅读(8287)
推荐(2) 编辑
Vue + Element UI 实现权限管理系统 前端篇(七):功能组件封装
摘要:组件封装 为了避免组件代码的臃肿,这里对主要的功能部件进行封装,保证代码的模块化和简洁度。 组件结构 组件封装重构后,试图组件结构如下图所示 代码一览 Home组件被简化,包含导航、头部和主内容三个组件。 Home.vue HeadBar.vue MenuBar.vue Main.vue 国际化语言
阅读全文
posted @
2018-08-29 19:06
朝雨忆轻尘
阅读(10634)
推荐(3) 编辑
Vue笔记:使用 vuex 管理应用状态
摘要:如果你在使用 vue.js , 那么我想你可能会对 vue 组件之间的通信感到崩溃 。 我在使用基于 vue.js 2.0 的UI框架 ElementUI 开发网站的时候 , 就遇到了这种问题 : 一个页面有很多表单 , 我试图将表单写成一个单文件组件 , 但是表单 ( 子组件 ) 里的数据和页面
阅读全文
posted @
2018-08-28 22:48
朝雨忆轻尘
阅读(4365)
推荐(3) 编辑
Vue + Element UI 实现权限管理系统 前端篇(六):更换皮肤主题
摘要:自定义主题 命令行主题工具 1.安装主题工具 首先安装「主题生成工具」,可以全局安装或者安装在当前项目下,推荐安装在项目里,方便别人 clone 项目时能直接安装依赖并启动。 2.安装chalk主题 安装白垩主题,可以从 npm 安装或者从 GitHub 拉取最新代码,这里从 npm 安装。 3.初
阅读全文
posted @
2018-08-28 11:15
朝雨忆轻尘
阅读(22697)
推荐(2) 编辑
Vue + Element UI 实现权限管理系统 前端篇(五):国际化实现
摘要:国际化支持 1.安装依赖 执行以下命令,安装 i18n 依赖。 2.添加配置 2.1 在 src 下新建 i18n 目录,并创建一个 index.js。 index.js 2.2 在 assets 目录下面创建连个多语言文件。 zh.json en.json 2.3 在 main.js 中引入 i1
阅读全文
posted @
2018-08-27 20:07
朝雨忆轻尘
阅读(9610)
推荐(4) 编辑
Vue + Element UI 实现权限管理系统 前端篇(四):优化登录流程
摘要:完善登录流程 1. 丰富登录界面 1.1 从 Element 指南中选择组件模板丰富登录界面,放置一个登录界面表单,包含账号密码输入框和登录重置按钮。 1.2 稍微调整一下界面样式 1.3 添加页面组件显示规则和操作响应,其中登录成功后,把登录用户信息存储到本地会话,用于配置路由跳转目标。 1.4
阅读全文
posted @
2018-08-26 22:22
朝雨忆轻尘
阅读(26414)
推荐(8) 编辑
Vue笔记:使用 axios 中 this 指向问题
摘要:问题背景 在vue中使用axios做网络请求的时候,会遇到this不指向vue,而为undefined。 如下图所示,我们有一个 login 方法,希望在登录成功之后路由到主页,但通过 this.$router 获取路由器出错。 解决方案 使用箭头函数替代普通函数,ES6中的箭头函数 “=>” 内部
阅读全文
posted @
2018-08-25 22:45
朝雨忆轻尘
阅读(7998)
推荐(1) 编辑
Vue + Element UI 实现权限管理系统 前端篇(三):工具模块封装
摘要:封装 axios 模块 封装背景 使用axios发起一个请求是比较简单的事情,但是axios没有进行封装复用,项目越来越大,会引起越来越多的代码冗余,让代码变得越来越难维护。所以我们在这里先对 axios 进行二次封装,使项目中各个组件能够复用请求,让代码变得更容易维护。 封装要点 统一 url 配
阅读全文
posted @
2018-08-25 21:40
朝雨忆轻尘
阅读(29160)
推荐(11) 编辑
Vue笔记:在项目中使用 SCSS
摘要:背景概述 1. CSS预处理器 css预处理器定义了一种新的编程语言,编译后成正常的CSS文件。为CSS增加一些编程的特性,无需考虑浏览器的兼容问题,让CSS更加简洁,适应性更强,可读性更佳,更易于代码的维护等诸多。CSS 预处理器语言有 scss(sass)、less 等。 2.SASS和SCSS
阅读全文
posted @
2018-08-25 17:45
朝雨忆轻尘
阅读(3716)
推荐(0) 编辑
Vue + Element UI 实现权限管理系统 前端篇(一):搭建开发环境
摘要:技术基础 开发之前,请先熟悉下面的4个文档 vue.js2.0中文, 优秀的JS框架 vue-router, vue.js 配套路由 vuex,vue.js 应用状态管理库 Element,饿了么提供的UI框架 开发环境 Node JS(npm) Visual Studio Code(前端IDE)
阅读全文
posted @
2018-08-25 17:45
朝雨忆轻尘
阅读(57598)
推荐(17) 编辑
Vue + Element UI 实现权限管理系统 前端篇(二):Vue + Element 案例
摘要:导入项目 打开 Visual Studio Code,File --> add Folder to Workspace,导入我们的项目。 安装 Element 安装依赖 Element 是国内饿了么公司提供的一套开源前端框架,简洁优雅,提供了 vue、react、angular 等多个版本,我们这里
阅读全文
posted @
2018-08-25 17:45
朝雨忆轻尘
阅读(34644)
推荐(9) 编辑
Vue笔记:VS Code 常用快捷键
摘要:VS Code 常用快捷键 1、注释: 单行注释:ctrl+/, 注释后再按取消 取消单行注释:alt+shift+A 注释后再按取消 2、移动行 向上移动一行:alt+up 向下移动一行:alt+down 3、显示/隐藏左侧目录栏 ctrl + b 4、复制当前行 向上复制一行:shift+alt
阅读全文
posted @
2018-08-24 21:34
朝雨忆轻尘
阅读(20439)
推荐(1) 编辑
Vue笔记:使用 VS Code 断点调试
摘要:直接在 Chrome 的调试窗口中调试 Vue 代码有诸多不便, 好在 Visual Studio Code 中提供了 Debugger for Chrome 插件,能够通过配置直接在 VS Code 断点调试代码, 并且在 VS Code 的调试窗口看到 Chrome 中 console 相同的值
阅读全文
posted @
2018-08-24 21:33
朝雨忆轻尘
阅读(107946)
推荐(4) 编辑
Vue笔记:使用 mock.js 模拟数据
摘要:在我们的项目实际开发过程中,后端的接口往往是较晚才会提供出来,并且还要写接口文档,如果前端的开发都要等到接口开发完成才开始就非常影响项目整体开发进度了,mock.js 的出现使前后端分离并行开发成为可能。使用 mock.js,前端调试可以模拟后台接口调用,返回我们定义的数据,解放了前后端开发的屏障。
阅读全文
posted @
2018-08-23 21:23
朝雨忆轻尘
阅读(1588)
推荐(0) 编辑
Vue笔记:使用 Yarn 管理依赖包
摘要:上年10月份, Facebook 发布了新的 node.js 包管理器 Yarn 用以替代 npm ,它比npm更快、更高效。 Yarn VS npm 1、yarn.lock 文件 在 npm 中同样可以使用 npm shrinkwrap 命令来生成一个锁文件,这样在使用 npm install 时
阅读全文
posted @
2018-08-23 20:36
朝雨忆轻尘
阅读(4156)
推荐(0) 编辑
Vue笔记:封装 axios 为插件使用
摘要:前言 自从Vue2.0推荐大家使用 axios 开始,axios 被越来越多的人所了解。使用axios发起一个请求对大家来说是比较简单的事情,但是axios没有进行封装复用,项目越来越大,引起的代码冗余。就会非常麻烦的一件事。所以本文会详细的跟大家介绍,如何封装请求,并且在项目组件中复用请求。有需要
阅读全文
posted @
2018-08-22 19:19
朝雨忆轻尘
阅读(2422)
推荐(0) 编辑
Vue笔记:使用 axios 发送请求
摘要:在Vue1.0的时候有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource。 关于为什么放弃推荐? -> 尤大原话 最近团队讨论了一下,Ajax 本身跟 Vue 并没有什么需要特别整合的地方,使用 fetch po
阅读全文
posted @
2018-08-22 19:16
朝雨忆轻尘
阅读(6532)
推荐(1) 编辑
Tomcat笔记:Tomcat的执行流程解析
摘要:Bootstrap的启动 Bootstrap的main方法先new了一个自己的对象(Bootstrap),然后用该对象主要执行了四个方法: init(); setAwait(true); load(args); start(); init():初始化了ClassLoader(类加载器,没它的话后面就
阅读全文
posted @
2018-08-21 21:08
朝雨忆轻尘
阅读(2688)
推荐(0) 编辑
Git笔记:Git介绍和常用命令汇总
摘要:Git 是一个开源的分布式版本控制系统,与 CVS, Subversion 等不同,它采用了分布式版本库的方式,不需要服务器端软件支持。 工作流程 Git 的工作流程大致如下: 克隆 Git 资源作为工作目录。 在克隆的资源上添加或修改文件。 如果其他人修改了,你可以更新资源。 在提交前查看修改。
阅读全文
posted @
2018-08-21 20:05
朝雨忆轻尘
阅读(994)
推荐(0) 编辑
Spring Boot使用Shiro实现登录授权认证
摘要:1、Shiro是Apache下的一个开源项目,我们称之为Apache Shiro。它是一个很易用与Java项目的的安全框架,提供了认证、授权、加密、会话管理,与spring Security 一样都是做一个权限的安全框架,但是与Spring Security 相比,在于 Shiro 使用了比较简单易
阅读全文
posted @
2018-08-20 23:12
朝雨忆轻尘
阅读(28612)
推荐(1) 编辑
Spring Security OAuth2实现单点登录
摘要:1、概述 在本教程中,我们将讨论如何使用 Spring Security OAuth 和 Spring Boot 实现 SSO(单点登录)。 本示例将使用到三个独立应用 一个授权服务器(中央认证机制) 两个客户端应用(使用到了 SSO 的应用) 简而言之,当用户尝试访问客户端应用的安全页面时,他们首
阅读全文
posted @
2018-08-20 23:03
朝雨忆轻尘
阅读(13282)
推荐(0) 编辑
Spring Security和JWT实现登录授权认证
摘要:目标 1.Token鉴权 2.Restful API 3.Spring Security+JWT 开始 自行新建Spring Boot工程 引入相关依赖 User类 非常简单的用户模型,将权限集成到了用户类中。 IUserRepository类 需实现对用户表的增删改查,此处可采用任意数据库,具体实
阅读全文
posted @
2018-08-20 22:16
朝雨忆轻尘
阅读(2971)
推荐(0) 编辑
Spring Boot使用JWT实现系统登录验证
摘要:简介 什么是JWT(Json Web Token) jwt是为了在网络应用环境间传递声明而执行的一种基于json的开放标准。该token被设计紧凑且安全的,特别适用于SSO场景。jwt的声明一般被用来在身份提供者和服务提供者之间传递被认证的用户身份信息。 JWT长什么样 eyJhbGciOiJIUz
阅读全文
posted @
2018-08-20 22:13
朝雨忆轻尘
阅读(12997)
推荐(1) 编辑
第三方登录:新浪微博登录(OAuth2.0)
摘要:在《Github第三方登录--通用化的第三方登陆实现》中我们实现了一个通用化的第三方登录框架,其中包括OAUth的基本流程以及最简单的用户注册。但是不同的第三方登录因为其细节不同还是有很多坑的,今天我们就从完善开发者信息开始一步一步添加微博第三方登录的功能。 注意,需要完成微博的第三方登录功能需要有
阅读全文
posted @
2018-08-20 21:49
朝雨忆轻尘
阅读(1734)
推荐(0) 编辑
第三方登录:QQ登录实现(OAuth2.0)
摘要:一、创建应用 1、在 QQ互联 创建应用 地址:https://connect.qq.com/manage.html#/ 然后进行实名认证,创建应用,审核通过 然后点击查看,可以获得 APP ID 和 APP Key 回调地址如下 2、授权的基本原理 可以参考官方文档 1)根据QQ登录链接可以回调获
阅读全文
posted @
2018-08-20 21:43
朝雨忆轻尘
阅读(2987)
推荐(1) 编辑
第三方登录:微信扫码登录(OAuth2.0)
摘要:1、OAuth2.0 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。 允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站(例如
阅读全文
posted @
2018-08-20 20:51
朝雨忆轻尘
阅读(4492)
推荐(0) 编辑
Spring Security 与 OAuth2 介绍
摘要:个人 OAuth2 全部文章 Spring Security 与 OAuth2(介绍):https://www.jianshu.com/p/68f22f9a00ee Spring Security 与 OAuth2(授权服务器):https://www.jianshu.com/p/227f7e750
阅读全文
posted @
2018-08-20 20:40
朝雨忆轻尘
阅读(1706)
推荐(0) 编辑
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(九):代码整理优化
摘要:工程规划 为了统一配置和代码解耦,我们对代码重新进行了整理和规划。 重新规划后,代码结构如下: kitty-pom: 统一管理 Maven 版本,打包配置 kitty-common: 公共代码模块,主要放置工具类 kitty-core: 核心代码模块,主要封装公共业务模块 kitty-admin:
阅读全文
posted @
2018-08-19 00:28
朝雨忆轻尘
阅读(6492)
推荐(1) 编辑
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(八):MyBatis分页功能实现
摘要:使用Mybatis时,最头痛的就是写分页,需要先写一个查询count的select语句,然后再写一个真正分页查询的语句,当查询条件多了之后,会发现真不想花双倍的时间写 count 和 select,幸好我们有 pagehelper 分页插件,pagehelper 是一个强大实用的 MyBatis 分
阅读全文
posted @
2018-08-18 20:26
朝雨忆轻尘
阅读(3652)
推荐(2) 编辑
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(七):集成 Druid 数据源
摘要:数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。通过数据库连接池能明显提高对数据库操作的性能。在Java应用程序开发中,常用的连接池有DBCP、C
阅读全文
posted @
2018-08-18 14:13
朝雨忆轻尘
阅读(4680)
推荐(0) 编辑
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(六):集成 Swagger API
摘要:spring-boot作为当前最为流行的Java web开发脚手架,越来越多的开发者选择用其来构建企业级的RESTFul API接口。这些接口不但会服务于传统的web端(b/s),也会服务于移动端。在实际开发过程中,这些接口还要提供给开发测试进行相关的白盒测试,那么势必存在如何在多人协作中共享和及时
阅读全文
posted @
2018-08-17 20:11
朝雨忆轻尘
阅读(4340)
推荐(0) 编辑
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(五):模块化切分
摘要:切分工程 考虑到后续我们的模块会越来越多,依赖的公共代码和配置需要集中管理,我们在这里先把公共模块和配置从后台管理业务中剥离出来。 新增两个工程,切分后结构如下: kitty-boot:启动器及全局配置模块 kitty-common:公共代码模块,主要提供一些工具类 kitty-admin:后台管理
阅读全文
posted @
2018-08-17 18:50
朝雨忆轻尘
阅读(5066)
推荐(0) 编辑
Vue笔记:webpack项目vue启动流程
摘要:VUE启动流程 1. package.json 在执行npm run dev的时候,会在当前目录中寻找 package.json 文件, 有点类似 Maven 的 pom.xml 文件,包含项目的名称版本、项目依赖等相关信息。 2. webpack.dev.conf.js 从下图中可以看到, 启动
阅读全文
posted @
2018-08-17 16:37
朝雨忆轻尘
阅读(18682)
推荐(3) 编辑
Vue笔记:使用node开发vue入门实例
摘要:安装NPM 首先在命令终端输入 npm -v 检测是否安装 npm。如果没有,按照下面教程进行安装。 下载地址: nodejs中文网 到官网下载自己系统对应的版本,这里我们下载Windows系统的64位zip文件,下载完成后解压,可以看到里面有一个node.exe的可执行文件。 把Node添加到系统
阅读全文
posted @
2018-08-17 16:34
朝雨忆轻尘
阅读(16130)
推荐(0) 编辑
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(四):集成 MyBatis 框架
摘要:引入依赖 Spring Boot对于MyBatis的支持需要引入mybatis-spring-boot-starter的pom文件。 在加添MySQL等相关依赖后,完整的pom.xml: 添加配置 1.添加MyBatis配置 添加MyBatis配置类,配置相关扫描路径,包括DAO,Model,XML
阅读全文
posted @
2018-08-16 18:44
朝雨忆轻尘
阅读(6922)
推荐(0) 编辑
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(三):搭建开发环境
摘要:生成项目模板 登录Spring Initializr生成Spring Boot项目模板,保存到本地。 地址:https://start.spring.io/ 导入Maven项目 使用IDE导入生成的Maven项目,我这里用的是Eclipse。 项目结构很简单,把不需要的文件清理之后,项目就只有三个文
阅读全文
posted @
2018-08-15 18:28
朝雨忆轻尘
阅读(9738)
推荐(1) 编辑
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(二):数据库设计
摘要:数据库设计 系统主要包含用户(sys_user)、组织(sys_dept)、角色(sys_role)、菜单(sys_menu)、角色组织(sys_role_dept)、角色菜单(sys_role_menu)、用户Token(sys_user_token)、系统日志(sys_log)等表。 1.用户属
阅读全文
posted @
2018-08-15 18:25
朝雨忆轻尘
阅读(8048)
推荐(1) 编辑
Spring Boot + Spring Cloud 实现权限管理系统 后端篇(一):Kitty 系统介绍
摘要:在线演示 演示地址:http://139.196.87.48:9002/kitty 用户名:admin 密码:admin 温馨提示: 有在演示环境删除数据的童鞋们,如果可以的话,麻烦动动小指,右键头像菜单, 选择 -> 备份还原 帮忙恢复到系统默认备份数据,方便后来的童鞋查看,谢谢啦。 技术交流 为
阅读全文
posted @
2018-08-15 18:22
朝雨忆轻尘
阅读(30051)
推荐(5) 编辑
Eclipse中Maven项目出现红色感叹号问题
摘要:在Eclipse环境下,有时我们会遇到Maven项目出现红色感叹号的情形,而一旦项目出现感叹号,Eclipse便无法帮我们进行自动编译等工作,尽管有时候不会影响运行,但每次只能手动启动Maven重新编译,非常不便,另外眼前总是闪烁着大红色的惊叹号,看着也是非常的不舒服。 如下图所示: 代码出错的时候
阅读全文
posted @
2018-08-15 17:30
朝雨忆轻尘
阅读(9033)
推荐(1) 编辑
Docker笔记:常用命令汇总
摘要:Docker常用命令汇总 启动服务 停止服务 重启服务 查看版本 登录仓库 登出仓库 上传镜像 搜索镜像 拉取镜像 查看镜像 删除镜像 创建容器 启动容器 停止容器 删除容器 查看容器 进入容器 内视容器 作者:朝雨忆轻尘出处:https://www.cnblogs.com/xifengxiaoma
阅读全文
posted @
2018-08-13 17:49
朝雨忆轻尘
阅读(494)
推荐(0) 编辑
自己动手实现一个WEB服务器
摘要:自己动手实现一个 Web Server 项目背景 最近在重温WEB服务器的相关机制和原理,为了方便记忆和理解,就尝试自己用Java写一个简化的WEB SERVER的实现,功能简单,简化了常规服务器的大部分功能和结构封装,但仍然保留从浏览器发送请求到将处理结果返回响应到浏览器的整个流程,现在把相关内容
阅读全文
posted @
2018-08-09 18:49
朝雨忆轻尘
阅读(3171)
推荐(1) 编辑
Java SPI机制和使用示例
摘要:JAVA SPI 简介 SPI 是 Java 提供的一种服务加载方式,全名为 Service Provider Interface。根据 Java 的 SPI 规范,我们可以定义一个服务接口,具体的实现由对应的实现者去提供,即服务提供者。然后在使用的时候再根据 SPI 的规范去获取对应的服务提供者的
阅读全文
posted @
2018-08-08 16:58
朝雨忆轻尘
阅读(8222)
推荐(1) 编辑
Redis笔记(七):Redis应用场景
摘要:特性优势 1 支持持久化 Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。 2 数据类型丰富 Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。 3 主从数据备份 Redis支持数据的备
阅读全文
posted @
2018-08-08 13:36
朝雨忆轻尘
阅读(407)
推荐(0) 编辑
Linux笔记:linux常用命令
摘要:文件目录操作 1.展示目录命令 2.切换目录命令 3.创建目录命令 4.删除目录命令 5.创建文件命令 6.删除文件命令 7.打包解压命令 tar命令常用参数 -c 创建一个新tar文件-v 显示运行过程的信息-f 指定文件名-z 调用gzip命令进行压缩-t 查看压缩文件的内容-x 解开tar文件
阅读全文
posted @
2018-08-07 17:26
朝雨忆轻尘
阅读(510)
推荐(0) 编辑
Linux笔记:vi常用命令
摘要:vi编辑器是所有Unix及Linux系统下标准的编辑器,在很多时候我们都需要使用vi修改服务端配置,vi其实非常强大,只要命令使用熟练的情况下,编辑速度并不亚于现在的图形化编辑器,这里简单地介绍一下它的使用方法和部分常用指令。 VI状态模式 Vi有三种基本的工作模式:指令行模式、文本输入模式、行末模
阅读全文
posted @
2018-08-07 15:43
朝雨忆轻尘
阅读(457)
推荐(0) 编辑
PostgreSQL执行超时的问题
摘要:PostgreSQL执行超时的问题 使用背景 最近在使用PostgreSQL的时候,在执行一些数据库事务的时候,先后出现了statement timetout 和idle-in-transaction timeout的问题,导致数据库操作失败。 经研究查找,PostgreSQL有关于SQL语句执行超
阅读全文
posted @
2018-08-07 11:47
朝雨忆轻尘
阅读(8566)
推荐(0) 编辑
Redis笔记(六):Java中使用Redis
摘要:Java程序使用Redis 添加依赖包 Maven依赖方式 下载Jar包方式 下载地址: http://central.maven.org/maven2/redis/clients/jedis/2.9.0/jedis-2.9.0.jar 代码使用示例 Spring Boot集成Redis 1.新建S
阅读全文
posted @
2018-08-06 16:05
朝雨忆轻尘
阅读(422)
推荐(0) 编辑
Redis笔记(五):Redis发布订阅
摘要:Redis 发布订阅 Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。 Redis 客户端可以订阅任意数量的频道。 下图展示了频道 channel1 , 以及订阅这个频道的三个客户端 —— client2 、 client5 和 clie
阅读全文
posted @
2018-08-06 15:17
朝雨忆轻尘
阅读(291)
推荐(0) 编辑
Redis笔记(四):Redis事务支持
摘要:Redis 事务 Redis 事务可以一次执行多个命令, 并且带有以下两个重要的保证: 批量操作在发送 EXEC 命令前被放入队列缓存。 收到 EXEC 命令后进入事务执行,事务中任意命令执行失败,其余的命令依然被执行。 在事务执行过程,其他客户端提交的命令请求不会插入到事务执行命令序列中。 一个事
阅读全文
posted @
2018-08-06 15:07
朝雨忆轻尘
阅读(314)
推荐(0) 编辑
Redis笔记(三):Redis常用命令
摘要:连接测试 连接本地服务器 语法 实例 启动 redis 客户端,打开终端并输入命令 redis-cli。该命令会连接本地的 redis 服务。 在以上实例中我们连接到本地的 redis 服务并执行 PING 命令,该命令用于检测 redis 服务是否启动。 连接远程服务器 如果需要在远程 redis
阅读全文
posted @
2018-08-06 15:05
朝雨忆轻尘
阅读(296)
推荐(0) 编辑
Redis笔记(二):Redis数据类型
摘要:Redis 数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个
阅读全文
posted @
2018-08-06 14:37
朝雨忆轻尘
阅读(278)
推荐(0) 编辑
Redis笔记(一):Redis安装教程
摘要:Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 Redis是目前应用最广泛的内存数据存储技术,相比之前的Memcached,Redis支持更为丰富的数据结构(hashes, lists, sets等),同时还
阅读全文
posted @
2018-08-06 11:35
朝雨忆轻尘
阅读(403)
推荐(0) 编辑
Java虚拟机(七):JVM调优案列
摘要:Eclispe启动优化 概述 什么是jvm调优呢?jvm调优就是根据gc日志分析jvm内存分配、回收的情况来调整各区域内存比例或者gc回收的策略;更深一层就是根据dump出来的内存结构和线程栈来分析代码中不合理的地方给予改进。eclipse优化主要涉及的是前者,通过gc日志来分析。本文主要是通过分析
阅读全文
posted @
2018-08-03 18:06
朝雨忆轻尘
阅读(651)
推荐(0) 编辑
Java虚拟机(六):JVM调优工具
摘要:工具做为图形化界面来展示更能直观的发现问题,另一方面一些耗费性能的分析(dump文件分析)一般也不会在生产直接分析,往往dump下来的文件达1G左右,人工分析效率较低,因此利用工具来分析jvm相关问题,长长可以到达事半功倍的效果来。 jvm监控分析工具一般分为两类,一种是jdk自带的工具,一种是第三
阅读全文
posted @
2018-08-03 17:37
朝雨忆轻尘
阅读(2034)
推荐(0) 编辑
Java虚拟机(五):JVM调优命令
摘要:运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole、大名鼎鼎的VisualVM,IBM的Memory Analyzer等等,但是在生产环境出现问题的时候,一方面工具的使用会有所限制,另一方面喜欢装X的我们,总喜欢在出现
阅读全文
posted @
2018-08-03 17:30
朝雨忆轻尘
阅读(10177)
推荐(1) 编辑
Java虚拟机(四):JVM类加载机制
摘要:1、什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的Class对象,Class对象封装了类在方法区内的数据结构,并且向
阅读全文
posted @
2018-08-03 16:40
朝雨忆轻尘
阅读(557)
推荐(0) 编辑
Java虚拟机(三):JVM垃圾回收机制
摘要:概述 垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于1960年 MIT 的 Lisp 语言,经过半个多世纪,目前已经十分成熟了。 jvm 中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,栈帧随着方法的进入和退出做入栈和出栈操作,实现了自动的内存清理,因此,
阅读全文
posted @
2018-08-02 18:47
朝雨忆轻尘
阅读(499)
推荐(0) 编辑
Java虚拟机(二):JVM内存模型
摘要:所有的Java开发人员可能会遇到这样的困惑?我该为堆内存设置多大空间呢?OutOfMemoryError的异常到底涉及到运行时数据的哪块区域?该怎么解决呢?其实如果你经常解决服务器性能问题,那么这些问题就会变的非常常见,了解JVM内存也是为了服务器出现性能问题的时候可以快速的了解那块的内存区域出现问
阅读全文
posted @
2018-08-02 18:22
朝雨忆轻尘
阅读(654)
推荐(1) 编辑
Java虚拟机(一):JVM简介
摘要:JVM简介 Java虚拟机(JVM)是由Java虚拟机规范定义的,其上运行的是字节码指令集。这种字节码指令集包含一个字节的操作码(opcode),零至多个操作数(oprand),虚拟机规范明确定义了每种字节码指令完成的功能是什么以及需要多少个操作数。Java虚拟机上运行的class文件,这个文件中包
阅读全文
posted @
2018-08-01 17:55
朝雨忆轻尘
阅读(1723)
推荐(0) 编辑
Java性能调优:利用VisualVM进行性能分析
摘要:JVisualVM 简介 VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带,能够监控线程,内存情况,查看方法的CPU时间和内存中的对 象,已被GC的对象,反向查看分配的堆栈(如100个String对象分别由哪几个对象分配出来的)。在JDK_HOM
阅读全文
posted @
2018-08-01 17:24
朝雨忆轻尘
阅读(54336)
推荐(6) 编辑
Java性能调优:利用JMC进行性能分析
摘要:JMC, 即Java任务控制(Java Mission Control)是从Java7(7u40)和 Java8 的商业版本包括一项新的监控和控制特性。 JMC 程序 (JDK_HOME\bin目录下) 会启动一个窗口程序,然后让我们选择对那进程进行监控,JMC打开性能日志后, 主要包括7部分性能报
阅读全文
posted @
2018-08-01 16:55
朝雨忆轻尘
阅读(1379)
推荐(0) 编辑
JDK自带工具介绍
摘要:JDK工具一览表 主要用于根据XML schema文件生成对应的Java类。 常用工具 JVisualVM VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带,能够监控线程,内存情况,查看方法的CPU时间和内存中的对 象,已被GC的对象,反向查看分
阅读全文
posted @
2018-08-01 16:36
朝雨忆轻尘
阅读(731)
推荐(0) 编辑
SQL脚本文件执行器
摘要:处于项目需求,需要能够批量执行SQL脚本文件,需要由前台页面操作触发执行。 查找相关资料,发现 Ant 提供了 SQLExec 组件可以支持SQL文件的执行,测试效果不错。 以下是对 SQLExec 封装后支持批量执行的执行器组件。 作者:朝雨忆轻尘出处:https://www.cnblogs.co
阅读全文
posted @
2018-08-01 14:31
朝雨忆轻尘
阅读(1960)
推荐(0) 编辑
性能测试常见指标介绍
摘要:1 注册用户数 注册用户数指软件中已经注册的用户,这些用户是系统的潜在用户,随时都有可能上线。这个指标的意义在于让测试工程师了解系统数据中的数据总量和系统最大可能有多少用户同时在线。 2 在线用户数 在线用户数是指某一时刻已经登录系统的用户数量。在线用户数只是统计了登录系统的用户数量,这些用户不一定
阅读全文
posted @
2018-08-01 11:26
朝雨忆轻尘
阅读(1772)
推荐(0) 编辑
一个完整的性能测试流程
摘要:一、准备工作 1、系统基础功能验证 性能测试在什么阶段适合实施?切入点很重要!一般而言,只有在系统基础功能测试验证完成、系统趋于稳定的情况下,才会进行性能测试,否则性能测试是无意义的。 2、测试团队组建 根据该项目的具体情况,组建一个几人的性能测试team,其中DBA是必不可少的,然后需要一至几名系
阅读全文
posted @
2018-08-01 11:15
朝雨忆轻尘
阅读(3311)
推荐(2) 编辑