- 博客(54)
- 资源 (3)
- 收藏
- 关注
原创 【MySQL从入门到放弃】InnoDB磁盘结构(二)
前面我们解析了InnoDB磁盘结构中的表空间、数据字典、双写缓冲区。本文我们继续探究磁盘结构中剩余的几个核心组件:重做日志(redo log)、撤销日志(undo log)、二进制日志(binlog)
2024-11-13 11:06:10
1205
1
原创 【MySQL从入门到放弃】InnoDB磁盘结构(一)
篇幅原因,本文只解析了InnoDB磁盘结构中的表空间、数据字典、双写缓冲区,对他们的功能、分类等做了细致分析,并对数据的双写流程做了解析。下一篇我们继续把剩下的重做日志、撤销日志、二进制日志做一个全面解析。
2024-11-12 11:45:18
866
原创 【MySQL从入门到放弃】InnoDB内存结构
本文图文并茂的解析了MySQL的InnoDB存储引擎的内存结构,主要分为Buffer Pool、Change Buffer和Log Buffer。
2024-11-12 09:26:56
718
原创 Dubbo框架浅谈
Dubbo 是一款高性能、轻量级的开源 Java RPC(Remote Procedure Call,远程过程调用)框架。·业务层·RPC层·Remoting层1.提供者读取配置将服务实例化,Proxy封装服务调用接口2.Proxy封装时,调用Protocol定义协议格式,如:Dubbo Protocol3.将Proxy封装成Invoker(真实服务调用的实例)4.Invoker封装到Exporter5.将Exporter注册到注册中心。
2024-11-08 14:40:47
767
原创 nginx反向代理下的长连接
综上所述,nginx反向代理的情况下,tcp长连接设置完成。在实际系统应用长连接的场景中,可能会出现大量TIME_WAIT的情况,这里简单做个总结:1.导致nginx端出现大量TIME_WAIT的情况有两种:a.keepalive_requests设置比较小,高并发下超过此值后nginx会强制关闭和客户端的长连接;(主动关闭连接后导致nginx出现TIME_WAIT)b.keepalive设置比较小(空闲数太小),导致高并发下nginx会频繁出现连接数震荡,不停的关闭、开启和后端server的长连接。
2024-10-14 15:01:26
1668
原创 ios推送相关
前段时间,仔细研究了APNS的文档,把一些关键的地方记录了下来,弄懂这些对于理解APNS的规则,至关重要。 1. If APNs attempts to deliver a notification but the device is offline, the notification is stored for a limited period of time, and delivere
2016-02-01 17:53:24
554
原创 mongodbTemplate查询
分组查询:public GroupByResults group(Criteria criteria,String collectionName,String... groupBy){ return mongoTemplate.group(criteria, collectionName, GroupBy.key(groupBy).initialD
2015-12-28 14:33:37
2228
原创 zookeeper订阅与发布实现
方式一:import org.apache.curator.RetryPolicy;import org.apache.curator.framework.CuratorFramework;import org.apache.curator.framework.CuratorFrameworkFactory;import org.apache.curator.framework
2015-10-30 14:10:07
2019
原创 LOG使用问题总结
使用SLF4J的风格:Log4J的风格:log.debug("Found " + records + " records matching filter: '" + filter + "'");SLF4J的风格:log.debug("Found {} records matching filter: '{}'", records, filter);正确定义日志输出级
2015-10-26 15:23:15
615
转载 Log日志规范(转)
原文地址:http://www.cnblogs.com/kofxxf/p/3713472.htmlOverview一个在生产环境里运行的程序如果没有日志是很让维护者提心吊胆的,有太多杂乱又无意义的日志也是令人伤神。程序出现问题时候,从日志里如果发现不了问题可能的原因是很令人受挫的。本文想讨论的是如何在Java程序里写好日志。一般来说日志分为两种:业务日志和异常日志,使用日志我们希望能达
2015-10-26 15:21:56
733
原创 web项目访问首页问题
这个项目是通过mvn建立的,整个项目的原型就是spring_mvc_jpa_deom_archetype。框架早早建成,即可看到效果。假如项目名称叫做mvn_mvc,其效果如下:访问根路径http://localhost:8080/mvn_mvc/自动跳转到如下路径http://localhost:8080/mvn_mvc/spring/接下来的访问都是带着"spring"这个前缀的ht
2015-09-08 18:53:41
3816
原创 Apache与Tomcat 区别联系
Apache 和Tomcat 都是web网络服务器,两者既有联系又有区别,在进行HTML、PHP、JSP、Perl等开发过程中,需要准确掌握其各自特点,选择最佳的服务器配置。Apache是web服务器(静态解析,如HTML),tomcat是java应用服务器(动态解析,如JSP、PHP)Tomcat只是一个servlet(jsp也翻译成servlet)容器,可以认为是apache的扩展
2015-07-09 16:14:42
536
原创 spring实现多数据源
2.0&3.0系统拆库涉及多数据源操作,原来3.0系统中只会访问一个数据源,所以根据业务需求,在3.0customservice和mobile服务中追加多数据源配置及相关调用代码,如下: 1.在applicationContext.xml中,在原来一个数据源id=dataSource的基础上,再配置一个id=dataSourceV20的数据源 2.两个数据源绑定为一个动态
2015-04-23 15:17:46
570
原创 Spring1.1.1+quartz1.8.6实现集群环境下的定时任务
1.quartz.properties文件:#============================================================================ # Configure Main Scheduler Properties #=======================================================
2015-04-23 14:01:34
1419
原创 #jqGrid#如何设置jqGrid第一次初始化时不加载任何数据
1. 初始化的时候设置datatype: ‘local’$(“#grid”).jqGrid({url:”http://www.8qiu.cn”,datatype:”local”,//other options});2. 当要加载数据的时候把datatype改成json或者XML:$(“#list”).jqGrid(‘setGridParam’,{datatype:’js
2015-04-01 17:27:19
1591
原创 类属性拷贝方法
package com.sosgps.dao.util;import java.lang.reflect.Field;import java.lang.reflect.Method;//类属性复制方法类public class ClassCopyUtil { public static Object copy(Object object,Objec
2015-03-20 14:09:49
706
原创 js(tab)包括面包削初始化,搜索区初始化,选项卡初始化
/** * 新希望分析报表页面样式初始化脚本,包括面包削初始化,搜索区初始化,选项卡初始化 * * 此文件应在jquery核心文件之后引入 */(function() { var analysisreport_style_init = {}; var tabIds = []; var callbacks = []; // 面包削初始
2015-03-20 14:08:05
809
转载 最全的Eclipse快捷键
1. ctrl+shift+r:打开资源这可能是所有快捷键组合中最省时间的了。这组快捷键可以让你打开你的工作区中任何一个文件,而你只需要按下文件名或mask名中的前几个字母,比如applic*.xml。美中不足的是这组快捷键并非在所有视图下都能用。2. ctrl+o:快速outline如果想要查看当前类的方法或某个特定方法,但又不想把代码拉上拉下,也不想使用查找功能的话,就用ctr
2014-12-19 14:44:36
530
转载 Js获取当前日期时间及其它操作
Js获取当前日期时间及其它操作var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); //获取完整的年份(4位,1970-????)myDate.getMonth(); //获取当前月份(0-11,0代表1月)myDate.getDate();
2014-12-06 16:25:50
568
转载 漫谈程序员系列:一张图道尽程序员的出路 (转载,供自己看,感谢作者foruok)
《推背图》相传由唐太宗时期的司天监李淳风和袁天罡合著(此两人其实是超级武学高手,参见小椴的《开唐》),推算大唐以后中国两千多年的国运盛衰,在中国七大预言书中居首,是当之无愧的中国第一预言奇书。 我最喜爱的当代小说作家之一格非也有一篇小说以《推背图》为名,很好看。 说真的,本文和推背图没有一毛钱关系,唯一的关系就是大家都占个图字。 --------------正文分
2014-12-05 11:22:59
819
转载 深入研究java.lang.ThreadLocal类
深入研究java.lang.ThreadLocal类本文出自 “熔 岩” 博客,用于个人学习 一、概述 ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量)。也许把它命名为ThreadLocalVar更加合适。线程局部变量(ThreadLocal
2014-11-28 11:05:35
497
原创 sql文优化
最搞笑的删除重复delete from v30_md_organization o where o.rowid > (select min(m.rowid) from v30_md_organization m where m.code = o.code)
2014-07-04 16:12:00
568
转载 IOS push推送(javapns包与notnoop包的区别)
使用java进行IOS推送,开源的jar包比较有名的主要有两个,一个是javapns,一个是notnoop.对于javapns,之前有介绍过,内存泄漏。这个问题算比较严重,表现在:1.对于已推送的notify会一直保存,不会回收。2.默认情况下对应的Vertor保存notify,此数组会自动扩容,大批量时,也会有内存极增的问题。3.为了避免socket发送过程中,与苹果服务器之间连
2014-07-03 09:46:08
3085
1
原创 ini文件的读取
package com.sosgps.system.util.customized;import java.io.IOException;import java.io.InputStream;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util
2014-07-01 15:01:30
691
原创 类属性拷贝
//类属性复制方法类public class ClassCopyUtil { /** * * @param object 提供数据的类对象 * @param copyObject 需要进行替换的类对象 * @return * @throws Exception */ public static
2014-07-01 13:45:18
569
转载 Spring3中的mvc:interceptors标签配置拦截器
mvc:interceptors这个标签用于注册一个自定义拦截器或者是WebRequestInterceptors.可以通过定义URL来进行路径请求拦截,可以做到较为细粒度的拦截控制。例如在配置文件加入xmlns:mvc="http://www.springframework.org/schema/mvc"xmlns:xsi="http://www.w3.org/2
2013-11-05 14:57:31
1729
原创 hibernate事务
此文章仅限自己学习参考用!Hibernate 是JDBC 的轻量级封装,本身并不具备事务管理能力。在事务管理层,Hibernate将其委托给底层的JDBC或者JTA,以实现事务管理和调度功能。Hibernate的默认事务处理机制基于JDBC Transaction。我们也可以通过配置文件设定采用JTA作为事务管理实现:Java代码 …… "h
2013-10-23 11:16:12
464
原创 js传参数受特殊字符影响错误
类似于 `~!@#$%^&*()_ -=[]{}|;’:”,.\/解决方法:encodeURI 方法将文本字符串编码为一个有效的统一资源标识符 (URI)。encodeURI(URIString)必选的 URIString 参数代表一个已编码的 URI。说明encodeURI 方法返回一个编码的 URI。如果您将编码结果传递给 decodeURI,那么将返回初始的字符串。e
2013-10-21 14:42:55
2404
原创 My97日期控件
二. 功能及示例4. 日期范围限制静态限制注意:日期格式必须与 realDateFmt 和 realTimeFmt 一致而不是与 dateFmt 一致你可以给通过配置minDate(最小日期),maxDate(最大日期)为静态日期值,来限定日期的范围示例4-1-1 限制日期的范围是 2006-09-10到2008-12-20minDate:'2006-09-10
2013-09-25 14:17:36
754
原创 JAVA对图片进行格式检查
1)、判断文件的扩展名是否是要求的图片扩展名不过这种方式非常的不妥,别人稍微的把一个不是图片的文件的扩展名修改为图片的扩展名,就绕开了你的这种校验,2)、根据文件的前面几个字节 即常说的魔术数字进行判断魔术数字,指定是文件的最开头的几个用于唯一区别其它文件类型的字节,有了这些魔术数字,我们就可以很方便的区别不同的文件比如,一个JPEG文件,它开头的一些字节可能是类似这样的”ffd8
2013-08-29 15:36:49
690
原创 js校验方法(补充ing)
/*数字校验*/ function isDigit(s) { var patrn = /^[0-9]{1,20}$/; if (!patrn.exec(s)) return false return true } /*字符长度取得*/ function getCharLeng
2013-08-28 11:40:30
575
原创 将input file的选择的文件清空
上传文件时,选择了文件后想清空文件路径,搜索了一下,用两种方法解决 第一种: var obj = document.getElementById('fileupload') ; obj.select(); document.selection.clear(); 第二种: var obj = document.getElementById(
2013-08-27 18:04:59
1219
原创 用js获取radio选中的值
例如: 其中name属性值肯定是一样的,接下来用js获取选中的值:var zt = document.getElementsByName("zt");for(var i=0;i<zt.length;i++){ if(zt[i].checked) { alert(zt[i].value); }}用一
2013-08-23 21:09:21
941
转载 程序员技术练级攻略
月光博客6月12日发表了《写给新手程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在本站的id是Mailper)告诉我,他希望在酷壳上看到一篇更具操作性的文章。因为他也是喜欢编程和技术的家伙,于是,我让他把他的一些学习Python和Web编程的一些点滴总结一下。于是他给我发来了一些他的心得和经历
2013-07-23 18:56:35
548
原创 字符串转换成整数
题目详情输入一个表示整数的字符串,把该字符串转换成整数并输出,例如输入字符串"345",则输出整数345。请完成函数StrToInt,实现字符串转换成整数的功能。友情提醒:提交代码之前,请复查下你的程序,比如当给的字符串是如左边图片所示的时候,有考虑到么?当然,它们各自对应的正确输出如右边图片所示(假定你是在32位
2013-05-31 18:03:09
724
原创 请慎用java的File#renameTo(File)方法(转)
以前我一直以为File#renameTo(File)方法与OS下面的 move/mv 命令是相同的,可以达到改名、移动文件的目的。不过后来经常发现问题:File#renameTo(File)方法会返回失败(false),文件没有移动,又查不出原因,再后来干脆弃用该方法,自己实现一个copy方法,问题倒是再也没有出现过。 昨天老板同学又遇到这个问题,File#renameTo(File)方法
2013-04-12 16:45:26
686
原创 tomcat热部署的实现原理
一. 概述名词解释:所谓热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用。对于Java应用程序来说,热部署就是在运行时更新Java类文件。在基于Java的应用服务器实现热部署的过程中,类装入器扮演着重要的角色。大多数基于Java的应用服务器,包括EJB服务器和Servlet容器,都支持热部署。类装入器不能重新装入一个已经装入的类,但只要使用
2013-04-11 13:55:44
631
原创 关于request.getRealPath()的几点疑问
1、此方法已过时,现在可替换的实现方法有 request.getSession().getServletContext().getRealPath("/") 在Servlet 里用this.getServletContext().getRealPath("/");获得绝对路径。 struts里用this.getServlet().getServletCon
2013-04-11 11:02:25
1161
原创 struts2工作原理
Struts2工作原理 Struts2框架的正常运行,除了占核心地位的xwork的支持以外,Struts2本身也提供了许多类,这些类被分门别类组织到不同的包中。从源代码中发现,基本上每一个Struts2类都访问了WebWork提供的功能,从而也可以看出Struts2与WebWork千丝万缕的联系。但无论如何,Struts2的核心功能比如将请求委托给哪个Action处理都是由xwork完
2013-04-07 10:31:47
961
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人