- 博客(37)
- 资源 (1)
- 收藏
- 关注
原创 Was已启动web应用但是端口未监听
当设置为 true 时,意味着所有过滤器将在 Web 应用程序启动时立即初始化,而不是等到它们第一次被请求时才初始化。• 性能影响: 设置为 true 可以减少首次请求时的延迟,因为过滤器已经在启动时初始化了。然而,这也意味着每次应用程序启动时,所有过滤器都会被初始化,可能会增加启动时间和资源消耗。总的来说,这个配置项是一个权衡启动时间和运行时性能的选项,具体设置应根据应用程序的需求和环境来决定。• 适用于: 当需要确保所有过滤器在应用程序启动时已经准备好,以避免首次请求时的延迟时。
2025-03-14 17:31:47
423
原创 Java命令
2、jstack:打印线程的栈信息,制作线程dump文件。3、jmap:打印内存映射,制作堆dump文件。6、jconsole:简易的可视化控制台。7、jvisualvm:功能强大的控制台。1、jps:查看本机java进程信息。4、jstat:性能监控工具。5、jhat:内存分析工具。
2025-03-01 02:07:02
259
原创 Servlet生命周期
Servlet的生命周期分为5个阶段:加载、创建、初始化、处理客户请求、卸载。(1)加载:容器通过类加载器使用servlet类对应的文件加载servlet。(4)处理客户请求:每当有一个客户请求,容器会创建一个线程来处理客户请求。(5)卸载:调用destroy方法让servlet自己释放其占用的资源。(2)创建:通过调用servlet构造函数创建一个servlet对象。(3)初始化:调用init方法初始化。
2025-02-24 23:09:12
122
原创 Jvm内存的三个区:堆,栈,方法区
jvm只有一个堆区(heap)被所有线程共享,堆中不存放基本类型和对象引用,只存放对象本身,几乎所有的对象实例和数组都在堆中分配。每个线程包含一个栈区,栈中只保存方法中(不包括对象的成员变量)的基础数据类型和自定义对象的引用(不是对象),对象都存放在堆区中。又叫静态区,跟堆一样,被所有的线程共享。存储的全部是对象实例,每个对象都包含一个与之对应的class的信息(class信息存放在方法区)。JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)
2025-02-23 02:45:35
109
原创 Jvm参数
XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。-XX:NewRatio=n:设置年轻代和年老代的比值。如:为3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4。-XX:ParallelGCThreads=n:设置并发收集器年轻代收集方式为并行收集时,使用的CPU数。-XX:ParallelGCThreads=n:设置并行收集器收集时使用的CPU数。-XX:GCTimeRatio=n:设置垃圾回收时间占程序运行时间的百分比。公式为1/(1+n)
2025-02-23 01:15:26
263
原创 Flink 爬坑【1】job的增删与taskmanager节点异常
job新增推荐通过webUI把打包好的jar包丢上去,这里的好处是可以显式的指定参数非常方便。当然你直接在服务上丢也是ok的job取消方法1 webui取消选中你要取消的job 跳转详情页面Cancel Job 就行方法2 后台取消进入flink安装目录下的 bin 目录先看有哪些job./flink list找到要取消的./flink cancel 1fcd23976ccd490fc67ccf58d1deab29注意这里的取消是取消整个集群的job,且不能恢复
2022-04-24 17:32:51
2558
原创 Linux 常用命令
打印日志tail -f /data/logs/third_party_parking_platform/third_party_parking_platform-web.logtail -f /data/logs/city_brain_guide_service-prod-hr/common-error.log压缩解压查找tar -zcvf barrier_gate_system.tar.gz --exclude=barrier_gate_system/node_modules barrie
2022-03-25 17:19:49
2986
原创 PostgreSQL【爬坑】常见问题
慢sqlselect datname, usename, client_addr, application_name, state, backend_start, xact_start, xact_stay, query_start, query_stay, replace( query, chr(10), ' ' ) as query from (select pgsa.datname as datname, pgsa.usename as usename, pgsa.clie
2022-03-25 16:11:04
1534
原创 nodejs 密码校验
let baseStr = ['1234567890','qwertyuiop','asdfghjkl','zxcvbnm','!@#$%^&*()','QWERTYUIOP','ASDFGHJKL','ZXCVBNM'];function testContinuousPassword(str){ var flag = false; var strArray = str.split(''); var strlength = str.length for(let
2022-03-23 17:30:27
1104
原创 nps 轻量化内网穿透工具
项目需要上下游系统交互,但下游系统没有固定出口IP没有域名。固定IP成本高,花生壳等第三方工具不可靠,需要部署一套自己的内网穿透工具。大佬推荐 nps,优点是使用简单开源GitHubhttps://ehang-io.github.io/nps/#/使用起来很方便,分为服务端和客户端服务端端口不占用情况下,解压即可使用,支持Linux和win。三种安装方式可选推荐docker安装后拉起web界面就可以开始配置使用了客户端下载对应包解压就完成安装。参数在客户端的 +号显示
2022-02-17 09:51:44
722
原创 pgsql中polygon用法
```sqlSELECTpl.id,(select district from (SELECT(SELECT string_agg(label,', ') from (SELECT unnest(points_arr) "label")L) as polygon,block.district as districtFROMblock)b where b.polygon::POLYGON @> CAST ( '(' || pl.longitude::VARCHAR || ',' ||.
2022-02-14 15:26:16
1367
原创 PostgreSQL 慢查询SQL跟踪操作及解决方案
生产案例随着数据量的增加,数据库cpu占用爆炸,直接100%导致服务崩溃。原因居然是一个简单的 update 语句。赶紧定位问题简单流程如下:定位问题库 > 读库 or 写库查看连接数。CPU利用率到达100%,首先怀疑,是不是业务高峰活跃连接陡增,而数据库预留的资源不足造成的结果。我们需要查看下,问题发生时,活跃的连接数是否比平时多很多。排除连接数激增与读写库挂掉的可能。所以只能是慢sql占用资源定位是否频繁读写造成select * from pg_stat_user_tab
2022-01-26 09:26:43
7533
原创 pg 正则
-- 首字中文plate_no ~'^[\u2e80-\ua4cf]|[\uf900-\ufaff]|[\ufe30-\ufe4f]'
2021-11-05 11:28:46
280
原创 pg中 on conflict 使用与爬坑
mark一下on conflict 用法真的很方便,不存在就插入,存在可以更新 可以do nothing,就是用起来要注意几点:字段必须完全同名。试了半天不行,改了同名就行。拿不到原表的内容。退而求其次用原表做一个内连接就行,取原值然后想怎么玩都行。下面这个例子就是取原值并加上新统计值更新回原表。建临时表可以加入很多自己需要的内容,操作空间更大excluded代表新选择出来的内容。 insert into plate_no_info select plate_no,total_orde
2021-11-05 11:10:16
4385
原创 Sequelize 爬坑【3】and or 互相嵌套
and 嵌套 or 查询 let user = await model.PublicUser.findAll({ where: { [Op.and]: { [Op.or]: { name: { [Op.substring]: value }, mobile: { [Op.substring]: value } }, deleted:
2021-08-03 16:43:35
294
转载 sequelize 爬坑【2】 Op 相关操作合集【转】
const Op = Sequelize.Op[Op.and]: {a: 5} // AND (a = 5)[Op.or]: [{a: 5}, {a: 6}] // (a = 5 OR a = 6)[Op.gt]: 6, // > 6[Op.gte]: 6, // >= 6[Op.lt]: 10, // < 10[Op.lte]: 10, //
2021-07-23 12:25:29
527
原创 pg 时间查询方法及构造条件
时间查询select * from table where 1=1and ( (''=${start_date} and ''=${end_date}) or (''<>${start_date} and ''=${end_date} and to_char(sta_date,'yyyy-MM-dd')>=${start_date} ) or (''=${start_date} and ''<>${end_date} and to_char(sta_date,'
2021-07-22 17:03:08
3125
原创 Sequelize 爬坑【1】or aggregate order
Sequelizeor 查询正确用法where: { [Op.or]: [ { name: { [Op.substring]: where.rules[i].value }, }, { mobile: { [Op.substring]: where.rules[i].value }, } ]}aggregate 合并查询let user = await model.
2021-06-29 16:16:01
335
原创 nodejs里json按key大小或小写排序
碰到一个奇葩对接方,json数据要先转小写排序,在转回来加密。查了半天没有现成的,动手写一个。核心就是全转大写或小写,排序后再根据原来发生变化的部分进行替换,完美解决小写function sortJsonByLowkey(json_obj) { let arr = []; let j let origin = [] let result for (let i in json_obj) { j = i.toLowerCase(); if (j != i) origin
2021-04-02 15:42:21
848
原创 Python爬虫入门【2】几种简单的防爬方法
Python爬虫入门【2】headers随机间隔IP代理池记录一下常用的几种反爬方法。headers具体应该说是headers中的User-Agent,通过构建agent池来模拟不同浏览器访问,以达到反爬的作用。简单方法如下user_agent_list = [ "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.111 Safari/537.36
2021-03-28 17:36:03
513
原创 nodejs中url转base64图片【同步方式】
百度一下 nodejs url转base64 出来一片里面基本上都是这种方法var http = require('http'); var url = 'http://thirdwx.qlogo.cn/mmopen/BEMV4WOAicktAAllnv9FdJFSU7QYVibMU62ctg7Ie5HiaCuDVCyiapibwrs48N97yrzLel03FvOUqAHEZGfBY5tCdnuHKEg4YvZSC/132'; //一张网络图片 http.get(url, function
2021-03-25 09:15:24
2182
原创 KOA中log4js定义等级
输入太多日志太烦了,引入log4js模块。计划是在测试的时候输出debug等级,等到生产了就输出error等级。但是在做测试的时候发现不行,代码如下我在router下某个js文件头定义了log4s// router.jsconst log4js = require('log4js');logger = log4js.getLogger()logger.level = 'ALL'想着这里打印ALL,其他打印ERROR但是失败了,无论如何修改都不生效。原来KOA中log4js的设置要在app.js
2021-03-25 08:55:22
289
原创 ORM框架 Sequelize 恢复软删除的记录 restore
led_schedule = await model.LedSchedule.restore({ where: { id: { [Op.eq]: origin[n].id } } });
2021-03-19 17:57:37
927
原创 Python爬虫入门【1】
Python爬虫入门1爬虫基础工具抓取页面爬虫基础工具anaconda + juypter是的,就是这么简单粗暴,anaconda 去清华大学镜像站下载,速度max抓取页面from bs4 import BeautifulSoupimport requestsurl = 'www.sohu.com'headers={'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, lik
2021-03-08 23:38:00
154
1
原创 sequelize中的hooks 及association使用及爬坑
nodejs的orm模块sequelize功能很强大也很深奥,记录下今天使用hooks 及 association遇到了几个坑。hooks:顾名思义就是钩子,简单的理解为可以定义相关动作后的关联动作association: 关联,显式的指定该模型的关联关系。个人觉得 ORM 最大的问题就是关联查询及其复杂,反人类简直。有了 association 就可以显式的指定关联,方便查询。定义modle在定义modle的时候还比较容易,只需要在正常的定义后面加上 hooks 和 association 部
2021-02-25 10:12:46
912
原创 nodejs 字符串转数组
let content="[{“msgid”:“caff268a9b094da093420fdcbb183876”,“srcphone”:“111”,“dstphone”:“73262”,“message”:“2”,“logtime”:“20201125161347”}]";console.log(typeof(content));//输出stringlet contentArr= eval(content);console.log(typeof(contentArr));//输出object..
2020-11-26 09:44:37
2848
原创 PostgreSQL中json中含数组的查询
有些json串中的内容比较复杂,包含数组类数据,这样查询起来非常费事,可以用一下方法select json_array_elements(lv_num_json)->'lv' lv,json_array_elements(lv_num_json)->'num' num from (select '[{"lv": 8, "num": 1}, {"lv": 9, "num": 10}]'::json lv_num_json)as t1可以看到 ‘[{“lv”: 8, “num”: 1},
2020-08-14 11:29:42
8298
1
转载 urlencode中的空格编码%20或者+
转转转,为了提醒自己,侵删https://www.cnblogs.com/zhengxl5566/p/10783422.htmlURL中的空格有时候被编码成%20,有时候被编码成加号+,曾经迷糊过一段时间,后来查了下资料才搞明白。一个URL的基本组成部分包括协议(scheme),域名,端口号,路径和查询字符串(路径参数和锚点标记就暂不考虑了)。路径和查询字符串之间用问号?分离。例如http://www.example.com/index?param=1,路径为index,查询字符串(Query Str
2020-07-30 15:59:35
3472
原创 pg里json串的查询方法
一直搞不懂pg里json串的查询问题 -> 和 ->> 的区别搬运工,原文地址如下(侵删)https://blog.youkuaiyun.com/vermouthchow/article/details/83350730查询json串中的json串select deal_param->'p'->'attributes'->>'orderNo' from table where deal_param->'p'->'attributes'->>'
2020-07-03 16:54:39
1528
原创 nodejs中axios爬坑
axios是一个nodejs的请求工具,功能强大,同时。。也有很多坑,记录下自己爬过得坑axios 中的基础用法res = await axios({ url: 'http://url/inteface', method: 'post', data: data, params:params});`url 接口地址 method 方法(ps:axios支持很多 不过最常用的就是 get post)data是post带过去的
2020-07-02 10:53:50
5332
1
原创 pgsql分区表及多级分区表
pg支持从逻辑上将一个实体表分割成多个表,这样在增删改查的时候直接从对应分区表中执行,效率极高建立分区表例子CREATE TABLE order_list( id VARCHAR(64), created_at timestamptz, updated_at timestamptz, parking_type VARCHAR(32), away_type VARCHAR(32), ...
2020-03-13 17:11:06
4398
原创 Sequelize中AND和OR条件查询及其嵌套查询的使用方法
Sequelize中ANDwhere: { parking_lot_id: { [Op.eq]: parking_lot_id }, port_no: { [Op.eq]: port_no }, name: { [Op.eq]: name }}where: { [Op.and]: [ { parking_lot_id: { [Op.eq]:...
2020-03-06 11:56:16
3874
转载 Python中时间格式化(转载)
本文转自:https://www.cnblogs.com/cxmo/p/10561808.html本文转自:https://www.jb51.net/article/62518.htm本文实例总结了python中日期和时间格式化输出的方法。分享给大家供大家参考。具体分析如下:python格式化日期时间的函数为datetime.datetime.strftime();由字符串转为日期型的函数为...
2020-02-25 08:52:52
803
原创 python 获取二进制图片数据及判断得到图片类型
只要一个包 imghdrimport imghdrimgtype = imghdr.what('/tmp/bass.gif')imgtype = imghdr.what(None, data)完美解决
2020-02-23 19:58:46
2577
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人