目录

2638264600 的个人博客

记录精彩的程序人生

标签: 软件 (19)

tomcat以非root用户启动

新建用户tomcat,该用户不能登录 useradd tomcat -s '/sbin/nologin' chown -R tomcat:tomcat /usr/local/tomcat/ chmod -R 744 /usr/local/tomcat # 判断用户是否存在 ret=`id -u tomcat >& /dev/null` if [ $? -ne 0 ];then echo "not exist" fi 将/usr/local/tomcat/bin/startup.sh、shutdown.sh更名 mv /usr/local/tomcat/bin/startup.sh /usr/local/tomcat/bin/startup_.sh mv /usr/local/tomcat/bin/shutdown.sh /usr/local/tomcat/bin/shutdown_.sh 新建脚本startup.sh、shutdown.sh # startup.sh #!/bin/bash usermod -s /bin/bash tomcat su - tomcat....

打包exe

将java jar 打包成exe 的软件,目前用的较多的又exe4j、 install4j、 launch4j...... launch4j为java开发的, 所以大多数人更倾向于这个生成exe快捷方式,同时也支持ant编写,内嵌jre。

linux文件目录说明

该文章已经加密。

maven插件

使用maven对项目进行打包,可用以下三种plugin: maveb-jar-plugin : maven默认打包插件,用来创建project jar maven-shade-plugin : 用来打可执行包(executable jar) maven-assembly-plugin : 支持定制化打包方式

摘自公众号:9 个实用 shell 脚本

9 个实用 shell 脚本,建议收藏! 程序员解析 2022-03-25 16:00 公众号关注 “程序员解析” 设为“星标”,重磅干货,第一时间送达定义00作 者 | 郑晓慧 编 辑 | 唐也钦 设 计 | 戚桐 转载:我的小碗汤 1.Dos攻击防范(自动屏蔽攻击 IP) #!/bin/bash DATE=$(date +%d/%b/%Y:%H:%M) LOG_FILE=/usr/local/nginx/logs/demo2.access.log ABNORMAL_IP=$(tail -n5000 $LOG_FILE |grep $DATE |awk '{a[$1]++}END{for(i in a)if(a[i]>10)print i}') for IP in $ABNORMAL_IP; do if [ $(iptables -vnL |grep -c "$IP") -eq 0 ]; then iptables -I INPUT -s $IP -j DROP echo "$(date +'%F_%T') $IP" >> /tmp/drop_ip.log fi d....

呼叫中心概念解释

呼叫中心概念解释 座席 座席也称为话务员, 是呼叫中心中处理传真, 呼叫, 电子邮件等业务的基本单位, 在传统的呼叫中心中, 座席的任务就是接听或者拨打电话, 而在新型系统中, 由于终端电脑的普及, 座席还将能够处理电子邮件, 短信, 传真等多种类型的业务. 座席使用的电话可以为内线电话(连接内部交换机), 普通直线电话, 以及软件电话(运行在电脑系统上). 一个系统中 一般使用工号作为坐席的唯一标识。 坐席操作系统 一般来说坐席会配备电脑并且运行相应的客户端系统,当坐席电话发生事件时, 例如振铃,接通,挂断, 客户端系统上也会执行一定的操作, 如事件提示, 弹屏等;相反, 坐席也可以通过在客户端系统对电话进行操作, 例如发起通话, 咨询, 三方通话, 拒接, 挂断等. 大部分坐席操作系统还将会和业务系统相结合. 对于一些简单的应用 坐席并不配备电脑 但他们可以通过电话键盘完成基本的操作, 例如在通话结束后坐席不挂机, 系统通过语音提示坐席通过电话键盘标记此通通话在业务上的状态:成功,失败,有意向等。 队列/坐席组 一个队列是由一定数量的座席组成的, 该队列为处理呼叫的基本单位,....

全栈工具推荐

全栈工具推荐 在开发中我应用到了当今很流行的工具,这里给大家介绍一些我认为很有用的工具或者代码框架。 设计 Zeplin:在dev与designer之间共享设计稿; Sketch:强大的移动应用设计工具,什么都能做; 字体:文悦科技家有很多优秀的字体; dribbble:全球最优质的设计作品聚集地。 Android OkHttp + Retrofit + RxJava + RxAndroid + RxLifecycle:为你的应用提供简洁稳定的网络架构; Dagger:依赖注入框架,性能好; Fabric:监控应用的crash情况和用户增长,免费; Stetho: 方便在chrome里监听所有http请求,查看本地Database内容等; DBFlow: 基于Sqlite的orm工具。 Server Python +Flask:快速为移动应用搭建稳定安全的后台服务; Jenkins:当前最好用的持续集成工具,自动将GitHub代码部署到服务器上,再也不用copy代码到ftp上啦; Rollbar /Sentry +Slack:监控server运行环境,一旦发生问题能及时通知给开发者停....

有技术还怕做不出能变现的Side Project

