自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 2022年简单总结

年终总结

2023-01-21 23:26:04 88

原创 管理平台数据量大优化的一点思路

业务现状:功能:xx流水查询问题:系统初始化查询缓慢以及条件查询缓慢数据库:oracle 服务器配置:32核 64G内存表情况:设置7张表平均单张数据量超过2亿要求:不能改变现有业务逻辑,即功能改查询功能不能对数据产生的业务进行修改步骤:一,对表进行分表经过询问业务使用人员,发现使用查询功能最重要的是查询近期的数据,而不是历史数据,通过数据分析表日增长在300W上线浮动,每逢周六日以及国家法定节假日数据库增长基本为0处理方法:数据库处理:将现有的表拆分为实时表与历史表,实时表为当...

2021-01-08 09:43:16 501

原创 oracle大批量索引获取功能优化

业务场景:我们有一个接口提高给第三方调用,每天调用频率在500W+次以上,需要返回一个基于oracle序列自增产生的id给第三方,(该id后面给一张关联表作为主键id)优化前实现逻辑:每次第三方调用接口便执行一次数据库查询操作seelct seqName..nextval from dual优化后逻辑第一步,设置一个队列private static LinkedBlockingQueue<String> linkedBlockingBatchMsgIdQu..

2020-08-27 19:26:38 258

原创 对项目工作的一点思考

1,当系统出现性能问题的时候,优化的时候一定要考虑全面,不能现在这个功能优化好了,其他地方又出现新的问题(生产环境有时候不太好做性能测试,主要是生产环境的机器测试环境肯定是没有办法模拟的,但是自己需要想办法模拟一个类似的场景来进行验证测试)2,作为一个项目负责人的时候,不要总是盯着自己负责那一块,要熟悉了解全部功能业务(这样可能会比较花时间与精力,但是这样做对项目以及产品都是非常有好处的)...

2020-02-08 17:39:55 291

原创 2019年小总结

1,年初时结了婚,运气很好是高三时期喜欢的女孩子2,家人被电话诈骗 12W多(大半年过去都未破案,估计是破不了案了),这一关我们挺过去了3,去年买的房12.31如期交了房,小区的环境很好4,年底的时候被评了优秀员工,还加了工资,今年没有加多少班也不是很努力,做事的方式方法很重要,明年还是需要稍微加一点班,勤奋还是很重要的5,看了一本书6,运动:基本每天步数超过12000,很不错...

2020-01-21 14:43:09 160

原创 数据库大表超大表迁移归档方案(以oracle为例子)

原理:超大数量表的情况下,采用将原来表作为归档表,而不是直接复制原始表到归档表,如果需要保留一部分数据,再从归档表中迁移一部分数据原始表T_IM_MESSAGE 原始表T_IM_MESSAGE_LOG 归档表第一步,复制新建立一个与原表结构一模一样的表T_IM_MESSAGE_LOGcreate table T_IM_MESSAGE_LOG as select * from T_IM...

2019-11-27 16:53:45 3039

原创 (生产事故)openfire内存只增不减,也一直不GC

我们有一个老项目是基于openfire开发的客服以及消息推送,用户总量在300W左右,高峰期同时在线是5W人左右第一次运维反馈openfire使用内存比例占用一直在50%以上,居高不下因为是老项目,也没有特别重视(1,老项目,2,没专人维护),我们的反馈是让运维重启第二次,运行一两周以后,运维又找上我,说是内存还是占用过高,但是没有分析堆栈信息,主要从几个方面来分析1,...

2019-07-04 19:37:49 514

原创 (生产事故)表不设计索引导致数据库大量查询超时,机器cpu100%,app不能正常使用

16年得时候我们上线了一个统计消息推送消息到达率的功能我们消息分为在线消息(openfire)离线消息 苹果apns推送在线消息:用户手机收到推送消息以后,返回一个回执业务号到后台离线消息:消息调用apsn接口苹果会返回一个成功状态值,然后也是传递一个业务号给后台应用后台根据消息业务号加用户id加入到达记录表插入之前会判断业务号and用户id是否重复查询问题就出现再这里,消...

2019-06-27 18:49:14 421

原创 (生产事故)rabitmq大量队列数量有增无减,消费组件又一直在打消费日志,进而影响app整体功能

2015年的一天,早上突然很多用户反馈消息系统出现空白且在使用功能的使用与有提示系统异常吓得我马上上生产机器看日志,发现大量接口调用超时,且mq消费日志不停的再打,很疯狂那种我们想到的是昨天是正常的,为什么突然之间就大量报错呢,并看错误是啥产生的乱码报错,会导致进程直接结束,结束的后果就是队列没有被消费,最终导致mq队列数量有增无减少,并且重复被消费最终导致整个app不能使用...

2019-06-21 18:37:28 183

原创 oracle与mysql数据库基本数据类型--介绍与区别

再这里我写的时我们常常用到的,不会每个类型都介绍到一,mysql字符串类型、数字类型、日期类型 //LOB类型、LONG RAW& RAW类型、ROWID & UROWID类型。mysql  数据类型(INTEGER,SMALLINT,DECIMAL,NUMBERIC)TINYINT        1字节        (-128,127)          (

2017-07-26 19:14:13 4699 1

