- 博客(39)
- 资源 (59)
- 收藏
- 关注
原创 【最佳实践】 - Maven
概述本文介绍如何玩转 Maven, 可以说是 Maven 库的使用规范一、release库(发布库)使用规则及场景release库是存放稳定版本包的仓库,线上发布的程序都应从release库中引用正确版本进行使用私服中release库使用规则如下:release库不允许删除jar;release库不允许同版本更新jar包(即同一个版本jar包只存在一个);release库上传的...
2019-03-01 16:55:09
283
1
原创 【最佳实践】 - RPC
概述本文介绍如何玩转 RPC, 可以说是 RPC 开发规范, 也可以理解为 RPC 最佳实战.一、接口设计写入的服务保证幂等性,不幂等则要求有排重处理。方法上面要求显式的抛出可能出现的异常,即使是自定义Runtime异常(不使用抛出 Dubbo 的异常,可能引起特殊处理例如重试)。方法名要求含义明确且唯一,不能使用重载方法。自定义对象数据结构要求尽量简洁,尽量不要多层循环嵌套。尽量...
2019-01-31 15:17:47
437
转载 【最佳实践】 - Restful API
概述本文介绍 如何设计 出 易于理解 和 使用的 API, Restful API 最佳实战 .一、URL 设计1. 动词 + 宾语RESTful 的核心思想就是,客户端发出的数据操作指令都是 “动词 + 宾语” 的结构。比如,GET /articles 这个命令,GET是动词,/articles是宾语。动词通常就是五种 HTTP 方法,对应 CRUD 操作:GET:读取(Read...
2019-01-31 14:47:29
266
原创 【最佳实践】 - 接口规范
概述本文介绍如何玩转 MySQL, 可以说是 MySQL 开发规范, 也可以理解为 MySQL 最佳实战.一、基础规范规范点说明推荐方式等级文档唯一性文档出处来源(人员和设备)必须统一,建议文档服务器,统一发布人。重要接口环境要明确给出各个环境的调用地址。重要接口文档版本必须有版本编号,名称+版本,版本必须能区分历史版本。 Pegasus f...
2019-01-31 11:46:40
671
原创 【最佳实践】 - MySQL
概述本文介绍如何玩转 MySQL, 可以说是 MySQL 开发规范, 也可以理解为 MySQL 最佳实战.一、基础规范使用 InnoDB 存储引擎数据库字符集使用 UTF8,校对字符集使用 utf8_general_ci所有 表 、字段 都尽量 添加注释库名、表名、字段名 使用 小写字母,禁止 超过32个字符 ,须见名知意非唯一索引 以 “idx_字段1_字段2” 命名,唯一索引 ...
2019-01-30 20:07:16
187
原创 【最佳实践】 - Redis
概述本文介绍如何玩转 Redis, 可以说是 Redis 开发规范, 也可以理解为 Redis 最佳实战.一、键值设计1. key名 设计(1). 【强制】: 可读性和可管理性以业务名(或数据库名)为前缀(防止key冲突), 用冒号(句号)分隔, 比如: 业务名:表名:id csdn:user:1(2). 【建议】: 简洁性保证语义的前提下, 控制 key 的长度, 当 key...
2019-01-30 18:41:33
544
1
原创 【最佳实践】 - Netty
概述本文介绍如何玩转 Netty.一、服务端启动流程通过 bind 方法添加监听器, 用以自动绑定递增端口.attr 方法, 为每条连接增加属性, 能够实现全单例模式. 类似于 request.attr 属性childOption 方法, 关于 TCP 连接的优化: SO_KEEPALIVE 底层心跳 TCP_NODELAY 延迟发送 SO_BACKLOG 等待队列二、...
2019-01-30 15:38:47
1358
原创 【2019第三弹】IDEA JVM优化配置
大于等于 4核 8G 推荐配置idea64.exe.vmoptions-server-Xms2g-Xmx2g-XX:MaxPermSize=350m-XX:ReservedCodeCacheSize=512m-XX:SoftRefLRUPolicyMSPerMB=64-XX:MetaspaceSize=1g-XX:SurvivorRatio=6-ea-Dconsole.enc...
2019-01-24 09:12:30
3795
2
原创 【2019第二弹】本地服务快速搭建
概述本文介绍如何使用Docker快速搭建本地服务.用到的工具或软件服务器或PCDocker小编推荐一个国内镜像源 https://www.daocloud.io一、安装 Docker首先, 可以用yum直接安装, 建议安装倒数第二个正式版, 因为刚发布的版本可能还会有人踩坑, 所以建议不要安装最新稳定版,可能还会有坑的噢, 上次小编就遇到一个坑(宿主主机关了不机了, 最后安装前一...
2019-01-13 22:01:02
157
原创 分布式事务下的交易一致性解决方案(逻辑代码结构)
分布式事务下的交易一致性解决方案银行很强势,我们什么都不管(1. 调一次,我出款一次; 2. 不提交任何冥等操作)我们什么都没有(没有分布式事务)用户只提交一次我们只能成功一次一、远程调用与本地事务区分开(别人挂, 我们不挂)事务方法里面不能创建远程调用悲观锁select * from xxx where id = xxx for update;乐观锁select...
2018-02-25 22:39:12
705
原创 Shell 调试方法
一、列出代码和查询代码类:l 列出当前行以下的10行- 列出正在执行的代码行的前面10行. 回到正在执行的代码行w 列出正在执行的代码行前后的代码/pat/ 向后搜索pat?pat?向前搜索pat二、Debug控制类:h 帮助help 命令 得到命令的具体信息q 退出bashdbx 算数表达式 计算算数表达式的值,并显示出来!!...
2018-02-25 22:32:32
242
翻译 redis 配置文件示例
redis 配置文件示例当你需要为某个配置项指定内存大小的时候,必须要带上单位,通常的格式就是 1k 5gb 4m 等酱紫:#1k => 1000 bytes1kb => 1024 bytes1m => 1000000 bytes1mb => 1024*1024 bytes1g => 100000000...
2018-02-25 22:31:23
5674
原创 Mybatis 学习笔记
Mybatis 学习笔记ResultType与ResultMapResultType返回一个ListResultMap返回一个加强的Pojo(Plan old java object)可以满足一些特殊要求,嵌套的Pojoassociation(一对一), collection(一对多) ,多对多(利用嵌套association,collection)缓存一级...
2018-02-25 22:29:34
195
原创 Linux服务器分区的方案
Linux服务器分区的方案1. Linux服务器分区的方案:分区类型 分区的实际大小/ 1G-2G (最少要150–250MB)/boot 32M-100M (启动分区,最多只要100M左右)/opt 100M-1G (附加应用程序)/tmp 40M-1000M (最大可以设为1G左右,如果加载ISO镜像文件就...
2018-02-25 22:26:15
8823
1
原创 JVM学习笔记
JVM调优Trace 跟踪参数打印简要GCverbose:gc -XX:+printGC 打印详细GC-XX:+PrintGCDetails -XX:+PrintGCTimeStamps 打印GC发生的时间 重定向GC.logXloggc:log/gc.log – 默认以当前目录为基础 每次GC后,都打印堆信息-XX:+PrintHeapAtGC 监控类的加载...
2018-02-25 22:24:22
188
原创 单元测试
关于BUG指标代码覆盖率(30%)–(60%)(80%)圈复杂度每千行代码bug数(60)–(10-20)质量相关的指标120(完全不写单元测试)30(有经验的,写点单元测试的)单元测试最简单的 main 方法Junit/TestNG 工具单元测试的原则单元测试可以无限次重跑一定要有Assert单元测试一定不要依赖外部环境...
2018-02-25 22:19:18
233
原创 文件上传包含( 断点续传)
文件上传WebUploader上传组件WebUpload 组件异步上传文件,拖拽式上传,粘贴上传,上传进度监控,文件缩略图,甚至是大文件断点续传,大文件秒传。下载地址: http://fex.baidu.com/webuploader/<script type="text/javascript> var uniueFileFlag; WebUpl...
2018-02-25 22:12:47
1275
原创 JAVA 注释格式
JAVA 注释格式1. 文件注释: (文件注释写入文件头部,包名之前的位置)说明: 注意以 /* 开始 避免补JavaDoc收集/* * 注释内容 */package com.fsdn.msg;2. 文件注释内容: 版权说明、描述信息、生成日期、修改历史说明: 文件名可选/* * 文件名: [文件名] * 版权: <版权> * 描述...
2018-02-25 22:10:32
590
原创 ActiveMQ 学习笔记
ActiveMQ 学习笔记activemq的特性多种语言和协议编写客户端。语言: Java, C, C++, C#, Ruby, Perl, Python, PHP应用协议: OpenWire,Stomp REST,WS Notification,XMPP,AMQP完全支持JMS1.1和J2EE 1.4规范 (持久化,XA消息,事务)对Spring的支持,ActiveMQ...
2018-02-25 22:08:10
274
原创 Docker install
Docker install一、 Docker 安装要求64位操作系统最好是3.8以上内核二、 Cent OS 6.5 默认内核为 2.61. 升级内核a) 先执行以下命令rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.orgrpm -ivh http://www.elrepo.org/e...
2018-02-25 21:50:57
731
原创 Dubbo注解方式踩过的坑
Dubbo注解方式踩过的坑Reference 正确的使用姿势代码块spring-mvcxmlspring-dubboxmlDubbo注解方式踩过的坑@Reference 正确的使用姿势 经过自己搭建的 SpringMVC + Dubbo 环境, Dubbo 的服务端可以正常注册服务,并且 Dubbo-admin 中也能正常查看到状态, 此时启动 Dubbo 消费端, Dubbo-admi
2018-02-24 22:45:10
13076
原创 公众号开放平台设计与实现
开放平台账号信息--------------------------------------component_appidcomponent_appsecretcompoment_encodingaeskeycompoment_token--------------------------------------缓存结构-------------------------
2018-01-26 15:48:28
1866
原创 分布式服务下的交易一致性解决方案
分布式服务下的交易一致性解决方案银行很强势,我们什么都不管(1. 调一次,我出款一次; 2. 不提交任何冥等操作)我们什么都没有(没有分布式事务)用户只提交一次我们只能成功一次一、远程调用与本地事务区分开(别人挂, 我们不挂)事务方法里面不能创建远程调用悲观锁select * from xxx where id = xxx for update;乐观锁select version fr
2017-04-11 20:41:09
1926
原创 PG常用(通用)功能
查看各个表所占用内存SELECT table_schema || ‘.’ || table_name AS table_full_name, pg_size_pretty(pg_total_relation_size(‘”’ || table_schema || ‘”.”’ || table_name || ‘”’)) AS size FROM information_schema.tables
2017-04-11 20:40:17
1252
原创 多线程学习笔记
多线程学习记录同步类容器ConcurrentModificationException // 一边遍历一边修改会触发的异常(并发修改)Vector HashTable 由 Collections工具类中synchronized**方法并发类容器ConcurrentMap (相当于分表,分库的思想)核心思想: 减小锁的粒度从而降低锁的竞争详细说明: 采用段(Segm...
2017-04-11 20:39:01
246
原创 Shell调试方法
一、列出代码和查询代码类:l 列出当前行以下的10行- 列出正在执行的代码行的前面10行. 回到正在执行的代码行w 列出正在执行的代码行前后的代码/pat/ 向后搜索pat?pat?向前搜索pat二、Debug控制类:h 帮助help 命令 得到命令的具体信息q 退出bashdbx 算数表达式 计算算数表达式的值,并显示出来!! 空格S
2017-04-11 20:37:53
331
原创 JVM调优
JVM调优Trace 跟踪参数打印简要GCverbose:gc-XX:+printGC打印详细GC-XX:+PrintGCDetails-XX:+PrintGCTimeStamps 打印GC发生的时间重定向GC.logXloggc:log/gc.log – 默认以当前目录为基础每次GC后,都打印堆信息-XX:+PrintHeapAtGC监控类的加载-XX:+TraceClassLoa
2017-04-11 20:37:04
356
原创 Docker 学习笔记
Docker install一、 Docker 安装要求64位操作系统最好是3.8以上内核二、 Cent OS 6.5 默认内核为 2.61. 升级内核a) 先执行以下命令rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.orgrpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6
2017-04-11 20:36:08
583
原创 JAVA 注释格式
JAVA 注释格式1. 文件注释: (文件注释写入文件头部,包名之前的位置)说明: 注意以 /* 开始 避免补JavaDoc收集/* * 注释内容 */package com.fsdn.msg;2. 文件注释内容: 版权说明、描述信息、生成日期、修改历史说明: 文件名可选/* * 文件名: [文件名] * 版权: <版权> * 描述: <描述> * 修改人: <修改人> * 修改时
2017-04-11 20:10:07
1890
原创 正则表达式学习笔记
正则表达式学习笔记表1.常用的元字符. 匹配除换行符以外的任意字符\w 匹配字母或数字或下划线或汉字\s 匹配任意的空白符\d 匹配数字\b 匹配单词的开始或结束^ 匹配字符串的开始$ 匹配字符串的结束表2.常用的限定符代码/语法 说明重复零次或更多次重复一次或更多次? 重复零次或一次{n} 重复n次{n,} 重复n次或
2016-12-21 11:03:53
307
原创 Velocity模板语言(VTL):说明
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
2016-09-28 18:18:31
2608
原创 Log4J日志配置详解
Log4J日志配置详解一、Log4j简介Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。1、LoggersLoggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ER
2016-02-28 12:08:20
606
原创 Sublime Text 3 安装、汉化、插件步骤详谈
Sublime Text 3 安装、汉化、插件步骤详谈 作者博客: http://blog.youkuaiyun.com/libo2158?viewmode=contents步骤一 安装Sublime Text安装完成之后不要打开程序 附: 如果你已经打开过,可以先去%appdata%环境变量路径中把Sublime Text 相关文件夹删除,再做第3步即可。步骤二 把插件目录与原安装目录放到同一目录
2016-02-25 23:13:36
5246
原创 Myeclipse安装配置优化
Myeclipse安装配置优化 一、下载myeclipse安装包下载链接:http://blog.my-eclipse.cn/myeclipse-download.html二、解压并安装Myeclipse改下安装路径,其它的一直默认“下一步”就OK 三、配置Myeclipse1. 配置本地JDK环境,取消默认myeclipse中自带的JDKWi
2015-06-29 10:57:59
555
转载 velocity环境 搭建
接下来开始进入配置step:1.下载velocity-1.4最新版是1.4,在jakarta主页的项目栏里有介绍(http://jakarta.apache.org/site/downloads/downloads_velocity.cgi),linux下为.tar.gz后缀。2. 解压velocity将安装包里的velocity-1.4.jar文件拷到项目应用文件
2015-04-10 10:27:42
508
原创 Hadoop2.x伪分布环境搭建
Hadoop2.x伪分布环境搭建 之前为了跑第一个Hadoop2的一个Demo,我开始搭环境,起初用了编译源码的方式安装,在其中遇到了不少问题,最后发现有一种简单的方式。Hadoop2.x运行也不是必需用Hadoop源码来编译。下面就把这种简单环境搭建的方式介绍一下。(当然有关编译源码的部分,之后我会更新更新上来的) 一、环境准备1) 软件
2015-04-06 20:19:50
646
原创 SSH框架实现MYSQL数据库备份与还原
SSH框架实现数据库备份与还原一、 SSH下边数据库备份与还原工具类l 该方法采用Shell命令,可以方便的实现数据库的备份功能查看过上一篇定时器配置的朋友可以发现该类已经放到Spring容器里面了,我们可以利用Spring注入的方式Action请求来调用可以实现实时备份与还原利用Spring定时器,唯一一点是获取不到项目路径,所以我使用固定路径的方法来实现。以当前日
2015-04-04 22:34:24
3546
原创 Spring 定时器的配置
Spring 定时器的配置详解一、配置Spring定时器的环境准备1. 当然是Spring的核心包 2. jta.jar 会用到包中的usertransaction 3. quartz.jar 会用到CronTrigger这个类,表示计时功能所用到的 4. commons-collections.jar集合工具包 (在这里我没有给出固定的版本
2015-04-04 00:02:47
677
chromedriver_64
2017-02-23
selenium 2.5.1 套装
2017-02-23
neXtep.1.0.7-win32.win32.x86_64
2017-02-21
IntelliJ IDEA 简体中文专题教程(电子版2015) .CHM
2016-12-26
阿里巴巴Java开发手册(公开版)高清完整PDF版
2016-12-15
AcronisDiskDirectorSuite
2017-09-14
elasticsearch-5.5.0
2017-09-01
亿级流量网站架构核心技术 跟开涛学搭建高可用高并发系统 ,张开涛(著) ,P477 ,2017.5.part5
2017-07-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人