小案例
文章平均质量分 81
NeroJings
一切不过是思想的产物!
展开
-
Tbschedule参数配置理解
Tbschedule解决的关键问题是分布式任务调度问题,所以,它的核心是如何将一批任务拆分到多个机器上,多个线程上执行。并且做到均匀分配,不重复执行,探活高可用等。但实际使用中,其参数较多,不同的worker业务场景需要不同的参数配置,本篇主要讲述tbschedule对应的任务分配中角色对应关系以及分配过程的理解。以便于在具体业务研发具体分析。具体问题caseAttention: 建议首先尝试自己回答一下如下问题,如果有比较清晰的理解。就无需在往下看了Tbschedule有一worker配置如下:原创 2021-09-06 17:19:22 · 474 阅读 · 0 评论 -
G1垃圾收集器的应用调研和实践- JNI Weak Reference Cost Too Long
以下的一些理论主要用于个人的回顾使用,如需看案例,可以直接跳到下面的应用部分。G1收集器的处理方式也不是一蹴而就的,从它身上还是可以看到很多之前收集器的身影在上面。比如:逻辑分代、晋升、复制、并行清理、并发分段标记(CMS)等思想中借鉴而来的,较适合大内存的机器应用,比如8c16G。之所以要用大内存,那是因为它的主要核心还是空间换时间的做法。核心主要有以下几点Region区域的划分搭配CSET使得单次gc关注的容量变小RSet和Cardtable使得标记过程扫描空间变小三色标记和SATB实现增量标原创 2021-09-06 15:59:14 · 756 阅读 · 0 评论 -
记录一次gc报警背后的思想推演
记录一次gc报警背后的思想推演问题背景在日常应用中,我们经常听到4C8G,8C16G等生产机器配置,在出现本次报警之前,我基本上是一个不太经常去看jvm指标的人。问题经历是这样的,在2021年8月14日凌晨,我收到了计费系统频繁YGC的报警,报警内容部分片段如下:00:05:20至00:05:40,JVM监控YoungGC次数=24次[偏差20%],超过7次YoungGC次数>=20次收到的内容大致是说平均1秒会发生1次+的YGC,YGC频繁,第一反应就是流量有对应增加,而结果也确实是这样原创 2021-09-06 15:36:22 · 940 阅读 · 0 评论 -
Java根据汉字获取汉字对应的首字母
前言: 在一些手机通讯录或者一些需要排列汉字的情况下我们需要按照汉字的首写字母去索引一些联系人或者汉字,让你排列汉字或许你没有头绪。让你排列A、B、C..等字母你应该头不会那么大了吧?最起码自定义顺序之后去挨个判断等于的关系也可以排列(当然有的大神有其他的方法,在此我也不在叙述),最简单的莫过于对数字的排列。我这么说大家应该没有意见吧?下面进入正题测试结果截图:原创 2013-05-07 17:12:35 · 1873 阅读 · 0 评论 -
Javascript实现滑块滑动改变值效果
最近做了一个关于税务的功能,值得一说的是本页面的滑块实现。大家都知道现实中的程序员大部分都是对于页面和美工不是很熟悉。本人也是,但是本人比较喜欢自己动手来实现。废话不多说。上图: 实现结果:部分js代码:window.onload = function (){ var oWin = document.getElementById("win");原创 2013-04-12 14:36:15 · 2508 阅读 · 0 评论 -
搭建SSH框架链接Oracle数据库
本文应用SSH框架版本Struts Version-struts-2.3.12-all.zipSpring Version-spring-framework-3.0.1.RELEASE-A.zipHibernate Version-hibernate-3.2.5.ga.zip下载地址http://struts.apache.org/downloadhttp://www.s原创 2013-03-27 14:44:37 · 4575 阅读 · 0 评论 -
Div绝对布局和相对布局 And 不同层调出滚动条 And 滚动条滚动事件
一、Div的相对布局和绝对布局代码案例: 自己理解:以上面代码为例,我来阐述一下自己对于相对布局和绝对布局的理解。Inner Div由于在outer Div的内部。并且满足的外部div是relative(相对布局)的,并且内部为absolute的布局,那么这就是内部div相对于外部div的绝对位置。一般用left和top来设置间距。也就是原创 2013-03-25 13:33:13 · 2486 阅读 · 0 评论 -
控制backspace键删除字符实现微博用户删除+展现选择好友列表
最近项目中应用到了微博系统。本人做了一个模仿微博一键删除一个用户的功能和选定好友的功能。功能截图如下:说明:主要是onpropertychange事件和onkeydown事件代码如下:案例一:onpropertychange的应用[微博字数控制] Html:还可以输入300字textareaid="content"name=原创 2013-03-25 12:34:54 · 1792 阅读 · 2 评论 -
Struts2 Action交互解密加密JSON参数
最近在工作用遇到了struts2与前台ajax交互json数据的写法。摒弃了之前的response.getWriter().write 方法。用以下方法进行了相关的实现:后台服务器端:JSONObject obj = JSONObject.fromObject(ResultOfMap); this.str = obj.toString(); //response.set原创 2013-03-21 00:21:57 · 3345 阅读 · 0 评论 -
分页原理以及解决方式
最近又重温了一次分页的任务,不知觉间觉得自己忘记了不少东西。本次将分页的一些自己的心得体会总结如下: 概述: 分页总体原理为在每次点击页数的时候将点击的页数作为参数当前页传递到后台服务器端。服务器端经过nowpage和pagesize的一定算法将其他参数(例如pagecount,startrow,endrow)等分页需要的属性计算出来。然后将startrow和endro原创 2013-03-07 15:40:04 · 1846 阅读 · 0 评论 -
Jcrop裁剪图片[一] :前端js总结
最近项目中有一个截取图片的效果,于是在用到了Jcrop框架,使用中看API然后网上查阅一些文章勉勉强强算完成了这个功能,现将过程总结如下实现思路Jcrop来获取截取图片的起点XY和终点xy,另外还有截取范围的wh,--将这些数据传递给服务器端,然后由服务器端相应语言的API进行裁剪或者透明等等操作.官网URL: http://code.ciaoca.com/原创 2014-12-03 18:35:05 · 13674 阅读 · 3 评论 -
如何解决路由器延迟问题
问题场景 好久不写BLOG了,最近搬家,重新办了网络,发现一样的路由器,到了这边ping值基本上没有个位数,于是尝试直接宽带拨号,ping值基本上都在3MS,但是连接路由器之后出现了异常,也就是说不是运营商的问题,中间尝试过各种网络上的方法都不管用,于是开始了下面的一个处理备注: 个人网络知识太差,本篇blog留有以后备注使用1、登陆路由器后台原创 2015-05-10 23:15:54 · 28196 阅读 · 0 评论 -
Spring定时器
等级:备忘技术含量:LOW使用:1、XML配置:http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task-3.1.xsd 2、JAVA实现类@Componen原创 2015-05-17 21:37:57 · 1681 阅读 · 0 评论 -
Log4j.properties配置详解
一、Log4j简介Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。1、LoggersLoggers组件在此系统中被分为五个级别:DEBUG、INFO转载 2015-06-07 13:03:20 · 704 阅读 · 1 评论 -
HTTPS环境搭建
前言因IOS10的强制HTTPS,没有玩过https的又开始上路啦,本篇采用nginx服务器,搭建认证证书,实现https的访问请求成功,在开始的时候认为https必须为客户端请求需要一个CSR文件..然后什么IE浏览器配置信任证书等等,回头看baidu.steam.都是浏览器访问,也都是https,算是闹明白了https并没有想象中的那么复杂,证书的申请需要一个CSR文件,该CSR生成公钥,用户h原创 2016-10-17 18:12:38 · 1987 阅读 · 2 评论 -
ACME-TINY制作免费的HTTPS证书
前言虽然实现了https的环境搭建,用到付费的CA认证机构,然而身边确实有很多声音在建议这免费的https SSL证书,于是乎自己真正搭建尝试了一下免费的https的搭建过程,并且阐述自己的理解4种不同的证书企业级别:EV(Extended Validation)、OV(Organization Validation)个人级别:IV(Identity Validation)、DV(Domain V原创 2016-12-19 13:37:49 · 3055 阅读 · 0 评论 -
前后端分离跨域问题解决方案
声明:在以往的开发中,前后端分离也不是像现在这么热门,所谓的前端工程师也只不过是写好静态页面由Java工程师或者php工程师嵌入到页面中进行开发,这或许加重了这些工程师的工作量,而且在样式调试上由纯html代码到jsp,asp,php调试起来要两个工程师一起商量着找问题,解决起来成本也很高。前后端分离,前端工程师不仅仅要负责展现,而且要编写相应的代码使得dom渲染,网络交互都focus在前端工程师这原创 2017-07-17 14:28:16 · 26827 阅读 · 7 评论 -
跨域解决方案详解
概述废话不想多讲,由于前篇整理了由前后端分离的3种方案,个人挑取了配置服务器的方案进行方案推进,结果数据是交互了,但是在header自定义token的cache上出了问题,自定义的header一直不能够传到server上。于是乎各种百度,google有了这篇帖子的衍生,学术不精,必须踩坑。跨域请求CORS流程描述如下OPTIONS验证服务器解决方案在采用filter解决之前,查看了一些spring原创 2017-07-20 17:37:09 · 891 阅读 · 0 评论 -
千万级数据清洗案例总结 [mysql with mycat -> Elasticsearch]
背景最近工作较忙,没有时间打理博客,赶工,加班,黑白颠倒,失眠之余,写一写前阵子遇到的数据清洗案例。1000多万数据的清洗工作,从Mysql清洗到Es里面,起初的规划是用limit查询分片数据,然后逐一批次插入到es内部。然而,想法和实际操作完全两码事,细节性知识重要性尤其凸显 我们的目的性能瓶颈 可能出现的性能瓶颈从上图来看,我们粗略的可以这样划分我们的程序可能出现的...原创 2018-12-08 00:49:32 · 2141 阅读 · 0 评论 -
电商-扣减库存的思想碰撞 [redis的eval函数与胶水语言lua的结合]
背景我们大家都知道,在一个电商系统里面,库存是一个很敏感的系统组成部分。这是因为在这一点上,我们的程序执行模型必须在一个点上做出改变,那便是从并行执行模型到串行执行模型的切换。因我们的某一个商品的库存资源可以认为是有且只有一个的,不管前面的执行过程有多少个线程,多少个用户,在实际扣减或回滚的时候,我们期望它是原子的,内存可见的,有序的执行顺序。实现案例结构图可能的复杂逻辑...原创 2018-12-08 09:52:36 · 850 阅读 · 0 评论 -
JunitTest拿spring容器bean的2种方式[Spring ClassPathXmlApplicationContext和FileSystemXmlApplicationContext]
先说:ClassPathXmlApplicationContext 这个类,默认获取的是WEB-INF/classes/下的路径,也就是在myeclipse的src下的路径,所以用这个是获取不到WEB-INF下的配置文件的... 下面是几个用法,引src下的一个文件,有以下几种方式 BeanFactory ac = new ClassPathXmlApplicationCont转载 2013-01-17 15:34:09 · 2494 阅读 · 0 评论 -
[醒目] 自动生成hql[基于javabean的操作][Java reflect 技术的体现]
// 此方法实现动态创建hql传递参数只需要实体包装的类和需要模糊查询的数组 //根据第一个对象参数的属性值是否存在而拼装 //参数说明: //1、要查询的表的映射类对象 //2、第二个参数为属性名数组。作用为模糊查询的数组名 public Map createHql(Object paobj, String[] strs) throws IllegalArgumentExcept原创 2012-07-20 10:48:56 · 1502 阅读 · 2 评论 -
Proxy和InvocationHandler模拟Aop底层实现
Spring Aop底层原理Proxy和InvocationHandler用InvocationHandler和Proxy实现动态代理:1、编写被代理的类实现指定接口:@Component("userService")public class UserServiceImpl implements UserService{ private UserDao userDao; publ原创 2012-06-29 15:49:19 · 2818 阅读 · 0 评论 -
8、WEB开发由浅入深系列BLOG-8(JSTL标准标签库之FMT标签)
1、 首先引入标签库: <% //在EL表达式中用locale的list request.setAttribute("localeList",Locale.getAvailableLocales()); %> //1、fmt:requestEncoding标签改变请求编码原创 2012-05-07 09:35:33 · 1183 阅读 · 0 评论 -
6、WEB开发由浅入深系列BLOG-6(JSP简单小案例)[ip获取国家地区、获取提示消息、脚本控制、生命周期]
1、JSP生命周期:<%! public void _jspInit(){ //初始化时运行的代码 } public void _jspDestory(){ //销毁时运行的代码 } %>2、JSP脚本控制输出<% String param = request.getParameter("param"); if("1".equals(param)){原创 2012-04-10 14:20:41 · 1273 阅读 · 0 评论 -
弹出IE下载框提供下载的方法
String pathend = this.getRequest().getParameter("path");// path:\\172.16.11.101\cic\CICRecPRO\201203\0901\00\Call_2001287506_2001287509.wav try { pathend=java.net.URLDecoder.decode(pathend,"UTF原创 2012-03-22 15:00:34 · 1016 阅读 · 0 评论 -
5、WEB开发由浅入深系列BLOG-5(Servlet实现简单文件上传)
Servlet实现文件的上传<!-- 上传文件不能够像提交文本信息一样,因为上传文件用到的是2进制的上传方式,所以要设置enctype="multipart/form-data" 而且在服务器端也要引入commons-fileupload.jar文件,-->客户端: 上传文件的案例 上原创 2012-04-09 21:14:25 · 1270 阅读 · 0 评论 -
Class文件夹为空,Tomcat发布不上去的原因解决
1、 右键项目-properties-buildPath-remove所有lib包。2、 右键项目-properties-buildPath-add所有lib包。3、 右键项目-properties-Java Compliler-6.04、 Tomcat-JDK-jre6原创 2012-03-22 15:26:32 · 5574 阅读 · 0 评论 -
automation服务器不能创建对象
最近公司叫我做纯javascript上传文件,就只能用Scripting.FileSystemObject或者ActiveXObject("Scripting.FileSystemObject");,而在上传中也因为一些安全性问题导致“automation服务器不能创建对象”的问题,我不想让其他的哥们走弯路,以下是解决方案大全 :1、如果是Scripting.FileSystemObject转载 2012-03-19 16:36:14 · 967 阅读 · 0 评论 -
用Js操作导出Excel
var data = document.getElementById("data"); //得到Table对象 if(data == null){ alert("请先筛选数据!"); } var oXL = new ActiveXObject("Excel.Application"); var oWB = oXL.Workbooks.A原创 2012-03-19 11:33:53 · 560 阅读 · 0 评论 -
实现两个日期之间的日期排序显示
//实现两个日期之间的日期排序显示 Calendar startcal = Calendar.getInstance(); Calendar endcal = Calendar.getInstance(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date temp = new Date();原创 2012-03-19 11:31:19 · 710 阅读 · 0 评论 -
Spring mvc (一) [从请求页到控制器到结果页的简单实现案例]
1、首先添加要用到的包:截图显示2、配置web.xml-前置控制器DispatcherServlet servlettest org.springframework.web.servlet.DispatcherServlet 1 servlettest *.do 3、编写要映射到的controller控制器 LoginActi原创 2012-05-29 17:11:58 · 2055 阅读 · 0 评论 -
Spring mvc (二) [Springmvc 继承AbstractCommandController配合formbean]
Springmvc 继承AbstractCommandController配合formbean 1、 在一个spring mvc项目中的顺序我想和上一篇BLOG是一样的,首先我们先把搭建spring mvc开发的环境和顺序再来复习一下:ü 添加Jar包支持(可以从上一篇blog中查看)ü 配置web.xml中的前置控制器为DispatcherServ原创 2012-05-30 21:42:39 · 3996 阅读 · 0 评论 -
Spring mvc (三) [继承SimpleFormController配合formbean区别get和post请求]
通过继承SimpleFormController来重写onsubmit和referenceData方法这里有两个方法。可以限制get和post请求我们的url是http://localhost:8080/springmvc/simpform.do顺序则为:http://localhost:8080/springmvc/simpform.do get方法 (默认传递回一个vi原创 2012-05-31 21:27:12 · 4228 阅读 · 0 评论 -
Hibernate逆向生成class和hbm映射
1. 准备数据库,假如名为TestDB,里面有一个User的表。2. 在MyEclipse的右上角切换透视图,切换到MyEclipse Database Explorer。3. 然后在最左边点击右键,选择New(也就是说新建一个数据库连接,Driver Name随便起)。配置好后点击NEXT,进入下一个窗体。4. 选择第三个单选按钮(Display the selected转载 2012-07-04 09:37:35 · 1273 阅读 · 0 评论 -
[经典案例]Jdom读取xml文件
本文转自http://www.blogjava.net/fjq639/archive/2005/12/20/24806.html 用JDOM读取XML文件需先用org.jdom.input.SAXBuilder对象的build()方法创建Document对象,然后用 Document类、Element类等的方法读取所需的内容。IBM : developerWorks 中国站上有一个很好的例转载 2012-06-13 14:39:53 · 923 阅读 · 0 评论 -
Spring的xml配置bean文件原理-[Java反射机制]
知道Spring在xml文件里面配置bean的方式,但是它是如何将对象赋值过去的呢?就是通过xml解析+Java反射。Xml解析可用jdom或者dom4j。网络上一找一大堆。下面我们就来说说Java的反射和内省:反射:Java ReflectionJava反射机制具有的功能:1、 在运行时判断任意一个对象所属的类2、 在运行时构造任意一个类的对象3、 在运行时判断任意一个类具有的成员标原创 2012-06-13 14:43:59 · 9002 阅读 · 0 评论 -
Javascript和Java获取各种form表单信息
大家都知道我们在提交form的时候用了多种input表单。可是不是每一种input表单都是很简单的用Document.getElementById的方式就可以获取到的。有一些组合的form类似于checkbox或者radio或者select我们如何用javascript获取和在服务器中获取提交过来的参数呢?多说无用、上代码:Jsp-html代码:原创 2012-06-11 16:51:53 · 14075 阅读 · 1 评论 -
Spring mvc (七) [基于注解@RequestMapping(method=)限制请求为get或者post]
通过继承SimpleFormController来重写onsubmit和referenceData方法这里有两个方法。可以限制get和post请求我们的url是http://localhost:8080/springmvc/simpform.do顺序则为:http://localhost:8080/springmvc/simpform.do get方法 (默认传递回一个vi原创 2012-05-31 22:15:10 · 14846 阅读 · 1 评论 -
Spring mvc (四) [继承MultiActionController实现以方法为单位的controller][配置2种请求的指定方式]
MultiActionController继承MultiActionController。实现以方法为单位的请求方式。这里有两种配置。分别是根据参数名指定要请求的方法和根据方法名请求controller。分别是:1、ParameterMethodNameResolver 根据参数名2、InternalPathMethodNameResolver 根据方法名案例代码如下。1、原创 2012-05-31 21:36:16 · 6484 阅读 · 0 评论