随笔分类 -  编程开发

摘要:1. 背景 在分布式集群系统的开发中,线程锁往往并不能支持全部场景的使用,必须引入新的技术方案分布式锁。 2. 原理 实现分布式锁必须依靠第三方存储介质来存储锁的元数据等信息。比如分布式集群要操作某一行数据时,这个数据的流水号是唯一的,那么就把这个流水号作为一把锁的id,当某进程要操作该数据时,先去 阅读全文
posted @ 2019-08-05 19:39 oneqhw 阅读(211) 评论(0) 推荐(0)
摘要:1.整体架构 本测试包括1个nginx,2个tomcat。整个系统架构如下。 Nginx下管理了静态资源,如jsp,css等。连接了2个tomcat,采用轮询访问的规则。 2.tomcat部署 本次测试中用了2个tomcat,其服务端口为8081、8082。在两个tomcat的webapps目录下部 阅读全文
posted @ 2019-03-24 10:39 oneqhw 阅读(28499) 评论(0) 推荐(0)
摘要:消息中间件和消息通信与RPC各自具有怎样的优势,如何互补消息中间件主要实现的是异步、弹性消息以及队列,弹性消息有时可以借助于外存从而一定程度上可以实现峰值缓存,有效均衡服务器端压力,同时消息可以进行一定程度上的定于,从而实现了基于分组的广播,同时可以实现消息订阅;RPC则是主要集中于外部的方法调用, 阅读全文
posted @ 2019-03-07 19:28 oneqhw 阅读(2644) 评论(0) 推荐(1)
摘要:集合判断: 例1: 判断集合是否为空:CollectionUtils.isEmpty(null): trueCollectionUtils.isEmpty(new ArrayList()): trueCollectionUtils.isEmpty({a,b}): false 例2: 判断集合是否不为 阅读全文
posted @ 2019-03-07 19:24 oneqhw 阅读(3680) 评论(0) 推荐(0)
摘要:概述 比如去火车站买票, 有7个(maximumPoolSize)售票窗口, 但只有3个(corePoolSize)窗口对外开放。那么对外开放的3个窗口称为核心线程数, 而最大线程数是7个窗口。 如果3个窗口都被占用, 那么后来的人就必须在售票厅(SynchronousQueue、LinkedBlo 阅读全文
posted @ 2019-03-07 17:56 oneqhw 阅读(924) 评论(0) 推荐(0)
摘要:tomcat源码导入 阅读全文
posted @ 2019-03-06 13:31 oneqhw 阅读(4193) 评论(0) 推荐(0)
摘要:1. Eclipse中安装STS插件 (1)在线安装 Help--Eclipse Marketplace... 搜索“STS”,点击“install”安装 (2)本地安装 打开网页 http://spring.io/tools/sts/all 下载适合自己的eclipse版本的STS压缩包 下载后, 阅读全文
posted @ 2018-02-02 16:50 oneqhw 阅读(11345) 评论(0) 推荐(0)
摘要:尼玛,被mybatis的*Mapper.xml文件害惨了!整整两天都在围绕这个问题转圈! 先看问题长啥样吧!下面是通过逆向工程生成的Mapper.xml文件,包路径什么的都没有错! 贴出来详细的报错信息: 折腾了两天,偶尔在网上见网友如下解决方案,才算是解决了(想大哭一场): 在pom文件中添加如下 阅读全文
posted @ 2018-01-30 15:20 oneqhw 阅读(2646) 评论(0) 推荐(0)
摘要:jdk1.5不支持http协议,jdk1.8默认支持,比较好的解决方案是升级jdk,但是升级jdk风险极大。不能升级jdk的情况下,可以使用如下方式。 利用httpclient,进行封装,从而实现对https的get和post请求 阅读全文
posted @ 2018-01-29 19:05 oneqhw 阅读(4843) 评论(0) 推荐(0)
摘要:(说明:MongoFileOperationUtil是自己封装的一个Mongodb文件读写工具类,里面需要依赖AdvancedDatastore对象实例,dsForRW用来获取Mongodb数据源)在springframework里,我们不能@Autowired一个静态变量,使之成为一个spring 阅读全文
posted @ 2018-01-22 10:59 oneqhw 阅读(642) 评论(0) 推荐(0)
摘要:概述 Thrift是一个软件框架,用来进行可扩展且跨语言的服务的开发。它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++、Java、Python、PHP、Ruby、Erlang、Perl、Haskell、C#、Cocoa、JavaScript、Node.js、Smalltalk、and OC 阅读全文
posted @ 2018-01-17 17:00 oneqhw 阅读(826) 评论(0) 推荐(0)
摘要:1.下载activeMQ2.解压activeMQ3.启动 对于5.10版本以及之后用:bin\activemq start 对于5.9版本以及更早的用:bin\activemq4.消息类型 4.1点对点 消息生产者生产消息发送到queue中,然后消息消费者从queue中取出并且消费消息。消息被消费以 阅读全文
posted @ 2018-01-12 17:42 oneqhw 阅读(147) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2017-11-13 15:51 oneqhw 阅读(129) 评论(0) 推荐(0)
摘要:上一篇介绍了通过context.getJobDetail().getJobDataMap()方式获取传递的数据,其实可以通过定义属性来传递参数 调度器中传输数据 阅读全文
posted @ 2017-07-16 22:35 oneqhw 阅读(1750) 评论(0) 推荐(0)
摘要:Quartz定时器使用比较广泛,介绍一点简单的使用 上代码:定义一个Job,执行具体的任务 Job的执行 好了就这样吧 阅读全文
posted @ 2017-07-13 23:47 oneqhw 阅读(1771) 评论(0) 推荐(0)
摘要:Redis作为服务器缓存,用处比较多。本文使用java操作redis,对操作进行简单的封装,并介绍如何将其集成到spring中,最后介绍redis分页查询。 首先定义操作接口,为redis的单机操作和集群操作提供标准。 定义单机版实现类 如下是集群操作实现类 jedis相关的bean在spring中 阅读全文
posted @ 2017-07-12 23:06 oneqhw 阅读(637) 评论(0) 推荐(0)
摘要:在写jar程序,而不是web程序的时候,使用mybatis作为持久层,可以集成POOLED连接池,而阿里的druid不能用,确实很郁闷。不过有办法。 首先准备好数据库配置文件 然后对Druid进行一个简单的封装 封装好之后,可以在mybatis的配置文件中使用了 然后就可以使用了 阅读全文
posted @ 2017-07-11 23:34 oneqhw 阅读(4175) 评论(0) 推荐(0)
摘要:前言 这段时间没有更新博客,一直想做一个基于ssm的简单的项目。经过多次的尝试,终于实现了简单的增删查改功能了。 正文 由于前端的技术不是很熟悉,经过多方的查阅,使用了bootstrap的样式,来使界面变的好看一些。 登陆页面如下: 输入用户名和密码之后,即可进入系统。其实登陆应该放在spring的 阅读全文
posted @ 2017-02-20 12:26 oneqhw 阅读(11772) 评论(5) 推荐(0)
摘要:前言 之前也说过,工作做的开发都是基于公司现有的框架,心里很没底。所以一直想自己能够搭建出ssm框架。经过多次尝试,终于成功了。这边文章将从两个方面进行,一是框架搭建,二是简单的增删查改。 正文 1.环境搭建 这里没有采用采用现在流行的maven方式,而是将需要的jar放在web_inf\lib下面 阅读全文
posted @ 2017-01-22 22:12 oneqhw 阅读(2927) 评论(4) 推荐(2)
摘要:前言 最近比较松懈,下班回家后也懒得学习了。今晚实在是看不下去了,争取时间学习。社会上有这么多的资源,就看谁能抢的多吧。今天就说说MyBatis的动态SQL吧 正文 动态 SQL 通常要做的事情是有条件地包含 where 子句的一部分。比如: 如果这些条件没有一个能匹配上将会怎样?最终这条 SQL 阅读全文
posted @ 2017-01-13 00:29 oneqhw 阅读(422) 评论(0) 推荐(0)