有技术还怕做不出能变现的Side Project? Mr.Wu Mr.Wu 8 人赞同了该文章 有幸自从写了几篇关于被动收入、Side Project的文章后,从邮箱和公众号后台收到了一些朋友的讨论留言。大部分人的困惑都大同小异,就是守着一门手艺,却不知道该怎么迈出Side Project的第一步,其实我在跌入了这一坑之后的几年里,也在不同时期和项目的构思上反复会陷入这种困惑,没什么牛掰的资历去直接告诉你操作步骤,仅有些心得想分享一下,但愿对你创建Side Project和被动收入的变现能有所启发。 首先,这里提到的技术,不局限于计算机技术,也可以是其他方面,比如翻译、写作等等技能,我要分享的是启动一项Side Project的思路。 发现问题,并解决问题 一切的一切,都应始于解决问题这个初衷,这将定义项目的价值,这是老生常谈的观点了,但确实重要。就像家里空气太干燥,你很自然会想到买一个空气加湿器一样,那么空气加湿器的价值就在于它解决了人为改善空气湿度这个问题。所以,从自己的行业或者实际工作出发,去发现问题,哪怕是为了解决自己的问题也行,因为和你一样面临同样问题的人肯定大有人在。 我举....

JVMTI

Java生态中有一些非常规的技术,它们能达到一些特别的效果。这些技术的实现原理不去深究的话一般并不是广为人知。这种技术通常被称为黑科技。而这些黑科技中的绝大部分底层都是通过JVMTI实现的。 形象地说,JVMTI是Java虚拟机提供的一整套后门。通过这套后门可以对虚拟机方方面面进行监控,分析。甚至干预虚拟机的运行。 下面先介绍下哪些黑科技是通过JVMTI实现的,再详细的介绍JVMTI。 JVMTI可以用来实现哪些黑科技 使用JVMTI对class文件加密 有时一些涉及到关键技术的class文件或者jar包我们不希望对外暴露,因而需要进行加密。使用一些常规的手段(例如使用混淆器或者自定义类加载器)来对class文件进行加密很容易被反编译。反编译后的代码虽然增加了阅读的难度,但花费一些功夫也是可以读懂的。使用JVMTI我们可以将解密的代码封装成.dll,或.so 文件。这些文件想要反编译就很麻烦了,另外还能加壳。解密代码不能被破解,从而也就保护了我们想要加密的class文件。 使用JVMTI实现应用性能监控(APM) 在微服务大行其道的环境下,分布式系统的逻辑结构变得越来越复杂。这给....

systemctl的服务配置文件模板 有更新!

[Unit] Description=SonarQube service After=syslog.target network.target [Service] Type=simple User=sonarqube Group=sonarqube PermissionsStartOnly=true ExecStart=/bin/nohup /opt/java/bin/java -Xms32m -Xmx32m -Djava.net.preferIPv4Stack=true -jar /opt/sonarqube/lib/sonar-application-8.5.jar StandardOutput=syslog LimitNOFILE=131072 LimitNPROC=8192 TimeoutStartSec=5 Restart=always SuccessExitStatus=143 [Install] WantedBy=multi-user.target systemctl enable test 上面的命令相当于在/etc/systemd/system目录添加一个符号链接,....

良许资料 有更新!

该文章已经加密。

checkstyle的概念说明

概念说明 类的分散复杂度: 一个类中引用的外部类的个数,只对变量,与import导入的无关,主要来源为:类中的公有成员、私有成员、受保护成员,方法中参数、定义的局部变量 具体操作 如何重构一个圈复杂度超30的类 https://www.cnblogs.com/kingzzm/p/3358416.html

JavaFX 相关资源

JavaFX 相关资源 凯璇大帝 2021-02-14 22:41:27 265 收藏 3 版权 Libraries, Tools and Projects(类库,工具和项目) Advanced-Bindings for JavaFX(8) - 高级绑定是一组有用的帮助程序和自定义绑定实现,如java.lang.Math或Switch-Case作为JavaFX绑定。 assertj-javafx - JavaFX属性和绑定的AssertJ断言。 AnchorFX - JavaFX平台的Docking框架。 AnimateFX - 包含即用型动画的JavaFX库。 BootstrapFX - BootstrapFX是Twitter Bootstrap for JavaFX的部分端口。 CalendarFX - CalendarFX是JavaFX 8的日历框架。它包含一组专业的自定义控件,可用于为任何类型的应用程序实现日历UI。 CssFX - 通过在正在运行的应用程序中提供JavaFX CSS重新加载功能来提高开发人员的工作效率。可用作独立库或集成在Scenic View中。 Co....

Log4j.properties配置详解

[Java]Log4j.properties配置详解 2008-11-18 23:42:47| 分类: Java |字号 订阅 一、Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局)。这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出。综合使用这三个组件可以轻松地记录信息的类型和级别,并可以在运行时控制日志输出的样式和位置。 Loggers Loggers组件在此系统中被分为五个级别:DEBUG、INFO、WARN、ERROR和FATAL。这五个级别是有顺序的,DEBUG < INFO < WARN < ERROR < FATAL,分别用来指定这条日志信息的重要程度,明白这一点很重要,Log4j有一个规则:只输出级别不低于设定级别的日志信息,假设Loggers级别设定为INFO,则INFO、WARN、ERROR和FATAL级别的日志信息都会输出,而级别比INFO低的DEBUG则不会输出。 Appenders 禁用和使用日志请求只是Log4j的基本功能,Log4j日志系统....

