- 博客(81)
- 资源 (39)
- 收藏
- 关注
原创 SpringBatch从入门到精通-3.3-并行处理(消息聚合)
上章讲到了并行处理-远程分区相关内容。但远程分区还是讲的不够细。今天分析一下消息聚合模式。消息是如何聚合的。SpringIntegration分区方式任务拆分原理SpringIntegration相关概念生产者是如何聚合完成状态的分区的关键参数。最后以不同ExecutionContext在不同的分区执行。executionContext 存在数据库中1.消息发送(MessageProducerSupport.send)2.接收work消息方式(1.从数据库查询的方式 2.接收反馈replies消息的形式)
2022-06-08 23:28:06 1028
原创 SpringBatch从入门到精通-3-并行处理
1.背景许多批处理问题都可以通过单线程、单进程作业来解决,因此在考虑更复杂的实现之前,最好先检查这些作业是否满足您的需要。衡量一份现实工作的表现,首先看看最简单的实现是否满足您的需求。即使使用标准硬件,您也可以在一分钟内读写数百MB的文件。2.并行处理Spring Batch提供了一系列选项,本章对此进行了描述,尽管其他地方介绍了一些功能。在较高级别上,有两种并行处理模式: 单进程、多线程 多进程 这些也可分为以下几类: 多线程步骤(单进程) 并行步骤(单进程
2022-05-30 23:13:54 2026
原创 SpringBatch从入门到精通-1
spring batch简介 Spring Batch架构介绍 Spring Batch核心概念介绍 chunk 处理流程 spring batch简介spring batch是spring提供的一个数据处理框架。企业域中的许多应用程序需要批量处理才能在关键任务环境中执行业务操作。这些业务运营包括: 自动化、复杂地处理大量信息,无需用户交互即可最高效地处理这些信息。这些操作通常包括基于时间的事件(例如月末计算、通知或通信)。 定期应用..
2022-05-26 00:27:27 564
原创 批处理框架之SpringBatch简介
Spring Batch是一个轻量级的、完善的批处理框架,作为Spring体系中的一员,它拥有灵活、方便、生产可用的特点。在应对高效处理大量信息、定时处理大量数据等场景十分简便。结合调度框架能更大地发挥Spring Batch的作用一、Spring Batch的概念知识1.1、分层架构Spring Batch的分层架构图如下:可以看到它分为三层,分别是: Application应用层:包含了所有任务batch jobs和开发人员自定义的代码,主要是根据项目需要开发的业务流程..
2022-05-24 23:44:54 4898 1
原创 api网关介绍
1.什么是网关API网关是一个系统的唯一入口。是众多分布式服务唯一的一个出口。它做到了物理隔离,内网服务只有通过网关才能暴露到外网被别人访问。简而言之:网关就是你家的大门2.提供了哪些功能身份认证(oauth2/jwt)权限安全(黑白名单/爬虫控制)流量控制(请求大小/速率)数据转换(公共请求request/response)监控/metrics跨域问题(前后端分离)灰度发布(金丝雀发布/一部分去老客户端/一部分去新客户端)3.市面上有哪些比较好的开源网关OpenRest.
2022-05-17 22:54:06 350
原创 Typora + Gitee 配置图床_图片自动上传教程
一、创建 Gitee 仓库进入 Gitee 官网 注册一个属于自己的账号,点击创建仓库并且设置为开源。一定要是开源的public。只有这样你的图片才能被别人访问到。二、设置私人令牌进入个人设置-->选择私人令牌进行创建-->设置自己的私人令牌-->记下自己创建的令牌,不能忘了。后边有用到这个token三、下载 PicGo打开 Typora,进入:偏好设置 --> 图像,进行如下设置点击 下载 PicGo 后,会打开如下界面,点击下载四、配置 PicGo打开 Pic
2022-05-16 00:21:43 555 1
原创 myql相关
1.Bin log是什么,有什么用?(数据库被人干掉了怎么办?)1.bin Log: 数据恢复 主从复制MySQL Server 层也有一个日志文件,叫做 binlog,它可以被所有的存储引擎使用。bin log 以事件的形式记录了所有的 DDL 和 DML 语句(因为它记录的是操作而不是数据值,属于逻辑日志),可以用来做主从复制和数据恢复。凌晨1点钟全量备份 程序员 1点---9点钟 10点钟 数据文件全部删掉了 恢复1点钟 恢复到9点钟 数据恢
2022-05-15 23:04:19 124
原创 java多线程相关
一、线程的状态?1、新建状态:new一个线程,没还有start2、运行状态(就绪和运行):调用线程的.start方法 1)就绪,调用了start方法,CPU没有分配时间片 2)运行,调用了start方法,CPU正在调度3、阻塞状态:当竞争synchronized锁时,没拿到,线程挂起4、等待状态:join,wait,(LockSupport)park方法5、超时等待状态:Thread.sleep(long),wait(long),join(long),parkNanos(……)6
2022-05-13 23:58:51 179
原创 mysql中innodb创建表的一些限制
1、 背景在新创建mysql数据表的时候。不太确定表能创建多少个字段,多少个索引。索引多少有限制么?mysql的数据是怎么存储的存在在哪里。2、基本个数限制在MySQL5.6.9以后的版本,一个表的最大列个数(包含虚拟列,虚拟列是MySQL5.7的新特性)为1017,在之前的版本是1000一个表的最大索引数量(非主键索引)为64个复合索引最多可以包括16个列,超过会报错:ERROR 1070 (42000): Too many key parts specified; max 16 parts
2022-05-11 17:40:28 837
原创 记一个七牛云生成图片水印的问题
1.首先七牛云生成图片是没问题的2.但诡异的是当图片上水印的文字很长的时候,就会涉及到换行问题。换行呢。有主动换行和被动换行。主动换行:是我们自主把文字按照一定长度切换成两组文字然后赋值到图片上。 被动换行:就是今天我们遇到的问题,图片加水印然后线上环境app端图片都不显示了。但看后台数据图片是有内容的。在pc端也是能看到的。 图我就不截了。 用户看到的现象是:图片打不开了 程序员...
2019-09-21 16:34:19 798
原创 Rust 学习一之环境安装
1.社区https://rustlang-cn.org/2.环境安装windows 下载地址https://www.rust-lang.org/install.html下载完之后》rustup-init.exe直接安装走默认的就可以了安装完之后看看 版本,确定下是否安装成功了rustc --version我安装完,报错了no default toolchain ...
2019-09-21 16:09:49 622
原创 来来scrapy爬取各大网站每日热点新闻
一.背景最近玩爬虫,各种想爬,scrapy又非常好用。想多爬一点东西,决定爬一爬各大网站的热点新闻。想到就开始做了哈二.上代码1.开始搭建项目scrapy startproject crawl_everything #起了个叼叼的名字2.修改配置文件settings.py设置文件:ROBOTSTXT_OBEY = False# 下载延时DOWNLOAD_D...
2019-09-20 14:55:53 3056
转载 Java虚拟机(JVM)你只要看这一篇就够了!垃圾回收器(2)
2.5 垃圾回收器收集算法是内存回收的理论,而垃圾回收器是内存回收的实践。说明:如果两个收集器之间存在连线说明他们之间可以搭配使用。2.5.1 Serial 收集器这是一个单线程收集器。意味着它只会使用一个 CPU 或一条收集线程去完成收集工作,并且在进行垃圾回收时必须暂停其它所有的工作线程直到收集结束。2.5.2 ParNew 收集器可以认为是 Serial ...
2019-09-17 23:29:04 413
转载 Java虚拟机(JVM)你只要看这一篇就够了(1)
1. Java 内存区域与内存溢出异常1.1 运行时数据区域根据《Java 虚拟机规范(Java SE 7 版)》规定,Java 虚拟机所管理的内存如下图所示。1.1.1 程序计数器内存空间小,线程私有。字节码解释器工作是就是通过改变这个计数器的值来选取下一条需要执行指令的字节码指令,分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖计数器完成如果线程正在执行一个 J...
2019-09-17 23:27:47 146
转载 实战1爬取百度贴吧图片jackssybin
1,目标:爬取贴吧每一贴,楼主图,并保存。由于图片大多是楼主发的,如果全部查找会浪费很多时间。2,分析我选择爬取的贴吧为图吧,你们可以选择自己想要爬取的贴吧。2.1,获取页面我们将爬取页面的代码写成一个get_html()方法,给他传入url参数代码如图:获取正常,没问题。我们用chrome的开发者模式来分析每个贴的连接,用定位定位一个帖子,这样方便我们快...
2019-09-17 22:12:19 164
原创 python3.6 安装pyCrypto 问题
python3.6已经不支持pyCrypto!!!不用费尽心思去尝试,修复了。 git问题地址:https://github.com/dlitz/pycrypto/issues/237 解决方法:https://github.com/Legrandin/pycryptodome 程序运行正常...
2018-06-11 17:02:42 2389
原创 python3.6 安装pyCrypto
python3.6已经不支持pyCrypto!!!不用费尽心思去尝试,修复了。 git问题地址:https://github.com/dlitz/pycrypto/issues/237 解决方法:https://github.com/Legrandin/pycryptodome 程序运行正常...
2018-06-11 16:47:20 520 1
原创 一个故事讲清楚NIO(转载)
假设某银行只有10个职员。该银行的业务流程分为以下4个步骤:1) 顾客填申请表(5分钟);2) 职员审核(1分钟);3) 职员叫保安去金库取钱(3分钟);4) 职员打印票据,并将钱和票据返回给顾客(1分钟)。 我们看看银行不同的工作方式对其工作效率到底有何影响。1 BIO方式 每来一个顾客,马上由一位职员来接待处理,并且这个职员需要负责以上4...
2015-10-22 11:32:24 157
原创 项目周期细化工作量
[img]http://dl2.iteye.com/upload/attachment/0098/9050/40efb0ea-b85d-353f-ac4f-a77ef18e5cb3.png[/img]
2014-07-08 20:29:31 234
原创 struts2动态生成zip文件并下载
功能:zip文件下载 简述: 1.根据画面上的复选框进行文件打包下载 2.待下载文件保存在服务器的硬盘上,打包过程中不生成临时文件 3.打包过程中需要动态创建一个txt文件一并打进zip包中 4.页面上没有文件被选择的场合,按下【下载】按钮后,什么都不做(不刷新页面) 部分内容参考自互联网,如果错误,欢迎指正。Struts配置文件 ...
2013-10-18 14:55:22 185
原创 一些数据库自定义函数
oracle 写法:--联系人列表 create or replace function func_contactlist(project_in in number) --查询条件 return varchar2 is str_list varchar2(4000) default null; --连接后字符串 str varchar2(20) default n...
2013-10-15 21:42:31 116
原创 pring的AbstractCommandController简单例子
(引自Spring in Action -- 命令控制器(如AbstractCommandController,BaseCommandController),通过将请求参数绑定到命令对象来简化请求的处理。请求参数可以通过URL参数或Web表单字段得到。尽管命令控制器可以处理表单输入,Spring还是提供了另一种可以为处理表单提供更好支持的控制器。下面,让我们来介绍Spring的表单控制器(如Abs...
2013-09-10 10:44:48 184
原创 Spring架构增强MultiActionController
Spring架构增强MultiActionController 在使用Spring提供的控制器时,AbstractController和SimpleFormController是应用得最多的。AbstractController是最基本的Controller,可以给予用户最大的灵活性。SimpleFormController则用于典型的表单编辑和提交。在一个需要增,删,改,查...
2013-09-03 21:09:16 94
原创 js一些菜单例子
JS树 录结构菜单 演示地址: http://vip.5d.cn/flood/myjs/htm/menu/dir1.htm简单树型菜单 演示地址: http://vip.5d.cn/flood/myjs/baoku/0035.htm经典树型菜单 演示地址: http://vip.5d.cn/flood/myjs/htm/menu/content.htm顶部滑动菜单 演示地址: ht...
2012-12-03 15:21:25 106
原创 Servlet.service() for servlet jsp threw exception,NullPointerException
2011-7-28 2:09:33 org.apache.catalina.core.ApplicationDispatcher invoke严重: Servlet.service() for servlet jsp threw exceptionjava.lang.NullPointerException at org.apache.jsp.pages.mis.storeadmin_...
2012-10-09 17:07:47 212
原创 db2临时表
----start 临时表(TEMPORARY TABLE)通常应用在需要定义临时集合的场合。但是,在大部分需要临时集合的时候,我们根本就不需要定义临时表。当我们在一条SQL语句中只使用一次临时集合时,我们可以使用嵌套表表达式来定义临时集合;当我们在一条SQL语句中需要多次使用同一临时集合时,我们可以使用公共表表达式;只有当我们在一个工作单元中的多条SQL语句中使用同一临时集合时,我...
2012-09-27 17:11:44 905
原创 如何远程连接db2数据库
在DB2数据库中,编目(catalog)这个单词很难理解,我自己当初在学习DB2的时候也常常被这个编目搞的很不明白,直到现在我个人也感觉到DB2中编目(catalog)这个术语用的不是很好,具体来说编目有编目节点,编目数据库等。 如果要理解编目,我先简单讲一下DB2数据库的体系结构,在DB2数据库中最大的概念是系统(节点)也就是主机,下面是实例,实例下面是数据库,然后是表空间,然后是数据库...
2012-09-18 10:10:37 261
原创 [转]DB2行列转换
行转列给出下面的数据:CREATE TABLE Sales (Year INT, Quarter INT, Results INT)YEAR QUARTER RESULTS----------- ----------- ----------- 2004 1 20 2004 2 ...
2012-09-13 13:15:14 145
原创 存储过程 入门
示例说明:先创建一个临时表,并插入数据,然后查询临时表,返回游标。 create procedure testPrc() -- 返回一个纪录 dynamic result sets 1-------------------------------------------------------------------------- sql 存储过程 ------...
2012-09-07 09:49:25 88
原创 ue使用的一些小技巧
1. UE里面替换tab键为空格 解决使用UE编辑好且排列整齐的文件在EditPlus中错位的问题。 对于已有的带有tab键的空格,若需要将tab键转换为空格,可使用如下方法: 1)使用查找替换功能(Ctrl+R),^t 表示tab,在出现的窗口中的“查找(N)”输入:^t ,“替换为(P)”输入四个空格,全部替换即可。 2)中文是 工具栏“格式”-...
2012-09-05 11:36:41 346
原创 DB2 公共表表达式(WITH语句的使用)
说起WITH 语句,除了那些第一次听说WITH语句的人,大部分人都觉得它是用来做递归查询的。其实那只是它的一个用途而已,它的本名正如我们标题写的那样,叫做:公共表表达式(Common Table Expression),从字面理解,大家觉得它是用来干嘛的呢?其实,它是用来定义临时集合的。啊?VALUES语句不是用来定义临时集合的吗?怎么WITH语句也用来定义临时集合呢?它们有什么区别呢?V...
2012-09-04 16:31:14 186
原创 ext tree 更改图标
如果在Java代码中树的Node不设置cls的话,Extjs Tree默认的图标是Folder类型的,可以通过CSS来更改图标。位置在ext\resources\css\ext-all.css.在css文件中找到.x-tree-node-collapsed .x-tree-node-icon{background-image:url(../images/default/tree/f...
2012-04-16 23:11:16 376
原创 Ext.data.Store使用示例
Ext.data.Store是EXT中用来进行数据交换和数据交互的标准中间件,无论是Grid还是ComboBox,都是通过它实现数据读取、类型转换、排序分页和搜索等操作的。 Ext.data.Store中有一个Ext.data.Record数组,所有数据都存放在这些Ext.data. Record实例中,为后面的读取和修改操作做准备。一、基本应用 在使用之前,首先要创建...
2012-04-16 20:34:18 112
原创 js六种数据类型和var
JavaScript 有六种数据类型。主要的类型有 number、string、object 以及 Boolean 类型,其他两种类型为 null 和 undefined。 String 字符串类型:字符串是用单引号或双引号来说明的。(使用单引号来输入包含引号的字符串。)如:“The cow jumped over the moon.”数值数据类型:JavaScript 支持整数和浮点...
2012-04-13 14:32:47 1019
原创 ExtJs 控制复选框disabled
var csm2 = new Ext.grid.CheckboxSelectionModel({ //如果group为1的 为组角色选中,不让修改 renderer:function(v,c,r){ if(r.get("disabled")){ ...
2012-04-13 14:12:18 721
原创 JS 四舍五入
写法巨强的四舍五入的转换函数,如下:function round(v,e){var t=1;for(;e>0;t*=10,e--);for(;e
2012-04-10 23:36:24 100
原创 Ext el属性
这个是你要将你的组件渲染到哪个div比如有个组件里el:grid_test,就是把这个组件放到上面那个div里 el和contentEl、id这些属性的区别:el是生成的id;如果用了el,它会解析一下html里的元素。contentEl是包含的内容;id是给这个组件设置的id;如果只用id,它还是创建组件,最后让这个组件的id等于你设置的id而已。...
2012-04-10 23:08:22 98
原创 getOutputStream() has already been called for this response
getOutputStream() has already been called for this response 这个错误遇到过不少次,网上看到大多不能解决问题。 下面两点是我自己总结出来的: 1、在我们应用验证码时,都会用到字节流response.getOutputStream()来将验证码输出,但是jsp页面自己最后会调用字符流JspWriter的out()方...
2012-04-06 17:33:06 94
原创 修改TOMCAT(5.5版本前)内存的方法
Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,轻微时,会使系统性能急剧下降,严重时,将导致系统无法运行,影响系统的稳定性。当内存不够用时,常见的问题就是报tomcat内存益处错误,从儿导致客户端包500错误的,如下: 当用户执行一个大数据的应用时,系统会提示出错:前台错误为:HTTP Status 500-Dispatc...
2012-03-30 11:34:50 324
掌中蝶功能介绍,hand123最新手机助理
2009-07-10
java版本开发的微信支付项目
2016-05-18
银行业务模拟 数据结构(c++)
2010-04-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人