原创 前端数据接口被恶意调用 两个例子

web安全,接口频繁恶意请求

2017-07-26 18:42:20 2287

原创 jquery判断滚动条到达底部

var nScrollHight = 0; //滚动距离总长(注意不是滚动条的长度)         var nScrollTop = 0;   //滚动到的当前位置         var nDivHight = $("#test").height();//overflow所在的div                  $("#test").scroll(function(){/

2017-02-17 18:16:41 1050

原创 log4J 日志文件使用_配置文件讲解

网上搜了好多关于log4j文件使用的文档,大都感觉说的太杂,实用性不是特别强,我就那我一个日常的日志文件来给大家讲解#log4j.rootLogger=DEBUG, A1, R    --下面si行定义的是日志级别 其实我一般就用两种分别是info 与  error  在测试环境可以用info  在生产环境用ERRORlog4j.rootLogger=INFO, A1, R        

2017-01-06 09:55:18 328

原创 20161215关于写博客的一些感想

20161215关于写博客的一些感想工作久了,总是重复写一些业务代码,感觉长进不够,就想谢谢博客,分享自己的总结的结束,刚开始建立博客的时候,每天都想写几篇,过一段时间后,发现写的时候,有点像完成任务一样,有点不在乎分享知识的质量,再过一段时间就断了,今天再打开博客来看,有所悟,自己不能一周发一遍博客的原因,一是,自己知识水平的确是有限,发了几篇之后,肚子里就没有货了,其二,重点,有点两天打渔

2016-12-15 16:50:21 451

原创 eclipse出现An internal error occurred during: "Building workspace". Java heap space 错误。

出现这个错误,eclipse 会卡死,以及自动退出解决方案 工程根目录 找到项目中.project文件删除这两处  第一处:          org.eclipse.wst.jsdt.core.javascriptValidator                  ildCommand>第二处: org.eclipse.wst.jsdt.core

2016-12-14 10:33:36 29052 5

原创 img图片缓存清除

缓存在浏览器中可以加快访问的速度,在数据量大,但可以不是实时数据时,缓存很有必要今天遇到一个问题,对图片用jquery  $("#sfzImg").attr("src","/upload/ygpic"+"/"+sfzValue);  图片的名称始终不会改变,唯一的变量就是一个员工编号,所有一旦添加了图片字段,返回的图片地址始终是一样的,在使用重新上传图片,因为页面内容太多,非常多的数据请求(估

2016-11-22 20:48:50 10542 1

原创 存储过程与包关系详解

Packages 的作用主要是简化应用设计、提高应用性能、实现信息隐藏、子程序重载。我讲一下自己用到的东西,由于Oracle存储过程没有返回值,它的所有返回值都是通过out参数来替代的,我们在使用存储过程是,定义两个如下图的出参下图 调用Packages过程业务逻辑结束以后,输出可以看到,它是把游标(可以理解为一个指针),作为一个

2016-11-08 16:03:48 3119 2

原创 plsql左侧窗口列表讲解

这些列表内容,新人甚至写代码写了几年的,也不能全部每个功能的大致作用,今天我整理一遍,给大家讲解一遍1,recent objects你最近访问或是使用过的对象。 就是一个记录,相当于的最近访问的内容列表。2,recycle bin (1)、回收站启动和关闭回收站默认是开启的.不过我们可以通过参数recyclebin来关闭和开启.如果只是针对每个session

2016-11-08 15:59:57 13115

原创 使用plsql两种快速度修改表内容的方法以及区别

在用plsql修改表数据,刚开始很多人会用update xxx表名 set xxx列名=‘xxx值’ where   条件列=="xxx值"但是有时候会修改数据比较多,可以直接在plsql上修改有两种方式1,使用select from   update   会锁表,不能执行其他deletel  or update操作2,   使用select rowid      不会锁表,效率相

2016-11-06 14:25:01 4204

原创 java执行linux命令

在java开发中,有时会遇到有些中间件,或者web项目因为一些问题需要重新启动(我这边主要是需要像定时任务一样)   有两种方法一,java方法  public class test {public static void main(String[] args) throws Exception {// TODO Auto-generated method stub 

2016-10-31 09:25:09 480

原创 引入外部框架JS出现乱码问题解决

有时敲代码很容易忘掉一下细节问题再引入js的时候,有时觉得便利通常不会考虑其他可能会直接引入,这一点如果是自己编写的代码可能不会出现乱码的情况,但是引用外部框架的时候,就极大的几率出现乱码问题乱码问题前  JS  引入方式    如上图,我引用的是一个外部图表框架   这样会出现乱码刚开始我一直认为这可能是文件格式的问题,有时服务器上可能是u

2016-10-28 16:10:46 2477

原创 java再用到split截取字符串"_"

java截取时有时会截取“_”,刚开始我以为跟普通的字符方式一样,后来截取出来有误,正确的截取方式是     split("\\|");

2016-10-27 10:06:07 333

原创 20161021每周一篇技术文章,开始写博客

工作两年的时间,感觉代码方面能力虽然有进步,但是进步过于缓慢,思考很久,还是决定每周都尽量写一点技术类或者管理的文章,来网上进行交流与沟通,其目的就是促进自己进步  20161021

2016-10-21 12:49:20 426

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除