网络流量监控给你命令

1.iftop命令操作说明 常用参数: -i 设定监测的网卡,如:# iftop -i eth1 -B 以bytes为单位显示流量(默认是bits),如:# iftop -B -n 使host信息默认直接都显示IP,如:# iftop -n -N 使端口信息默认直接都显示端口号,如: # iftop -N -F 显示特定网段的进出流量,如# iftop -F 10.10.1.0/24或# iftop -F 10.10.1.0/255.255.255.0 -h 帮助,显示参数信息 -p 使用这个参数后,中间的列表显示的本地主机信息,出现了本机以外的IP信息; -b 使流量图形条默认就显示; -f 过滤计算包用的; -P 使host信息及端口信息默认就都显示; -m 设置界面最上边的刻度的最大值,刻度分五个大段显示,例:# iftop -m 100M 进入iftop画面后的一些操作命令(注意大小写) 按 h 切换是否显示帮助; 按 n 切换显示本机的IP或主机名; 按 s 切换是否显示本机的host信息; 按 d 切换是否显示远端目标主机的host信息; 按 t 切换显示格式为2行/1行/....

maven的配置文件——pom

什么是pom? pom作为项目对象模型。通过xml表示maven项目,使用pom.xml来实现。主要描述了项目:包括配置文件;开发者需要遵循的规则,缺陷管理系统,组织和licenses,项目的url,项目的依赖性,以及其他所有的项目相关因素。 快速察看: 4.0.0 ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 基本内容: POM包括了所有的项目信息 groupId:项目或者组织的唯一标志,并且配置时生成路径也是由此生成,如org.myproject.mojo生成的相对路径为:/org/myproject/mojo artifactId:项目的通用名称 version:项目的版本 packaging:打包机制,如pom,jar,maven-plugin,ejb,war,ear,rar,par name:用户描述项目的名称,无关紧要的东西,可选 url:应该是只是写明开发团队的网站,....

python3使用说明 有更新!

pip升级 python -m ensurepip 然后执行 python -m pip install --upgrade pip 即可更新完毕。 python图形开发指南: a. 如果使用Tkinter作为Python GUI工具,我们需要安装Tkinter,这个使用conda或者pip即可: b.为了提高界面编写效率,可以使用拖拉工具Page 下载地址: https://sourceforge.net/projects/page/ c.安装完成后可能会遇到can't find wish.exe的问题,这时只需要安装activeTcl即可:下载地址:https://www.activestate.com/products/activetcl/downloads/ 可以使用冒号来定义和初始化变量,如: 程序结束可以使用:sys**.exit(0)** sys.exit(0)默认为0,表示正常退出,或1,表示异常退出。 os._exit(0) try: while True: pass except KeyboardInterrupt: print('程序被手动终止') 按下"Ctrl....

frp代理软件说明

原始文档见:https://gofrp.org/docs/examples/vhost-http/ 1.frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。 通过在具有公网 IP 的节点上部署 frp 服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能特性,这包括: 客户端服务端通信支持 TCP、KCP 以及 Websocket 等多种协议。 采用 TCP 连接流式复用,在单个连接间承载更多请求,节省连接建立时间。 代理组间的负载均衡。 端口复用,多个服务通过同一个服务端端口暴露。 多个原生支持的客户端插件(静态文件查看,HTTP、SOCK5 代理等),便于独立使用 frp 客户端完成某些工作。 高度扩展性的服务端插件系统,方便结合自身需求进行功能扩展。 服务端和客户端 UI 页面。 2.frp 采用 Golang 编写,支持跨平台,仅需下载对应平台的二进制文件即可执行,没有额外依赖。 3.安装步骤: a.解压缩下载的压缩包(在 Github ....

程序文件资料

【Java】 技术简历模板大全 链接:https://pan.baidu.com/s/17vdBBmru4grmlQ7zKIiHLg 密码:u120 精选阿里 Java、架构、微服务精选资料 链接:https://pan.baidu.com/s/1JO7lweysEMVp7QlxYxJhvg 密码:kl3j 全国内外架构开源技术干货资料 链接:https://pan.baidu.com/s/1_Xkf1JsSIBUhdoKVm0kuWA 密码:u6zf 阿里技术栈架构资料 链接:https://pan.baidu.com/s/1VGkdoyj4wuxfrb4ilMfwUg 密码:13if Java 面试 链接: https://pan.baidu.com/s/1YBg-UpKiN949UVSq6bMAuQ 提取码: 1mvb Java 手册 链接:https://pan.baidu.com/s/1iAa-zUSjBKy9bEbwsJuEQg 提取码:eko0 Java 学习资源 链接:https://pan.baidu.com/s/1fI5lWJ29222ZSky-jLaTug 提取码....