# 图片回复
强引用,软引用,弱引用,虚引用
nohup java -jar robot-0.0.1-SNAPSHOT.jar > robotMsg.log 2>&1 &
你机器人在哪呢?
# 图片回复
# 图片回复
看日志啊
美团的脚本拉了一个 怎么不跑呢
# 图片回复
https://www.aliyundrive.com/s/3DDUbR1TS67
很方便
# 图片回复
有没有人推荐几个好用脚本
敢问这是什么剑法
# 图片回复
首页
工具
留言板
关于
Search
1
青龙挂某手极速版,某条极速版,饿了么,美团脚本!
6,288 阅读
2
IOS免越狱自签教程!
3,955 阅读
3
IOS微信无需越狱导入自己喜欢的语音包!
1,941 阅读
4
删除mysql表卡死 , 打不开,一直转圈圈
1,700 阅读
5
搭建青龙面板跑定时任务!
1,392 阅读
JAVA
面试
前端
Python
易语言
其他
登录
Search
尼采
累计撰写
61
篇文章
累计收到
19
条评论
今日撰写
0
篇文章
首页
栏目
JAVA
面试
前端
Python
易语言
其他
页面
工具
留言板
关于
用户登录
登录
搜索到
45
篇与
JAVA
的结果
2021-09-28
同样是键值对形式,为什么要用redis而不用map做缓存?
缓存分为本地缓存和分布式缓存。以java为例,使用自带的map或者guava实现的是本地缓存,最主要的特点是轻量以及快速,生命周期随着jvm的销毁而结束,并且在多实例的情况下,每个实例都需要各自保存一份缓存,缓存不具有一致性。使用redis或memcached之类的称为分布式缓存,在多实例的情况下,各实例共用一份缓存数据,缓存具有一致性。缺点是需要保持redis或memcached服务的高可用,整个程序架构上较为复杂。详细的区别:1、Redis 可以用几十 G 内存来做缓存,Map 不行,一般 JVM 也就分几个 G 数据就够大了2、Redis 的缓存可以持久化,Map 是内存对象,程序一重启数据就没了3、Redis 可以实现分布式的缓存,Map 只能存在创建它的程序里4、Redis 可以处理每秒百万级的并发,是专业的缓存服务,Map 只是一个普通的对象5、Redis 缓存有过期机制,Map 本身无此功能6、Redis 有丰富的 API,Map 就简单太多了
2021年09月28日
74 阅读
0 评论
2 点赞
2021-09-28
session与token的区别,为什么要用token!
一、session的状态保持及弊端 当用户第一次通过浏览器使用用户名和密码访问服务器时,服务器会验证用户数据,验证成功后在服务器端写入session数据,向客户端浏览器返回sessionid,浏览器将sessionid保存在cookie中,当用户再次访问服务器时,会携带sessionid,服务器会拿着sessionid从数据库获取session数据,然后进行用户信息查询,查询到,就会将查询到的用户信息返回,从而实现状态保持。弊端:1、服务器压力增大通常session是存储在内存中的,每个用户通过认证之后都会将session数据保存在服务器的内存中,而当用户量增大时,服务器的压力增大。2、CSRF跨站伪造请求攻击session是基于cookie进行用户识别的, cookie如果被截获,用户就会很容易受到跨站请求伪造的攻击。3、扩展性不强如果将来搭建了多个服务器,虽然每个服务器都执行的是同样的业务逻辑,但是session数据是保存在内存中的(不是共享的),用户第一次访问的是服务器1,当用户再次请求时可能访问的是另外一台服务器2,服务器2获取不到session信息,就判定用户没有登陆过。二、token认证机制token与session的不同主要在认证成功后,会对当前用户数据进行加密,生成一个加密字符串token,token有三部分组成,返还给客户端。浏览器会将接收到的token值存储在Local Storage中,(通过js代码写入Local Storage,通过js获取,并不会像cookie一样自动携带)再次访问时服务器端对token值的处理:服务器对浏览器传来的token值进行解密,解密完成后进行用户数据的查询,如果查询成功,则通过认证,实现状态保持,所以,即时有了多台服务器,服务器也只是做了token的解密和用户数据的查询,它不需要在服务端去保留用户的认证信息或者会话信息,这就意味着基于token认证机制的应用不需要去考虑用户在哪一台服务器登录了,这就为应用的扩展提供了便利,解决了session扩展性的弊端。
2021年09月28日
67 阅读
0 评论
1 点赞
2021-09-26
Linux查看日志的几种方法
最常用查看日志方法: ·实时日志:tail -f XXX.log·搜索关键字附近日志:cat -n filename | grep "关键字"查看日志常用命令: tail: -n 是显示行号;相当于nl命令;例子如下: tail -100f test.log 实时监控100行日志 tail -n 10 test.log 查询日志尾部最后10行的日志; tail -n +10 test.log 查询10行之后的所有日志;head: 跟tail是相反的,tail是看后多少行日志,而head是查看日志文件的头多少行,例子如下: head -n 10 test.log 查询日志文件中的头10行日志; head -n -10 test.log 查询日志文件除了最后10行的其他所有日志;cat: tac是倒序查看,是cat单词反写;例子如下: cat -n test.log |grep "debug" 查询关键字的日志(常用!~)vim: 1、进入vim编辑模式:vim filename 2、输入“/关键字”,按enter键查找 3、查找下一个,按“n”即可 退出:按ESC键后,接着再输入:号时,vi会在屏幕的最下方等待我们输入命令 wq! 保存退出 q! 不保存退出 几种常见的应用场景⬇⬇⬇: 查看日志应用场景一:按行号查看:过滤出关键字附近的日志 (1) cat -n test.log |grep "debug" 得到关键日志的行号 (2) cat -n test.log |tail -n +92|head -n 20 选择关键字所在的中间一行. 然后查看这个关键字前10行和后10行的日志: tail -n +92表示查询92行之后的日志 head -n 20 则表示在前面的查询结果里再查前20条记录 查看日志应用场景二:根据日期查询日志(1) sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log特别说明:上面的两个日期必须是日志中打印出来的日志,否则无效先 grep '2014-12-17 16:17:20' test.log 来确定日志中是否有该时间点查看日志应用场景三:日志内容特别多,打印在屏幕上不方便查看,分页/保存文件查看 (1)使用more和less命令, 如: cat -n test.log |grep "debug" |more 这样就分页打印了,通过点击空格键翻页(2)使用 >xxx.txt 将其保存到文件中,到时可以拉下这个文件分析 如:cat -n test.log |grep "debug" >debug.txt
2021年09月26日
71 阅读
0 评论
1 点赞
2021-09-21
Session 与 Cookie 的区别
首先用一个简单的生活例子了解Cookie和Session ;星巴克开始优惠活动,每消费10杯咖啡,会免费赠送1杯。考虑到一个人一次性消费10杯咖啡几乎不可能,所以需要采取某种方式来记录顾客的消费数量。解决方案:1)店员很厉害,每个顾客的消费记录都记得一清二楚;2)分给顾客一张卡片,每消费一次记录一次;3)发给顾客一张卡片,上面有卡号,顾客每消费一次,由店员在操作机上记录一次。分析:方案一的可执行性几乎为0。方案二和方案三我们都见过。 而方案二和三正是对应的客户端记录和服务端记录。与之相对应的正是cookie和session。{dotted startColor="#ff6c6c" endColor="#1989fa"/}cookie的内容主要包括name(名字)、value(值)、maxAge(失效时间)、path(路径),domain(域)和secure六部分内容name:cookie的名字,一旦创建,名称不可更改。value:cookie的值,如果值为Unicode字符,需要为字符编码。如果为二进制数据,则需要使用BASE64编码.maxAge:cookie失效时间,单位秒。如果为正数,则该cookie在maxAge后失效。如果为负数,该cookie为临时cookie,关闭浏览器即失效, 浏览器也不会以任何形式保存该cookie。如果为0,表示删除该cookie。默认为-1path:该cookie的使用路径。如果设置为"/sessionWeb/",则只有ContextPath为“/sessionWeb/”的程序可以访问该cookie。如果设置为“/”,则本域名下ContextPath都可以访问该cookie。domain:域.可以访问该Cookie的域名。第一个字符必须为".",如果设置为".google.com",则所有以"google.com结尾的域名都可以访问该cookie",如果不设置,则为所有域名secure:该cookie是否仅被使用安全协议传输。Session是一种服务端的机制,服务器使用一种类似散列表的结构来保存信息。当程序需要为某个客户端的请求创建一个session的时候,服务器首先检查这个客户端里的请求里是否已包含了一个session标识--sessionID,如果已经包含一个sessionID,则说明以前已经为此客户端创建过session,服务器就按照sessionID把这个session检索出来使用如果客户端请求不包含sessionID,则为此客户端创建一个session并且声称一个与此session相关联的sessionID,sessionID的值应该是一个既不会重复,又不容易被找到规律以仿造的字符串(服务器会自动创建),这个sessionID将被在本次响应中返回给客户端保存。cookie和session的区别:存储位置不同: Cookie:存放在客户端计算机中(浏览器内存/硬盘),Session:存放在服务端计算机内存中,具体来说cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案。由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于cookie机制来达到保存标识的目的。数据类型不同: ookie对象存储共享数据类型只能是String, Session对象可以存储任意类型的共享数据.数据数量不一样: 一个Cookie对象只能存储一个共享数据,Session使用map集合存储共享数据,可以存储任意数量共享数据.cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用sessionsession会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie。单个cookie保存的数据不能超过4k,很多浏览器都限制一个站点最多保存20个cookie。一般为了安全,可以将登陆信息等重要信息存放为session。使用cookie的缺点:如果浏览器使用的是cookie,那么所有的数据都保存在浏览器端,cookie可以被用户禁止cookie不安全(对于敏感数据,需要加密)cookie只能保存少量的数据(大约是4k),cookie的数量也有限制(大约是几百个),不同浏览器设置不一样,反正都不多cookie只能保存字符串对服务器压力小使用session的缺点:一般是寄生在Cookie下的,当Cookie被禁止,Session也被禁止当然可以通过url重写来摆脱cookie当用户访问量很大时,对服务器压力大我们现在知道session是将用户信息储存在服务器上面,如果访问服务器的用户越来越多,那么服务器上面的session也越来越多, session会对服务器造成压力,影响服务器的负载.如果Session内容过于复杂,当大量客户访问服务器时还可能会导致内存溢出。用户信息丢失, 或者说用户访问的不是这台服务器的情况下,就会出现数据库丢失.
2021年09月21日
88 阅读
0 评论
1 点赞
2021-09-21
端口被占用,如何释放端口
我们经常在用IDEA启动项目时遇到端口被占用的情况,这时有两个方案:一是改项目配置文件的端口;二是释放这个被占用的端口。方案一很简单,这里就不做更多阐述,我们这里看第二种,释放被占用的端口需要两个命令:具体步骤如下:(1)打开cmd 命令窗口,输入:【netstat -ano|findstr 被占用的端口号】 命令,查询该端口对应的TCP号; 以上,被占用的端口号是7777,该端口对应的 TCP号为13100;(2)输入【taskkill /t /f /im TCP号】命令,来关掉被占用的端口。
2021年09月21日
312 阅读
0 评论
1 点赞
1
...
8
9