web
文章平均质量分 53
菜菜思密达
这个作者很懒,什么都没留下…
展开
-
RocketMq 延时队列以及自定义实现的思路
RocketMq原创 2021-12-21 21:37:33 · 1104 阅读 · 0 评论 -
RocketMq源码阅读系列-顺序消费
RocketMq顺序消费源码阅读RocketMq顺序消费顺序消费顺序消费需要什么RocketMq顺序消费最近在做需求时候发现,有场景是需要严格的顺序消费的,比如订单需要先下单,然后取消,其他的操作,如果不是业务的正常顺序进行消费的时候,可能会出现取消的消息先被消费到,结果导致查询不到数据的情况。下面我们一起看一下什么是顺序消费。顺序消费顺序消费,表示我们可以按照业务逻辑的顺序,定制顺序,同时顺序消费分为全局顺序和局部顺序。全局顺序,一个Topic内所有的消息按照先进先出的顺序进行发布和消费。相当原创 2021-06-04 18:42:36 · 303 阅读 · 2 评论 -
blockQueue阻塞队列
阻塞队列的实现ArrayBlockingQueue 实现了BlockingQueue接口,主要的变量是 /* * Concurrency control uses the classic two-condition algorithm * found in any textbook. */ /** Main lock guarding all access */ final ReentrantLock lock; /** Condition原创 2021-01-04 16:50:08 · 173 阅读 · 0 评论 -
ConcurrentHashMap
conccunrentHashMapConcurrentHashMapput方法首先获取hash值然后判断是否已经初始化过,判断数组是否为空,然后就进行初始化,这个初始化的过程,会用一个sizeCtl的变量表示,是否有线程在初始化,如果有让出cpu的时间片,Thead.yield()sizeCtl :默认为0,用来控制table的初始化和扩容操作-1 代表table正在初始化-N 表示有N-1个线程正在进行扩容操作,m+1个线程在初始化,把sizeCtl设为长度的0.75倍,此时sizeCt原创 2021-01-03 16:39:21 · 611 阅读 · 0 评论 -
java线程池源码解析(一)
java线程池源码解析java线程池源码解析java线程池源码解析直接看一下这个execute线程池执行任务的api public void execute(Runnable command) { if (command == null) throw new NullPointerException(); /* * Proceed in 3 steps: * * 1. If fewer tha原创 2020-12-22 22:08:04 · 158 阅读 · 0 评论 -
事务是如何回滚的
先举个栗子:大家应该都用过office Word,之前一直盛传如果电脑突然断电了,文档会丢失,这个是很早的时候的问题了,现在已经解决了,我们看一下是如何解决的,当我们在编辑文档的时候,每隔一段时间,word会自动把当前的编辑记录记下来,我们可以把每一次的开始编辑作为一次事务的 Begin,每一次的保存作为事务的 Commit,不保存退出作为事务的 Rollback。之后如果正常保存后,就清除这些log,如果突然断电了,再次打开的时候软件发现有日志,就提示用户是rollback还是commit。这原创 2020-08-19 11:29:25 · 2068 阅读 · 0 评论 -
git使用(一)
git使用之前也一直在用git,只是上传和下载都在ide上进行的,最近用到了命令 小结一下吧。 git init 通过命令 git init 把这个目录变成git可以管理的仓库 git add . 把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点“.”,意为添加文件夹下的所有文件 git commit -m ‘first commit’...原创 2017-10-25 16:53:08 · 313 阅读 · 0 评论 -
redis sentinel简单记录
redis sentinel简单记录首先说一下Redis,Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(g原创 2018-02-02 17:10:00 · 1501 阅读 · 0 评论 -
git使用(二)
git 使用最近在公司中,使用git,对git的开发规范进行了一下了解,和大家分享一下,首先公司使用的是GitLab,然后进行多人协同开发,之前也使用过git,但是感觉和svn没有什么区别,可能之前自己的项目都是直接提交到master上,并没有使用分支管理。 git 分支 个人理解就是自己独立的‘master’,和其他人没有冲突的,可以自己在上面进行开发。 那么用...原创 2018-03-01 16:00:53 · 172 阅读 · 0 评论 -
mongodb 初步
mongodb 简单记录 mongodb的结构有点类似mysql 如下为其对比: mondodb mysql database database collection table document row column fieldmongodb存放的数据类似于json,叫bson 例子:db.col.in...原创 2018-03-13 16:25:39 · 228 阅读 · 0 评论 -
mongodb(二)
1、db.collection.aggregate()可以多个管道,能方便的进行数据的处理。 2、db.collection.aggregate()使用了MongoDB内置的原生操作,聚合效率非常高,支持类似于SQL Group By操作的功能,而不再需要用户编写自定义的JavaScript例程。 3、 每个阶段管道限制为100MB的内存。如果一个节点管道超过这个极限,MongoD...原创 2018-05-28 10:29:45 · 185 阅读 · 0 评论 -
flume和kafka
agent里面包含3个核心的组件:source—->channel—–>sink,类似生产者、仓库、消费者的架构。 source:source组件是专门用来收集数据的,可以处理各种类型、各种格式的日志数据,包括avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy、...原创 2018-05-28 18:38:38 · 287 阅读 · 0 评论 -
mongodb 数据迁移
今天有个需求,将测试环境的有些配置从测试环境的mongo迁移到线上环境。 首先想到类似mysql的办法,使用可视化工具进行操作,但是发现RoboMongodb不支持,在网上查了查也没有找到有合适的工具。 在搜索的过程中,找到mongodb有自己写好的轮子,不用再造轮子了。 mongodump 备份命令 生成json bson json 是表结构 bson 是表数据 具体命令:./...原创 2018-08-21 21:29:57 · 4255 阅读 · 0 评论 -
spring xsd 加载问题
spring xsd 加载问题首先spring的xml配置,在文章头部会有http://www.springframework.org/schema/beans/spring-beans.xsd 类似于这种地址。 加载顺序为: 1.首先在jar包中找,在jar中有个META-INF文件夹,其中有文件为spring.handlers·spring.schemas 文件中会将uri的xsd...原创 2018-09-10 19:03:59 · 1100 阅读 · 0 评论 -
一些常见的linux命令总结
awkawk 比grep功能更多的awk -F ‘{print $0}’ -F 加分隔符 默认 tab${0} 等于分割后的第几个元素sortsort 用于排序sort -nr 按照数字倒序排列uniquniq 用于检查及删除文本文件中重复出现的行列uniq -c 在每列旁边显示该行重复出现的次数uniq -d 显示出现次数大于一的, 可以用来查询重复行列子查询出现次数最...原创 2019-09-29 14:05:50 · 220 阅读 · 0 评论 -
shell编程(一)
shell 编程定义变量 `x=664` 在变量名.等号和值之间不能有空格输出指令 `echo` echo $x引号的区别 "" '' ""会将空格和分割都不转意,''会将值原样赋值export 将变量升为全局变量$()或`` 可以获取命令的返回值$? 表示上一个命令退出的状态$$ 表示当前进程编号$0 表示当前脚本名称$n 表示n位置的输入参数(n代表数字,n>=1)$# 表原创 2017-09-23 12:02:31 · 298 阅读 · 0 评论 -
正则表达式随笔
正则表达式最近在用hibernate validator时用到了正则表达式,随手一记。 需求是1m-2880m 所以首先将1-2880拆分为 1m-999m ^([1-9]\d{0,2}[m]) 大概说一下^匹配开始[1-9]指第一位为1-9任意数\\d{0,2}最多两位任意数[m]代表m1000m-1999m ^(1\d{3})[m] 2000m-2799m ^(2[0-7]\原创 2017-09-25 17:51:33 · 267 阅读 · 0 评论 -
idea project 报错
在编译时报错,提示:ERROR :java compilation failed :internal java compiler error 在Setting ->Compiler ->java comiler 改为对应的,即可...未完待续原创 2016-05-04 19:59:45 · 1894 阅读 · 0 评论 -
linux下的jdk和tomcat安装及配置
jdk安装及配置,tomcat配置 1.解压或安装.gz包#tar -zxvf jdk-7u9-linux-i586.tar.gz //解压后的目录如:jdk1.7.0_09//将其复制或移动到/usr目录下#mv jdk1.7.0_09 /usr2.配置环境变量#vi /etc/profile//在profile文件中 umask 022结束字符前加入export JAVA_HOME=/usr原创 2016-05-16 18:28:22 · 545 阅读 · 0 评论 -
做Echar报表的错误总结
mybatis 多个参数报错 在做select时,经常需要穿多个参数,同时进行判断 多个参数经常用#{i},i代表传入的参数位置 但是当我对mybatis进行动态语言时,报错 List<SdMealAll> selectAllByLeaderAndTime(@Param(value = "uid")String uid,@Param(value = "time") String time);这原创 2016-07-22 18:05:58 · 372 阅读 · 0 评论 -
vm 的异常
无法打开内核设备“\\.\Global\vmx86”: 系统找不到指定的文件是虚拟机服务没有开启:用管理员权限打开cmd 输入一下语句net start vmcinet start vmx86net start VMnetuserifsc config vmci=autosc config vmx86=auto转载 2016-07-27 15:35:30 · 366 阅读 · 0 评论 -
mysql sql_mode小分享
mysql sql_mode参数小节 mysql,sql实例SELECT charges,mealstime,name,sd_meal.id,fixedcharges,balancecharges,payablecharges FROM sd_meal,lcmemdata,sd_conservation WHERE sd_meal.childuid=lcmemdata.childi原创 2016-07-17 12:22:35 · 760 阅读 · 0 评论 -
spring boot 加快springmvc开发
最近接触了spring boot对其理念非常认同,spring 4.0提倡约定优于配置,spring boot对spring的配置进行简化,几乎零配置。同时对spring 需要的jar 也进行了整合,解决jar冲突的问题。下面是从spring boot 官方的开源代码,写的demo,spring boot github地址是(https://github.com/spring-projects/sp原创 2016-06-21 13:59:16 · 29519 阅读 · 0 评论 -
jsp 错误
今天在写ajax时,对其进行post请求时, serlet 转发时,前端获取不到页面但是在浏览器中调试时,发现有页面的返回值是整个jsp,想了好久,发现是serlet的转发被当成ajax的返回值了 so,随笔一记,以后避免!!!!原创 2016-11-01 19:54:26 · 241 阅读 · 0 评论 -
SSL证书和spring boot的配置
Https配置和spring boot的使用Https配置和spring boot的使用生成ssl证书创建spring boot项目http转到https配置生成ssl证书首先了解一下ssl证书,在B/S中SSL是使用https协议来实现的 那么在使用SSL时,首先需要证书 在java环境下,查看JAVA_HOME/bin 中的keytool.exe是一个证书管理工具,可以用来生成自签原创 2016-11-23 18:20:41 · 12246 阅读 · 0 评论 -
webservice (一)
最近在写项目时,用到了webservice,顺便学了一下,略有感想,在此分享。 webservice 是可以跨平台的,跨语言的,用http和xml规范的对不同系统进行协调,合作的通讯技术。 比如,幼儿园的管理系统是.net编写的,但是我们现在要在加一个财务管理系统,由于我是java开发的,因此产生跨语言,跨平台的问题。 而webservice正是应用于此,webservice是用http协议,原创 2016-12-10 00:37:42 · 386 阅读 · 0 评论 -
webservice(二)
上次写到我们生成xml,我们想到xml要是可以生成接口不就是可以实现了吗,那我们试一下! 如图所示,wsimport -s +保存地址 -p 包名 +wsdl文档url 生成了一些java类 这时我们可以直接用MyServiceImpl生成接口 webClient.javapackage test;import javax.xml.namespace.QName;import ja原创 2017-02-26 23:06:46 · 275 阅读 · 0 评论 -
nginx简单配置
nginx +tomcatnginx 是web应用服务器,作为高性能服务器,拥有许多功能,反向代理,静态化,负载均衡等 今天实现对静态文件的配置 用nginx对请求进行处理,tomcat负责后台业务逻辑 首先,在linux安装nginx yum install nginx service nginx start 然后对nginx进行配置vim /etc/nginx/conf.d/def原创 2017-06-19 22:00:21 · 344 阅读 · 0 评论 -
spring boot+mybatis+freemarker
之前写过一篇spring boot简单入门介绍,没想到访问量这么多,今天我就继续了! 不说废话,上代码! application.properties配置文件logging.level.com.peng.demo=debuglogging.level.org.springframework=debugserver.port=8990spring.datasource.type=com.ali原创 2017-06-19 22:20:58 · 4114 阅读 · 1 评论 -
tomcat 8.5部署报错
tomcat 8.5.4部署报错最近在服务器部署时,使用了tomcat 8.5,结果把war包一放上去,启动就报错,大概是-Xmx大小配置的问题,在网上找了一下,改了却发现tomcat8.5不支持,后来找到了解决办法. 在/bin路径下新建setenv.sh 并配置JAVA_HOME=/usr/lib/jvm/java-1.8.0/export JAVA_OPTS="-server -Xms5原创 2017-06-19 22:36:14 · 1972 阅读 · 1 评论 -
spring boot dubbo 简单例子
spring boot dubbo demo首先spring boot简化了spring的配置,方便使用,写一下spring boot dubbo 的整合的文章。先下载zookeeper,然后解压就行。在这个目录,双击zkServer.cmd就行。linux的用命令行./zkServer.sh start 上代码前,介绍一下dubbo DUBBO是一个分布式服务框架,致力于提供高性能和透明化原创 2017-07-24 16:11:05 · 5021 阅读 · 3 评论 -
grid刷新
今天做很二的事,data.success没有返回值,我还是说代码有问题,删除后不能刷新,希望给予大家警示原创 2016-03-23 20:03:44 · 447 阅读 · 0 评论